2727 outputs :
2828 release : ${{ steps.by-tag.outputs.release }}
2929 latest-release : ${{ steps.latest.outputs.latest-release }}
30- docker-tag : ${{ steps.docker.outputs.docker-tag }}
3130 gh-docker-tag : ${{ steps.docker.outputs.gh-docker-tag }}
3231 lowercase-repo : ${{ steps.var.outputs.lowercase-repo }}
3332 node-version : ${{ steps.var.outputs.node-version }}
8483 if [[ '${{ github.event_name }}' == 'pull_request' ]]; then
8584 DOCKER_TAG="pr-${{ github.event.number }}"
8685 else
87- DOCKER_TAG="gh-${{ github.run_id }}"
86+ DOCKER_TAG=$GITHUB_REF_NAME
8887 fi
8988 echo "DOCKER_TAG: ${DOCKER_TAG}"
9089 echo "gh-docker-tag=${DOCKER_TAG}" >> $GITHUB_OUTPUT
@@ -224,41 +223,41 @@ jobs:
224223 with :
225224 node-version : ${{ needs.release-versions.outputs.node-version }}
226225 deno-version : ${{ needs.release-versions.outputs.deno-version }}
227- coverage : true
228-
229- build-prod :
230- name : 📦 Meteor Build - official
231- needs : [tests-done, release-versions, packages-build]
232- if : (github.event_name == 'release' || github.ref == 'refs/heads/develop')
233- runs-on : ubuntu-24.04
234-
235- steps :
236- - name : Collect Workflow Telemetry
237- uses : catchpoint/workflow-telemetry-action@v2
238- with :
239- theme : dark
240- job_summary : true
241- comment_on_pr : false
242- - name : Github Info
243- run : |
244- echo "GITHUB_ACTION: $GITHUB_ACTION"
245- echo "GITHUB_ACTOR: $GITHUB_ACTOR"
246- echo "GITHUB_REF: $GITHUB_REF"
247- echo "GITHUB_HEAD_REF: $GITHUB_HEAD_REF"
248- echo "GITHUB_BASE_REF: $GITHUB_BASE_REF"
249- echo "github.event_name: ${{ github.event_name }}"
250- cat $GITHUB_EVENT_PATH
251-
252- - uses : actions/checkout@v4
253-
254- - uses : ./.github/actions/meteor-build
255- with :
256- node-version : ${{ needs.release-versions.outputs.node-version }}
257- deno-version : ${{ needs.release-versions.outputs.deno-version }}
258- coverage : false
226+ coverage : ${{ github.event_name != 'release' && github.ref != 'refs/heads/develop' }}
227+
228+ # build-prod:
229+ # name: 📦 Meteor Build - official
230+ # needs: [tests-done, release-versions, packages-build]
231+ # if: (github.event_name == 'release' || github.ref == 'refs/heads/develop')
232+ # runs-on: ubuntu-24.04
233+
234+ # steps:
235+ # - name: Collect Workflow Telemetry
236+ # uses: catchpoint/workflow-telemetry-action@v2
237+ # with:
238+ # theme: dark
239+ # job_summary: true
240+ # comment_on_pr: false
241+ # - name: Github Info
242+ # run: |
243+ # echo "GITHUB_ACTION: $GITHUB_ACTION"
244+ # echo "GITHUB_ACTOR: $GITHUB_ACTOR"
245+ # echo "GITHUB_REF: $GITHUB_REF"
246+ # echo "GITHUB_HEAD_REF: $GITHUB_HEAD_REF"
247+ # echo "GITHUB_BASE_REF: $GITHUB_BASE_REF"
248+ # echo "github.event_name: ${{ github.event_name }}"
249+ # cat $GITHUB_EVENT_PATH
250+
251+ # - uses: actions/checkout@v4
252+
253+ # - uses: ./.github/actions/meteor-build
254+ # with:
255+ # node-version: ${{ needs.release-versions.outputs.node-version }}
256+ # deno-version: ${{ needs.release-versions.outputs.deno-version }}
257+ # coverage: false
259258
260259 build-gh-docker-coverage :
261- name : 🚢 Build Docker Images for Testing
260+ name : 🚢 Build Docker
262261 needs : [build, release-versions]
263262 runs-on : ubuntu-24.04${{ matrix.arch == 'arm64' && '-arm' || '' }}
264263
@@ -288,7 +287,7 @@ jobs:
288287 NPM_TOKEN : ${{ secrets.NPM_TOKEN }}
289288
290289 build-gh-docker-coverage-publish :
291- name : 🚢 Build Docker Images for Testing (Publish )
290+ name : 🚢 Publish Docker Images (ghcr.io )
292291 needs : [build-gh-docker-coverage, release-versions]
293292 runs-on : ubuntu-24.04
294293
@@ -315,13 +314,13 @@ jobs:
315314 path : /tmp/digests
316315 merge-multiple : true
317316
318- - name : Show digests
319- if : github.actor != 'dependabot[bot]' && (github.event.pull_request.head.repo.full_name == github.repository || github.event_name == 'release' || github.ref == 'refs/heads/develop')
320- run : |
321- find /tmp/digests -maxdepth 3 -type f -name 'digest.txt' -print
322- cat /tmp/digests/presence-service/amd64/digest.txt
323- cat /tmp/digests/presence-service/arm64/digest.txt
324-
317+ # - name: Show digests
318+ # if: github.actor != 'dependabot[bot]' && (github.event.pull_request.head.repo.full_name == github.repository || github.event_name == 'release' || github.ref == 'refs/heads/develop')
319+ # run: |
320+ # find /tmp/digests -maxdepth 3 -type f -name 'digest.txt' -print
321+ # cat /tmp/digests/presence-service/amd64/digest.txt
322+ # cat /tmp/digests/presence-service/arm64/digest.txt
323+
325324 - name : Create and push multi-arch manifests
326325 if : (github.event.pull_request.head.repo.full_name == github.repository || github.event_name == 'release' || github.ref == 'refs/heads/develop') && github.actor != 'dependabot[bot]'
327326 run : |
@@ -339,20 +338,6 @@ jobs:
339338 | xargs -0 -I{} sh -c "tr -d '\r' < '{}' | sed '/^[[:space:]]*$/d'"
340339 )
341340
342- # Validação e log
343- if [[ ${#refs[@]} -eq 0 ]]; then
344- echo "::error::Sem refs em $service_dir"; exit 1
345- fi
346- echo "Refs detectados para $service:"
347- printf ' - %s\n' "${refs[@]}"
348-
349- # Regex de sanity-check
350- for r in "${refs[@]}"; do
351- if [[ ! "$r" =~ ^[a-z0-9._/-]+(:[a-z0-9._-]+)?@sha256:[a-f0-9]{64}$ ]]; then
352- echo "::error::Ref inválido: '$r'"; exit 1
353- fi
354- done
355-
356341 echo "Digest for ${service}: ${refs[@]}"
357342
358343 # Get image name from docker-compose-ci.yml since rocketchat image is different from service name (rocket.chat)
@@ -366,38 +351,38 @@ jobs:
366351 ${refs[@]}
367352 done
368353
369- build-gh-docker :
370- name : 🚢 Build Docker Images for Production
371- needs : [build-prod, release-versions]
372- runs-on : ubuntu-24.04
354+ # build-gh-docker:
355+ # name: 🚢 Build Docker Images for Production
356+ # needs: [build-prod, release-versions]
357+ # runs-on: ubuntu-24.04
373358
374- env :
375- DOCKER_TAG : ${{ needs.release-versions.outputs.gh-docker-tag }}
376- LOWERCASE_REPOSITORY : ${{ needs.release-versions.outputs.lowercase-repo }}
359+ # env:
360+ # DOCKER_TAG: ${{ needs.release-versions.outputs.gh-docker-tag }}
361+ # LOWERCASE_REPOSITORY: ${{ needs.release-versions.outputs.lowercase-repo }}
377362
378- steps :
379- - uses : actions/checkout@v4
363+ # steps:
364+ # - uses: actions/checkout@v4
380365
381- - uses : ./.github/actions/build-docker
382- with :
383- CR_USER : ${{ secrets.CR_USER }}
384- CR_PAT : ${{ secrets.CR_PAT }}
385- node-version : ${{ needs.release-versions.outputs.node-version }}
386- deno-version : ${{ needs.release-versions.outputs.deno-version }}
387- service : ' rocketchat'
388- NPM_TOKEN : ${{ secrets.NPM_TOKEN }}
366+ # - uses: ./.github/actions/build-docker
367+ # with:
368+ # CR_USER: ${{ secrets.CR_USER }}
369+ # CR_PAT: ${{ secrets.CR_PAT }}
370+ # node-version: ${{ needs.release-versions.outputs.node-version }}
371+ # deno-version: ${{ needs.release-versions.outputs.deno-version }}
372+ # service: 'rocketchat'
373+ # NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
389374
390- - name : Rename official Docker tag to GitHub Container Registry
391- run : |
392- IMAGE_NAME_BASE="ghcr.io/${LOWERCASE_REPOSITORY}/rocket.chat:${DOCKER_TAG}"
375+ # - name: Rename official Docker tag to GitHub Container Registry
376+ # run: |
377+ # IMAGE_NAME_BASE="ghcr.io/${LOWERCASE_REPOSITORY}/rocket.chat:${DOCKER_TAG}"
393378
394- echo "Push Docker image: ${IMAGE_NAME_BASE}"
395- docker tag ${IMAGE_NAME_BASE}.alpine $IMAGE_NAME_BASE
396- docker push $IMAGE_NAME_BASE
379+ # echo "Push Docker image: ${IMAGE_NAME_BASE}"
380+ # docker tag ${IMAGE_NAME_BASE}.alpine $IMAGE_NAME_BASE
381+ # docker push $IMAGE_NAME_BASE
397382
398- echo "Push Docker image: ${IMAGE_NAME_BASE}.official"
399- docker tag ${IMAGE_NAME_BASE}.alpine ${IMAGE_NAME_BASE}.official
400- docker push ${IMAGE_NAME_BASE}.official
383+ # echo "Push Docker image: ${IMAGE_NAME_BASE}.official"
384+ # docker tag ${IMAGE_NAME_BASE}.alpine ${IMAGE_NAME_BASE}.official
385+ # docker push ${IMAGE_NAME_BASE}.official
401386
402387 checks :
403388 needs : [release-versions, packages-build]
@@ -588,7 +573,7 @@ jobs:
588573 name : 🚀 Publish build assets
589574 runs-on : ubuntu-24.04
590575 if : github.event_name == 'release' || github.ref == 'refs/heads/develop'
591- needs : [build-gh-docker, release-versions]
576+ needs : [build-gh-docker-coverage-publish , release-versions]
592577
593578 steps :
594579 - uses : actions/checkout@v4
@@ -639,12 +624,13 @@ jobs:
639624 aws s3 cp $ROCKET_DEPLOY_DIR/ s3://download.rocket.chat/build/ --recursive
640625
641626 docker-image-publish :
642- name : 🚀 Publish Docker Image (main )
627+ name : 🚀 Publish Docker Images (DockerHub )
643628 runs-on : ubuntu-24.04
644629 needs : [deploy, release-versions]
645630
646- env :
647- IMAGE_NAME : ' rocketchat/rocket.chat'
631+ strategy :
632+ matrix :
633+ service : ['rocketchat', 'account', 'authorization', 'ddp-streamer', 'omnichannel-transcript', 'presence', 'queue-worker', 'stream-hub']
648634
649635 steps :
650636 - name : Login to DockerHub
@@ -663,7 +649,13 @@ jobs:
663649 - name : Get Docker image name
664650 id : gh-docker
665651 run : |
666- GH_IMAGE_NAME="ghcr.io/${{ needs.release-versions.outputs.lowercase-repo }}/rocket.chat:${{ needs.release-versions.outputs.gh-docker-tag }}.alpine"
652+ if [[ '${{ matrix.service }}' == 'rocketchat' ]]; then
653+ IMAGE_NAME="${{ needs.release-versions.outputs.lowercase-repo }}/rocket.chat"
654+ else
655+ IMAGE_NAME="${{ needs.release-versions.outputs.lowercase-repo }}/${{ matrix.service }}-service"
656+ fi
657+
658+ GH_IMAGE_NAME="ghcr.io/${IMAGE}:${{ needs.release-versions.outputs.gh-docker-tag }}"
667659
668660 echo "GH_IMAGE_NAME: $GH_IMAGE_NAME"
669661
@@ -677,8 +669,14 @@ jobs:
677669 - name : Pull Docker image
678670 run : docker pull ${{ steps.gh-docker.outputs.gh-image-name }}
679671
680- - name : Publish Docker image
672+ - name : Publish Docker images
681673 run : |
674+ if [[ '${{ matrix.service }}' == 'rocketchat' ]]; then
675+ IMAGE_NAME="${{ needs.release-versions.outputs.lowercase-repo }}/rocket.chat"
676+ else
677+ IMAGE_NAME="${{ needs.release-versions.outputs.lowercase-repo }}/${{ matrix.service }}-service"
678+ fi
679+
682680 # 'develop' or 'tag'
683681 DOCKER_TAG=$GITHUB_REF_NAME
684682
@@ -692,7 +690,7 @@ jobs:
692690
693691 if [[ $GITHUB_REF == refs/tags/* ]]; then
694692 RELEASE="${{ needs.release-versions.outputs.release }}"
695-
693+
696694 echo "RELEASE: $RELEASE"
697695
698696 if [[ $RELEASE == 'latest' ]]; then
@@ -726,100 +724,10 @@ jobs:
726724
727725 echo "::endgroup::"
728726
729- services-docker-image-publish :
730- name : 🚀 Publish Docker Image (services)
731- runs-on : ubuntu-24.04
732- needs : [deploy, release-versions]
733-
734- strategy :
735- matrix :
736- service : ['account', 'authorization', 'ddp-streamer', 'omnichannel-transcript', 'presence', 'queue-worker', 'stream-hub']
737-
738- steps :
739- - name : Login to DockerHub
740- uses : docker/login-action@v3
741- with :
742- username : ${{ secrets.DOCKER_USER }}
743- password : ${{ secrets.DOCKER_PASS }}
744-
745- - name : Login to GitHub Container Registry
746- uses : docker/login-action@v3
747- with :
748- registry : ghcr.io
749- username : ${{ secrets.CR_USER }}
750- password : ${{ secrets.CR_PAT }}
751-
752- - name : Get Docker image name
753- id : gh-docker
754- run : |
755- GH_IMAGE_NAME="ghcr.io/${{ needs.release-versions.outputs.lowercase-repo }}/${{ matrix.service }}-service:${{ needs.release-versions.outputs.gh-docker-tag }}"
756-
757- echo "GH_IMAGE_NAME: $GH_IMAGE_NAME"
758-
759- echo "gh-image-name=${GH_IMAGE_NAME}" >> $GITHUB_OUTPUT
760-
761- DOCKER_TAG_SHA="sha-${GITHUB_SHA:0:7}"
762-
763- echo "DOCKER_TAG_SHA: ${DOCKER_TAG_SHA}"
764- echo "gh-docker-tag-sha=${DOCKER_TAG_SHA}" >> $GITHUB_OUTPUT
765-
766- - name : Pull Docker image
767- run : docker pull ${{ steps.gh-docker.outputs.gh-image-name }}
768-
769- - name : Publish Docker images
770- run : |
771- DH_IMAGE_NAME="rocketchat/${{ matrix.service }}-service"
772-
773- # 'develop' or 'tag'
774- DOCKER_TAG=$GITHUB_REF_NAME
775-
776- PUBLISHED_TAGS=()
777-
778- # tag and push the specific tag version
779- docker tag ${{ steps.gh-docker.outputs.gh-image-name }} $DH_IMAGE_NAME:$DOCKER_TAG
780- docker push $DH_IMAGE_NAME:$DOCKER_TAG
781-
782- PUBLISHED_TAGS+=("$DH_IMAGE_NAME:$DOCKER_TAG")
783-
784- if [[ $GITHUB_REF == refs/tags/* ]]; then
785- RELEASE="${{ needs.release-versions.outputs.release }}"
786-
787- if [[ $RELEASE == 'latest' ]]; then
788- if [[ '${{ needs.release-versions.outputs.latest-release }}' == $GITHUB_REF_NAME ]]; then
789- docker tag ${{ steps.gh-docker.outputs.gh-image-name }} $DH_IMAGE_NAME:$RELEASE
790- docker push $DH_IMAGE_NAME:$RELEASE
791-
792- PUBLISHED_TAGS+=("$DH_IMAGE_NAME:$RELEASE")
793- fi
794- else
795- docker tag ${{ steps.gh-docker.outputs.gh-image-name }} $DH_IMAGE_NAME:$RELEASE
796- docker push $DH_IMAGE_NAME:$RELEASE
797-
798- PUBLISHED_TAGS+=("$DH_IMAGE_NAME:$RELEASE")
799- fi
800- fi
801-
802- # commit hash
803- TAG_SHA="${{ steps.gh-docker.outputs.gh-docker-tag-sha }}"
804-
805- docker tag ${{ steps.gh-docker.outputs.gh-image-name }} $DH_IMAGE_NAME:$TAG_SHA
806- docker push $DH_IMAGE_NAME:$TAG_SHA
807-
808- PUBLISHED_TAGS+=("$DH_IMAGE_NAME:$TAG_SHA")
809-
810- echo "::group::Published tags"
811-
812- for TAG in ${PUBLISHED_TAGS[@]}; do
813- echo $TAG
814- done
815-
816- echo "::endgroup::"
817-
818727 notify-services :
819728 name : 🚀 Notify external services
820729 runs-on : ubuntu-24.04
821730 needs :
822- - services-docker-image-publish
823731 - docker-image-publish
824732 - release-versions
825733 steps :
@@ -867,7 +775,6 @@ jobs:
867775
868776 if : github.event_name == 'release'
869777 needs :
870- - services-docker-image-publish
871778 - docker-image-publish
872779
873780 uses : ./.github/workflows/update-version-durability.yml
0 commit comments