diff --git a/.github/workflows/github_release.yml b/.github/workflows/github_release.yml index 002a92b107dfc29769256b4f87e78b0c1f1f756d..26026bcb8340aee5d875d00ebddb23bb8a6036d5 100644 --- a/.github/workflows/github_release.yml +++ b/.github/workflows/github_release.yml @@ -40,26 +40,4 @@ jobs: **Changes in this release:** ${{ steps.conventional_changelog.outputs.changelog }} draft: false - prerelease: false - - # DOCKER RELATED - - name: Set up QEMU - uses: docker/setup-qemu-action@v1 - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 - - name: Login to GitHub Container Registry - uses: docker/login-action@v1 - with: - registry: ghcr.io - username: ${{ github.repository_owner }} - password: ${{ secrets.CR_PAT }} - - name: Build and push - uses: docker/build-push-action@v2 - with: - context: . - file: ./Dockerfile - platforms: linux/amd64,linux/arm/v7,linux/arm64 - push: true - tags: | - ghcr.io/${{ secrets.DOCKERHUB_USERNAME }}/${{ secrets.DOCKERHUB_REPO }}:latest - ghcr.io/${{ secrets.DOCKERHUB_USERNAME }}/${{ secrets.DOCKERHUB_REPO }}:${{steps.tag.outputs.tag}} + prerelease: false \ No newline at end of file diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index fb217b0bc84071f4cff1204fd4d162c80d0b44dd..8c300e7e5606d653fc3d0d8b15e36e34c3466259 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -18,10 +18,13 @@ test docker: before_script: - docker login -u "$DOCKERHUB_USER" -p "$DOCKERHUB_TOKEN" docker.io - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY + - docker login -u "$DOCKERHUB_USER" -p "$GITHUB_TOKEN" ghcr.io script: + - echo "**** Build amd64 ****" - docker build --tag "$CI_REGISTRY_IMAGE:amd64-develop" --tag "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:amd64-develop" + --tag "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:amd64-develop" --build-arg FOCAL_ARCH=amd64 --build-arg FOCAL_RELEASE_DATE="$FOCAL_RELEASE_DATE" --build-arg BUILD_DATE="$CI_PIPELINE_CREATED_AT" @@ -30,9 +33,12 @@ test docker: --build-arg OVERLAY_ARCH=amd64 . - docker push "$CI_REGISTRY_IMAGE:amd64-develop" - docker push "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:amd64-develop" + - docker push "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:amd64-develop" + - echo "**** Build armhf ****" - docker build --tag "$CI_REGISTRY_IMAGE:armhf-develop" --tag "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:armhf-develop" + --tag "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:armhf-develop" --build-arg FOCAL_ARCH=armhf --build-arg FOCAL_RELEASE_DATE="$FOCAL_RELEASE_DATE" --build-arg BUILD_DATE="$CI_PIPELINE_CREATED_AT" @@ -41,9 +47,12 @@ test docker: --build-arg OVERLAY_ARCH=arm . - docker push "$CI_REGISTRY_IMAGE:armhf-develop" - docker push "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:armhf-develop" + - docker push "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:armhf-develop" + - echo "**** Build arm64 ****" - docker build --tag "$CI_REGISTRY_IMAGE:arm64-develop" --tag "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:arm64-develop" + --tag "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:arm64-develop" --build-arg FOCAL_ARCH=arm64 --build-arg FOCAL_RELEASE_DATE="$FOCAL_RELEASE_DATE" --build-arg BUILD_DATE="$CI_PIPELINE_CREATED_AT" @@ -52,14 +61,22 @@ test docker: --build-arg OVERLAY_ARCH=aarch64 . - docker push "$CI_REGISTRY_IMAGE:arm64-develop" - docker push "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:arm64-develop" + - docker push "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:arm64-develop" + - echo "**** Create GitLab manifest ****" - docker manifest create "$CI_REGISTRY_IMAGE:develop" "$CI_REGISTRY_IMAGE:amd64-develop" "$CI_REGISTRY_IMAGE:armhf-develop" "$CI_REGISTRY_IMAGE:arm64-develop" - docker manifest annotate "$CI_REGISTRY_IMAGE:develop" "$CI_REGISTRY_IMAGE:armhf-develop" --os linux --arch arm - docker manifest annotate "$CI_REGISTRY_IMAGE:develop" "$CI_REGISTRY_IMAGE:arm64-develop" --os linux --arch arm64 --variant v8 - docker manifest push --purge "$CI_REGISTRY_IMAGE:develop" + - echo "**** Create DockerHub manifest ****" - docker manifest create "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:develop" "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:amd64-develop" "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:armhf-develop" "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:arm64-develop" - docker manifest annotate "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:develop" "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:armhf-develop" --os linux --arch arm - docker manifest annotate "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:develop" "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:arm64-develop" --os linux --arch arm64 --variant v8 - docker manifest push --purge "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:develop" + - echo "**** Create GitHub manifest ****" + - docker manifest create "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:develop" "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:amd64-develop" "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:armhf-develop" "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:arm64-develop" + - docker manifest annotate "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:develop" "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:armhf-develop" --os linux --arch arm + - docker manifest annotate "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:develop" "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:arm64-develop" --os linux --arch arm64 --variant v8 + - docker manifest push --purge "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:develop" except: refs: - tags @@ -101,12 +118,16 @@ build: before_script: - docker login -u "$DOCKERHUB_USER" -p "$DOCKERHUB_TOKEN" docker.io - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY + - docker login -u "$DOCKERHUB_USER" -p "$GITHUB_TOKEN" ghcr.io script: + - echo "**** Build amd64 ****" - docker build --tag "$CI_REGISTRY_IMAGE:amd64-latest" --tag "$CI_REGISTRY_IMAGE:amd64-$CI_COMMIT_TAG" --tag "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:amd64-latest" --tag "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:amd64-$CI_COMMIT_TAG" + --tag "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:amd64-latest" + --tag "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:amd64-$CI_COMMIT_TAG" --build-arg FOCAL_ARCH=amd64 --build-arg FOCAL_RELEASE_DATE="$FOCAL_RELEASE_DATE" --build-arg BUILD_DATE="$CI_PIPELINE_CREATED_AT" @@ -117,11 +138,16 @@ build: - docker push "$CI_REGISTRY_IMAGE:amd64-$CI_COMMIT_TAG" - docker push "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:amd64-latest" - docker push "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:amd64-$CI_COMMIT_TAG" + - docker push "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:amd64-latest" + - docker push "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:amd64-$CI_COMMIT_TAG" + - echo "**** Build armhf ****" - docker build --tag "$CI_REGISTRY_IMAGE:armhf-latest" --tag "$CI_REGISTRY_IMAGE:armhf-$CI_COMMIT_TAG" --tag "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:armhf-latest" --tag "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:armhf-$CI_COMMIT_TAG" + --tag "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:armhf-latest" + --tag "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:armhf-$CI_COMMIT_TAG" --build-arg FOCAL_ARCH=armhf --build-arg FOCAL_RELEASE_DATE="$FOCAL_RELEASE_DATE" --build-arg BUILD_DATE="$CI_PIPELINE_CREATED_AT" @@ -132,11 +158,16 @@ build: - docker push "$CI_REGISTRY_IMAGE:armhf-$CI_COMMIT_TAG" - docker push "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:armhf-latest" - docker push "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:armhf-$CI_COMMIT_TAG" + - docker push "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:armhf-latest" + - docker push "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:armhf-$CI_COMMIT_TAG" + - echo "**** Build arm64 ****" - docker build --tag "$CI_REGISTRY_IMAGE:arm64-latest" --tag "$CI_REGISTRY_IMAGE:arm64-$CI_COMMIT_TAG" --tag "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:arm64-latest" --tag "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:arm64-$CI_COMMIT_TAG" + --tag "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:arm64-latest" + --tag "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:arm64-$CI_COMMIT_TAG" --build-arg FOCAL_ARCH=arm64 --build-arg FOCAL_RELEASE_DATE="$FOCAL_RELEASE_DATE" --build-arg BUILD_DATE="$CI_PIPELINE_CREATED_AT" @@ -147,6 +178,9 @@ build: - docker push "$CI_REGISTRY_IMAGE:arm64-$CI_COMMIT_TAG" - docker push "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:arm64-latest" - docker push "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:arm64-$CI_COMMIT_TAG" + - docker push "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:arm64-latest" + - docker push "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:arm64-$CI_COMMIT_TAG" + - echo "**** Create GitLab manifest ****" - docker manifest create "$CI_REGISTRY_IMAGE:latest" "$CI_REGISTRY_IMAGE:amd64-latest" "$CI_REGISTRY_IMAGE:armhf-latest" "$CI_REGISTRY_IMAGE:arm64-latest" - docker manifest annotate "$CI_REGISTRY_IMAGE:latest" "$CI_REGISTRY_IMAGE:armhf-latest" --os linux --arch arm - docker manifest annotate "$CI_REGISTRY_IMAGE:latest" "$CI_REGISTRY_IMAGE:arm64-latest" --os linux --arch arm64 --variant v8 @@ -155,6 +189,7 @@ build: - docker manifest annotate "$CI_REGISTRY_IMAGE:$CI_COMMIT_TAG" "$CI_REGISTRY_IMAGE:armhf-$CI_COMMIT_TAG" --os linux --arch arm - docker manifest annotate "$CI_REGISTRY_IMAGE:$CI_COMMIT_TAG" "$CI_REGISTRY_IMAGE:arm64-$CI_COMMIT_TAG" --os linux --arch arm64 --variant v8 - docker manifest push --purge "$CI_REGISTRY_IMAGE:$CI_COMMIT_TAG" + - echo "**** Create DockerHub manifest ****" - docker manifest create "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:latest" "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:amd64-latest" "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:armhf-latest" "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:arm64-latest" - docker manifest annotate "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:latest" "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:armhf-latest" --os linux --arch arm - docker manifest annotate "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:latest" "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:arm64-latest" --os linux --arch arm64 --variant v8 @@ -163,5 +198,14 @@ build: - docker manifest annotate "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:$CI_COMMIT_TAG" "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:armhf-$CI_COMMIT_TAG" --os linux --arch arm - docker manifest annotate "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:$CI_COMMIT_TAG" "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:arm64-$CI_COMMIT_TAG" --os linux --arch arm64 --variant v8 - docker manifest push --purge "index.docker.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:$CI_COMMIT_TAG" + - echo "**** Create GitHub manifest ****" + - docker manifest create "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:latest" "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:amd64-latest" "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:armhf-latest" "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:arm64-latest" + - docker manifest annotate "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:latest" "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:armhf-latest" --os linux --arch arm + - docker manifest annotate "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:latest" "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:arm64-latest" --os linux --arch arm64 --variant v8 + - docker manifest push --purge "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:latest" + - docker manifest create "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:$CI_COMMIT_TAG" "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:amd64-$CI_COMMIT_TAG" "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:armhf-$CI_COMMIT_TAG" "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:arm64-$CI_COMMIT_TAG" + - docker manifest annotate "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:$CI_COMMIT_TAG" "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:armhf-$CI_COMMIT_TAG" --os linux --arch arm + - docker manifest annotate "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:$CI_COMMIT_TAG" "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:arm64-$CI_COMMIT_TAG" --os linux --arch arm64 --variant v8 + - docker manifest push --purge "ghcr.io/$DOCKERHUB_USER/$DOCKERHUB_REPO:$CI_COMMIT_TAG" only: - tags \ No newline at end of file diff --git a/.releaserc.yml b/.releaserc.yml index 44afa9483f9652c540050b20edd3d8d3fe55b098..12a3167cdc7f27d185ce5aa10bae849d770886ab 100644 --- a/.releaserc.yml +++ b/.releaserc.yml @@ -83,13 +83,16 @@ generateNotes: hidden: false - type: 'perf' section: '⩠Performance' + hidden: false - type: 'refactor' section: ':scissors: Refactor' hidden: false - type: 'revert' section: '👀 Reverts' + hidden: false - type: 'style' section: '💈 Style' + hidden: false - type: 'test' section: '🧪 Tests' hidden: false