diff --git a/.github/scripts/version_check.py b/.github/scripts/version_check.py index 9c59353189..5d26b16092 100644 --- a/.github/scripts/version_check.py +++ b/.github/scripts/version_check.py @@ -10,6 +10,7 @@ tagged branch: """ +import itertools import json import os import re @@ -198,10 +199,13 @@ if __name__ == '__main__': print(f"Version check passed for '{version}'!") print(f"Docker tags: '{docker_tags}'") + target_repos = [REPO.lower(), f'ghcr.io/{REPO.lower()}'] + # Ref: https://getridbug.com/python/how-to-set-environment-variables-in-github-actions-using-python/ with open(os.getenv('GITHUB_ENV'), 'a') as env_file: # Construct tag string - tags = ','.join([f'{REPO.lower()}:{tag}' for tag in docker_tags]) + tag_list = [[f'{r}:{t}' for t in docker_tags] for r in target_repos] + tags = ','.join(itertools.chain(*tag_list)) env_file.write(f'docker_tags={tags}\n') diff --git a/.github/workflows/docker.yaml b/.github/workflows/docker.yaml index cba819ce1e..61dd6e6f99 100644 --- a/.github/workflows/docker.yaml +++ b/.github/workflows/docker.yaml @@ -135,9 +135,9 @@ jobs: id: docker_login run: | if [ -z "${{ secrets.DOCKER_USERNAME }}" ]; then - echo "skip_dockerhub_login=true" >> $GITHUB_ENV + echo "skip_dockerhub_login=true" >> $GITHUB_OUTPUT else - echo "skip_dockerhub_login=false" >> $GITHUB_ENV + echo "skip_dockerhub_login=false" >> $GITHUB_OUTPUT fi - name: Login to Dockerhub if: github.event_name != 'pull_request' && steps.docker_login.outputs.skip_dockerhub_login != 'true' diff --git a/contrib/container/Dockerfile b/contrib/container/Dockerfile index 572a286f5d..bd5adf670f 100644 --- a/contrib/container/Dockerfile +++ b/contrib/container/Dockerfile @@ -11,6 +11,7 @@ ARG base_image=python:3.11-alpine3.18 FROM ${base_image} AS inventree_base +ARG base_image # Build arguments for this image ARG commit_tag="" @@ -48,13 +49,18 @@ ENV INVENTREE_BACKGROUND_WORKERS="4" ENV INVENTREE_WEB_ADDR=0.0.0.0 ENV INVENTREE_WEB_PORT=8000 -LABEL org.label-schema.schema-version="1.0" \ - org.label-schema.build-date=${DATE} \ - org.label-schema.vendor="inventree" \ - org.label-schema.name="inventree/inventree" \ - org.label-schema.url="https://hub.docker.com/r/inventree/inventree" \ - org.label-schema.vcs-url="https://github.com/inventree/InvenTree.git" \ - org.label-schema.vcs-ref=${commit_tag} +LABEL org.opencontainers.image.created=${DATE} \ + org.opencontainers.image.vendor="inventree" \ + org.opencontainers.image.title="InvenTree backend server" \ + org.opencontainers.image.description="InvenTree is the open-source inventory management system" \ + org.opencontainers.image.url="https://inventree.org" \ + org.opencontainers.image.documentation="https://docs.inventree.org" \ + org.opencontainers.image.source="https://github.com/inventree/InvenTree" \ + org.opencontainers.image.revision=${commit_hash} \ + org.opencontainers.image.licenses="MIT" \ + org.opencontainers.image.base.name="docker.io/library/${base_image}" \ + org.opencontainers.image.version=${commit_tag} + # Install required system level packages RUN apk add --no-cache \