From b35fab3924ff1d9eb63aea730ff95ad3b7023f8a Mon Sep 17 00:00:00 2001 From: FabioPinheiro Date: Fri, 29 Nov 2024 17:50:33 +0000 Subject: [PATCH 1/4] build: cleanup & more improvements for the release-docker-hub job Signed-off-by: FabioPinheiro --- .github/workflows/release-docker-hub.yml | 46 +++++++++++------------- 1 file changed, 20 insertions(+), 26 deletions(-) diff --git a/.github/workflows/release-docker-hub.yml b/.github/workflows/release-docker-hub.yml index 90ad33e6..6744786a 100644 --- a/.github/workflows/release-docker-hub.yml +++ b/.github/workflows/release-docker-hub.yml @@ -1,11 +1,9 @@ name: Release to Docker Hub # ower: FabioPinheiro -# updated: 2024/11/25 +# updated: 2024/11/29 # How to test: -# > git tag v9.9.9 -# > git tag --delete v9.9.9 -# > act --artifact-server-path /tmp/artifacts -s GITHUB_TOKEN="$(gh auth token)" --var DOCKERHUB_FMGP_USERNAME=$DOCKERHUB_FMGP_USERNAME -s DOCKERHUB_FMGP_TOKEN=$DOCKERHUB_FMGP_TOKEN --var DOCKERHUB_IDENTUS_USERNAME=$DOCKERHUB_IDENTUS_USERNAME -s DOCKERHUB_IDENTUS_TOKEN=$DOCKERHUB_IDENTUS_TOKEN -j build-and-push-docker-images schedule -# > act --artifact-server-path /tmp/artifacts -s GITHUB_TOKEN="$(gh auth token)" --var DOCKERHUB_FMGP_USERNAME=$DOCKERHUB_FMGP_USERNAME -s DOCKERHUB_FMGP_TOKEN=$DOCKERHUB_FMGP_TOKEN --var DOCKERHUB_IDENTUS_USERNAME=$DOCKERHUB_IDENTUS_USERNAME -s DOCKERHUB_IDENTUS_TOKEN=$DOCKERHUB_IDENTUS_TOKEN --workflows '.github/workflows/release-docker-hub.yml' push +# > act --artifact-server-path /tmp/artifacts -s GITHUB_TOKEN="$(gh auth token)" --var DOCKERHUB_IDENTUS_USERNAME=$DOCKERHUB_IDENTUS_USERNAME -s DOCKERHUB_IDENTUS_TOKEN=$DOCKERHUB_IDENTUS_TOKEN -j build-and-push-docker-images schedule +# > act --artifact-server-path /tmp/artifacts -s GITHUB_TOKEN="$(gh auth token)" --var DOCKERHUB_IDENTUS_USERNAME=$DOCKERHUB_IDENTUS_USERNAME -s DOCKERHUB_IDENTUS_TOKEN=$DOCKERHUB_IDENTUS_TOKEN --workflows '.github/workflows/release-docker-hub.yml' push # > act --artifact-server-path /tmp/artifacts -s GITHUB_TOKEN="$(gh auth token)" \ # --var DOCKERHUB_FMGP_USERNAME=$DOCKERHUB_FMGP_USERNAME -s DOCKERHUB_FMGP_TOKEN=$DOCKERHUB_FMGP_TOKEN \ # --var DOCKERHUB_IDENTUS_USERNAME=$DOCKERHUB_IDENTUS_USERNAME -s DOCKERHUB_IDENTUS_TOKEN=$DOCKERHUB_IDENTUS_TOKEN \ @@ -13,8 +11,7 @@ name: Release to Docker Hub # <( jq -n '{ inputs: { DEPLOYMENT_BRANCH: "v1.0.0" } }' ) # How to push old images from another repo: -# > docker login docker.io -u fmgp -p $DOCKERHUB_FMGP_TOKEN -# > docker login docker.io -u identus -p $DOCKERHUB_IDENTUS_TOKEN +# > docker login docker.io -u $DOCKERHUB_IDENTUS_USERNAME -p $DOCKERHUB_IDENTUS_TOKEN # > OLD_TAG=ghcr.io/hyperledger/identus-mediator:1.0.0; NEW_TAG=docker.io/identus/identus-mediator:1.0.0; docker buildx imagetools create --tag "$NEW_TAG" "$OLD_TAG" @@ -83,28 +80,29 @@ jobs: fail-fast: false matrix: docker: - - # identus # This is a test account + - # identus registry: docker.io - repository: ${{vars.DOCKERHUB_IDENTUS_USERNAME}} + repository: identus username: ${{vars.DOCKERHUB_IDENTUS_USERNAME}} password_name: DOCKERHUB_IDENTUS_TOKEN tags_noschedule: | type=semver,pattern={{version}} type=sha,format=long type=edge,branch=main - type=raw,value=latest,enable=${{ !startsWith(github.ref, 'refs/tags/v') }} + type=raw,value=latest,enable=${{ startsWith(github.ref, 'refs/tags/v') }} tags_schedule: | type=schedule,pattern=nightly,enable={{is_default_branch}} - - # fmgp # My presonal acount also for testing - registry: docker.io - repository: ${{vars.DOCKERHUB_FMGP_USERNAME}} - username: ${{vars.DOCKERHUB_FMGP_USERNAME}} - password_name: DOCKERHUB_FMGP_TOKEN - tags_noschedule: | - type=semver,pattern={{version}},enable={{is_default_branch}} - type=raw,value=latest,enable={{is_default_branch}} - tags_schedule: | - type=schedule,enable={{is_default_branch}} + # TODO to avoid build the image multiple times (matrix) let's create a step that copies the release tags + # - # fmgp # My presonal acount for testing. TODO replace with hyperledger + # registry: docker.io + # repository: fmgp + # username: ${{vars.DOCKERHUB_FMGP_USERNAME}} + # password_name: DOCKERHUB_FMGP_TOKEN + # tags_noschedule: | + # type=semver,pattern={{version}},enable={{is_default_branch}} + # type=raw,value=latest,enable={{is_default_branch}} + # tags_schedule: | + # type=schedule,enable={{is_default_branch}} steps: - name: Set test variable @@ -129,11 +127,9 @@ jobs: echo "##################" echo "#### JOB INFO ####" echo "##################" - echo "### github.event_name=${{github.event_name}} (Is this type 'schedule'""? ${{ github.event_name == 'schedule' }})" - echo "### matrix.docker.tags_schedule: ${{ matrix.docker.tags_schedule }}" - echo "### matrix.docker.tags_noschedule: ${{ matrix.docker.tags_noschedule }}" + echo "### github.event_name=${{github.event_name}} echo "### env.META_CONFIG: ${{ env.META_CONFIG }}" - echo "### TAGS: ${{ steps.meta.outputs.tags == '' }}" + echo "### TAGS: is steps.meta.outputs.tags == to ''? ${{ steps.meta.outputs.tags == '' }}" echo "${{ steps.meta.outputs.tags }}" echo "### runner: ${{ toJSON(runner) }}" echo "### github: ${{ toJSON(github) }}" @@ -163,9 +159,7 @@ jobs: username: ${{ matrix.docker.username }} password: ${{ secrets[matrix.docker.password_name] }} - # TODO FIX These builds the image multiple times (matrix) - name: Build and push identus-mediator Image - id: push uses: docker/build-push-action@v6 with: context: ./docker-artifact/ From 05d7a3354bec287b70b2635d35ec6e48a8cee8dc Mon Sep 17 00:00:00 2001 From: FabioPinheiro Date: Fri, 29 Nov 2024 19:10:50 +0000 Subject: [PATCH 2/4] fix Signed-off-by: FabioPinheiro --- .github/workflows/release-docker-hub.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/release-docker-hub.yml b/.github/workflows/release-docker-hub.yml index 6744786a..4b763327 100644 --- a/.github/workflows/release-docker-hub.yml +++ b/.github/workflows/release-docker-hub.yml @@ -128,9 +128,7 @@ jobs: echo "#### JOB INFO ####" echo "##################" echo "### github.event_name=${{github.event_name}} - echo "### env.META_CONFIG: ${{ env.META_CONFIG }}" echo "### TAGS: is steps.meta.outputs.tags == to ''? ${{ steps.meta.outputs.tags == '' }}" - echo "${{ steps.meta.outputs.tags }}" echo "### runner: ${{ toJSON(runner) }}" echo "### github: ${{ toJSON(github) }}" From 35351dcec1f78091666dc4f0255e8fa51d309b09 Mon Sep 17 00:00:00 2001 From: FabioPinheiro Date: Fri, 29 Nov 2024 20:15:28 +0000 Subject: [PATCH 3/4] fix the fix XD Signed-off-by: FabioPinheiro --- .github/workflows/release-docker-hub.yml | 46 +++++++++++++----------- 1 file changed, 26 insertions(+), 20 deletions(-) diff --git a/.github/workflows/release-docker-hub.yml b/.github/workflows/release-docker-hub.yml index 4b763327..33776138 100644 --- a/.github/workflows/release-docker-hub.yml +++ b/.github/workflows/release-docker-hub.yml @@ -1,9 +1,11 @@ name: Release to Docker Hub # ower: FabioPinheiro -# updated: 2024/11/29 +# updated: 2024/11/25 # How to test: -# > act --artifact-server-path /tmp/artifacts -s GITHUB_TOKEN="$(gh auth token)" --var DOCKERHUB_IDENTUS_USERNAME=$DOCKERHUB_IDENTUS_USERNAME -s DOCKERHUB_IDENTUS_TOKEN=$DOCKERHUB_IDENTUS_TOKEN -j build-and-push-docker-images schedule -# > act --artifact-server-path /tmp/artifacts -s GITHUB_TOKEN="$(gh auth token)" --var DOCKERHUB_IDENTUS_USERNAME=$DOCKERHUB_IDENTUS_USERNAME -s DOCKERHUB_IDENTUS_TOKEN=$DOCKERHUB_IDENTUS_TOKEN --workflows '.github/workflows/release-docker-hub.yml' push +# > git tag v9.9.9 +# > git tag --delete v9.9.9 +# > act --artifact-server-path /tmp/artifacts -s GITHUB_TOKEN="$(gh auth token)" --var DOCKERHUB_FMGP_USERNAME=$DOCKERHUB_FMGP_USERNAME -s DOCKERHUB_FMGP_TOKEN=$DOCKERHUB_FMGP_TOKEN --var DOCKERHUB_IDENTUS_USERNAME=$DOCKERHUB_IDENTUS_USERNAME -s DOCKERHUB_IDENTUS_TOKEN=$DOCKERHUB_IDENTUS_TOKEN -j build-and-push-docker-images schedule +# > act --artifact-server-path /tmp/artifacts -s GITHUB_TOKEN="$(gh auth token)" --var DOCKERHUB_FMGP_USERNAME=$DOCKERHUB_FMGP_USERNAME -s DOCKERHUB_FMGP_TOKEN=$DOCKERHUB_FMGP_TOKEN --var DOCKERHUB_IDENTUS_USERNAME=$DOCKERHUB_IDENTUS_USERNAME -s DOCKERHUB_IDENTUS_TOKEN=$DOCKERHUB_IDENTUS_TOKEN --workflows '.github/workflows/release-docker-hub.yml' push # > act --artifact-server-path /tmp/artifacts -s GITHUB_TOKEN="$(gh auth token)" \ # --var DOCKERHUB_FMGP_USERNAME=$DOCKERHUB_FMGP_USERNAME -s DOCKERHUB_FMGP_TOKEN=$DOCKERHUB_FMGP_TOKEN \ # --var DOCKERHUB_IDENTUS_USERNAME=$DOCKERHUB_IDENTUS_USERNAME -s DOCKERHUB_IDENTUS_TOKEN=$DOCKERHUB_IDENTUS_TOKEN \ @@ -11,7 +13,8 @@ name: Release to Docker Hub # <( jq -n '{ inputs: { DEPLOYMENT_BRANCH: "v1.0.0" } }' ) # How to push old images from another repo: -# > docker login docker.io -u $DOCKERHUB_IDENTUS_USERNAME -p $DOCKERHUB_IDENTUS_TOKEN +# > docker login docker.io -u fmgp -p $DOCKERHUB_FMGP_TOKEN +# > docker login docker.io -u identus -p $DOCKERHUB_IDENTUS_TOKEN # > OLD_TAG=ghcr.io/hyperledger/identus-mediator:1.0.0; NEW_TAG=docker.io/identus/identus-mediator:1.0.0; docker buildx imagetools create --tag "$NEW_TAG" "$OLD_TAG" @@ -80,29 +83,28 @@ jobs: fail-fast: false matrix: docker: - - # identus + - # identus # This is a test account registry: docker.io - repository: identus + repository: ${{vars.DOCKERHUB_IDENTUS_USERNAME}} username: ${{vars.DOCKERHUB_IDENTUS_USERNAME}} password_name: DOCKERHUB_IDENTUS_TOKEN tags_noschedule: | type=semver,pattern={{version}} type=sha,format=long type=edge,branch=main - type=raw,value=latest,enable=${{ startsWith(github.ref, 'refs/tags/v') }} + type=raw,value=latest,enable=${{ !startsWith(github.ref, 'refs/tags/v') }} tags_schedule: | type=schedule,pattern=nightly,enable={{is_default_branch}} - # TODO to avoid build the image multiple times (matrix) let's create a step that copies the release tags - # - # fmgp # My presonal acount for testing. TODO replace with hyperledger - # registry: docker.io - # repository: fmgp - # username: ${{vars.DOCKERHUB_FMGP_USERNAME}} - # password_name: DOCKERHUB_FMGP_TOKEN - # tags_noschedule: | - # type=semver,pattern={{version}},enable={{is_default_branch}} - # type=raw,value=latest,enable={{is_default_branch}} - # tags_schedule: | - # type=schedule,enable={{is_default_branch}} + - # fmgp # My presonal acount also for testing + registry: docker.io + repository: ${{vars.DOCKERHUB_FMGP_USERNAME}} + username: ${{vars.DOCKERHUB_FMGP_USERNAME}} + password_name: DOCKERHUB_FMGP_TOKEN + tags_noschedule: | + type=semver,pattern={{version}},enable={{is_default_branch}} + type=raw,value=latest,enable={{is_default_branch}} + tags_schedule: | + type=schedule,enable={{is_default_branch}} steps: - name: Set test variable @@ -127,8 +129,10 @@ jobs: echo "##################" echo "#### JOB INFO ####" echo "##################" - echo "### github.event_name=${{github.event_name}} - echo "### TAGS: is steps.meta.outputs.tags == to ''? ${{ steps.meta.outputs.tags == '' }}" + echo "### github.event_name=${{github.event_name}}" + echo "### env.META_CONFIG: ${{ env.META_CONFIG }}" + echo "### TAGS: ${{ steps.meta.outputs.tags == '' }}" + echo "${{ steps.meta.outputs.tags }}" echo "### runner: ${{ toJSON(runner) }}" echo "### github: ${{ toJSON(github) }}" @@ -157,7 +161,9 @@ jobs: username: ${{ matrix.docker.username }} password: ${{ secrets[matrix.docker.password_name] }} + # TODO FIX These builds the image multiple times (matrix) - name: Build and push identus-mediator Image + id: push uses: docker/build-push-action@v6 with: context: ./docker-artifact/ From e6388e0fb6ba6b36648de96484ef815e68204b74 Mon Sep 17 00:00:00 2001 From: FabioPinheiro Date: Fri, 29 Nov 2024 21:02:08 +0000 Subject: [PATCH 4/4] recommit Signed-off-by: FabioPinheiro --- .github/workflows/release-docker-hub.yml | 27 ++++++++++++------------ 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/.github/workflows/release-docker-hub.yml b/.github/workflows/release-docker-hub.yml index 33776138..76664d79 100644 --- a/.github/workflows/release-docker-hub.yml +++ b/.github/workflows/release-docker-hub.yml @@ -4,8 +4,8 @@ name: Release to Docker Hub # How to test: # > git tag v9.9.9 # > git tag --delete v9.9.9 -# > act --artifact-server-path /tmp/artifacts -s GITHUB_TOKEN="$(gh auth token)" --var DOCKERHUB_FMGP_USERNAME=$DOCKERHUB_FMGP_USERNAME -s DOCKERHUB_FMGP_TOKEN=$DOCKERHUB_FMGP_TOKEN --var DOCKERHUB_IDENTUS_USERNAME=$DOCKERHUB_IDENTUS_USERNAME -s DOCKERHUB_IDENTUS_TOKEN=$DOCKERHUB_IDENTUS_TOKEN -j build-and-push-docker-images schedule -# > act --artifact-server-path /tmp/artifacts -s GITHUB_TOKEN="$(gh auth token)" --var DOCKERHUB_FMGP_USERNAME=$DOCKERHUB_FMGP_USERNAME -s DOCKERHUB_FMGP_TOKEN=$DOCKERHUB_FMGP_TOKEN --var DOCKERHUB_IDENTUS_USERNAME=$DOCKERHUB_IDENTUS_USERNAME -s DOCKERHUB_IDENTUS_TOKEN=$DOCKERHUB_IDENTUS_TOKEN --workflows '.github/workflows/release-docker-hub.yml' push +# > act --artifact-server-path /tmp/artifacts -s GITHUB_TOKEN="$(gh auth token)" --var DOCKERHUB_IDENTUS_USERNAME=$DOCKERHUB_IDENTUS_USERNAME -s DOCKERHUB_IDENTUS_TOKEN=$DOCKERHUB_IDENTUS_TOKEN -j build-and-push-docker-images schedule +# > act --artifact-server-path /tmp/artifacts -s GITHUB_TOKEN="$(gh auth token)" --var DOCKERHUB_IDENTUS_USERNAME=$DOCKERHUB_IDENTUS_USERNAME -s DOCKERHUB_IDENTUS_TOKEN=$DOCKERHUB_IDENTUS_TOKEN --workflows '.github/workflows/release-docker-hub.yml' push # > act --artifact-server-path /tmp/artifacts -s GITHUB_TOKEN="$(gh auth token)" \ # --var DOCKERHUB_FMGP_USERNAME=$DOCKERHUB_FMGP_USERNAME -s DOCKERHUB_FMGP_TOKEN=$DOCKERHUB_FMGP_TOKEN \ # --var DOCKERHUB_IDENTUS_USERNAME=$DOCKERHUB_IDENTUS_USERNAME -s DOCKERHUB_IDENTUS_TOKEN=$DOCKERHUB_IDENTUS_TOKEN \ @@ -85,7 +85,7 @@ jobs: docker: - # identus # This is a test account registry: docker.io - repository: ${{vars.DOCKERHUB_IDENTUS_USERNAME}} + repository: identus username: ${{vars.DOCKERHUB_IDENTUS_USERNAME}} password_name: DOCKERHUB_IDENTUS_TOKEN tags_noschedule: | @@ -95,16 +95,16 @@ jobs: type=raw,value=latest,enable=${{ !startsWith(github.ref, 'refs/tags/v') }} tags_schedule: | type=schedule,pattern=nightly,enable={{is_default_branch}} - - # fmgp # My presonal acount also for testing - registry: docker.io - repository: ${{vars.DOCKERHUB_FMGP_USERNAME}} - username: ${{vars.DOCKERHUB_FMGP_USERNAME}} - password_name: DOCKERHUB_FMGP_TOKEN - tags_noschedule: | - type=semver,pattern={{version}},enable={{is_default_branch}} - type=raw,value=latest,enable={{is_default_branch}} - tags_schedule: | - type=schedule,enable={{is_default_branch}} + # - # fmgp # My presonal acount also for testing + # registry: docker.io + # repository: ${{vars.DOCKERHUB_FMGP_USERNAME}} + # username: ${{vars.DOCKERHUB_FMGP_USERNAME}} + # password_name: DOCKERHUB_FMGP_TOKEN + # tags_noschedule: | + # type=semver,pattern={{version}},enable={{is_default_branch}} + # type=raw,value=latest,enable={{is_default_branch}} + # tags_schedule: | + # type=schedule,enable={{is_default_branch}} steps: - name: Set test variable @@ -161,7 +161,6 @@ jobs: username: ${{ matrix.docker.username }} password: ${{ secrets[matrix.docker.password_name] }} - # TODO FIX These builds the image multiple times (matrix) - name: Build and push identus-mediator Image id: push uses: docker/build-push-action@v6