diff --git a/.github/workflows/build-from-main.yml b/.github/workflows/build-from-main.yml index 48d283cdb..f8952ceae 100644 --- a/.github/workflows/build-from-main.yml +++ b/.github/workflows/build-from-main.yml @@ -40,27 +40,6 @@ jobs: dockerfile: ./govtool/metadata-validation/Dockerfile image: ghcr.io/${{ github.repository }}-metadata-validation qovery_container_name: govtool-metadata-validation - - branch: main - network: pre-prod-govtool - workdir: ./govtool/backend - name: govtool-backend - dockerfile: ./govtool/backend/Dockerfile.qovery - image: ghcr.io/${{ github.repository }}-backend - qovery_container_name: govtool-backend - - branch: main - network: pre-prod-govtool - workdir: ./govtool/frontend - name: govtool-frontend - dockerfile: ./govtool/frontend/Dockerfile.qovery - image: ghcr.io/${{ github.repository }}-frontend - qovery_container_name: govtool-frontend - - branch: main - network: pre-prod-govtool - workdir: ./govtool/metadata-validation - name: govtool-metadata-validation - dockerfile: ./govtool/metadata-validation/Dockerfile - image: ghcr.io/${{ github.repository }}-metadata-validation - qovery_container_name: govtool-metadata-validation - branch: main network: prod-govtool workdir: ./govtool/backend diff --git a/.github/workflows/build-from-test.yml b/.github/workflows/build-from-test.yml index 701f19494..c7f5d4446 100644 --- a/.github/workflows/build-from-test.yml +++ b/.github/workflows/build-from-test.yml @@ -1,9 +1,6 @@ name: Check and Build QA on: - push: - branches: - - test workflow_dispatch: permissions: @@ -131,80 +128,80 @@ jobs: CLEAN_NETWORK=$(echo "${{ matrix.network }}" | sed 's/-govtool$//') echo "CLEAN_NETWORK=$CLEAN_NETWORK" >> $GITHUB_ENV - - name: Build Docker image - uses: docker/build-push-action@v5 - with: - context: ${{ matrix.workdir }} - file: ${{ matrix.dockerfile }} - tags: > - ${{ steps.image_lowercase.outputs.lowercase }}-${{ env.CLEAN_NETWORK }}:${{ env.COMMIT_TAG }}, - ${{ steps.image_lowercase.outputs.lowercase }}-${{ env.CLEAN_NETWORK }}:${{ env.STATIC_TAG }} - load: false - cache-from: type=local,src=/tmp/.buildx-cache - cache-to: type=local,dest=/tmp/.buildx-cache - outputs: type=docker,dest=/tmp/image-${{ matrix.name }}-${{ env.ENVIRONMENT }}.tar - build-args: | - VITE_APP_ENV=${{ secrets.VITE_APP_ENV }} - VITE_BASE_URL=${{ secrets.VITE_BASE_URL }} - VITE_METADATA_API_URL=${{ secrets.VITE_METADATA_API_URL }} - VITE_NETWORK_FLAG=${{ secrets.VITE_NETWORK_FLAG }} - VITE_SENTRY_DSN=${{ secrets.VITE_SENTRY_DSN }} - VITE_USERSNAP_SPACE_API_KEY=${{ secrets.VITE_USERSNAP_SPACE_API_KEY }} - VITE_IS_PROPOSAL_DISCUSSION_FORUM_ENABLED=${{ secrets.VITE_IS_PROPOSAL_DISCUSSION_FORUM_ENABLED }} - VITE_IS_GOVERNANCE_OUTCOMES_PILLAR_ENABLED=${{ secrets.VITE_IS_GOVERNANCE_OUTCOMES_PILLAR_ENABLED }} - VITE_OUTCOMES_API_URL=${{secrets.VITE_OUTCOMES_API_URL}} - VITE_PDF_API_URL=${{ secrets.VITE_PDF_API_URL }} - VITE_IPFS_GATEWAY=${{ secrets.IPFS_GATEWAY }} - VITE_IPFS_PROJECT_ID=${{ secrets.IPFS_PROJECT_ID }} - IPFS_GATEWAY=${{ secrets.IPFS_GATEWAY }} - IPFS_PROJECT_ID=${{ secrets.IPFS_PROJECT_ID }} - - - name: Login to GHCR - uses: docker/login-action@v2 - with: - registry: ghcr.io - username: ${{ github.actor }} - password: ${{ secrets.GITHUB_TOKEN }} - - - name: Scan Docker image with Dockle - id: dockle - run: | - wget -q https://github.com/goodwithtech/dockle/releases/download/v0.4.14/dockle_0.4.14_Linux-64bit.tar.gz - tar zxf dockle_0.4.14_Linux-64bit.tar.gz - sudo mv dockle /usr/local/bin - - dockle --exit-code 1 --exit-level fatal --format json -ak GHC_RELEASE_KEY -ak CABAL_INSTALL_RELEASE_KEY -ak STACK_RELEASE_KEY -ak KEY_SHA512 --input '/tmp/image-${{ matrix.name }}-${{ env.ENVIRONMENT }}.tar' --output ${{ matrix.workdir }}/dockle_scan_output.json - echo " dockle exited w/ $?" - cat ${{ matrix.workdir }}/dockle_scan_output.json - - echo "outcome=success" >> $GITHUB_OUTPUT - - - name: Debug TAG Before Docker Push - run: | - echo "Lowercase Image: ${{ steps.image_lowercase.outputs.lowercase }}" - echo "Network: ${{ matrix.network }}" - echo "COMMIT_TAG: ${{ env.COMMIT_TAG }}" - echo "STATIC_TAG: ${{ env.STATIC_TAG }}" - echo "Final Docker Tag: ${{ steps.image_lowercase.outputs.lowercase }}-${{ matrix.network}}:${{ env.TAG }}" + # - name: Build Docker image + # uses: docker/build-push-action@v5 + # with: + # context: ${{ matrix.workdir }} + # file: ${{ matrix.dockerfile }} + # tags: > + # ${{ steps.image_lowercase.outputs.lowercase }}-${{ env.CLEAN_NETWORK }}:${{ env.COMMIT_TAG }}, + # ${{ steps.image_lowercase.outputs.lowercase }}-${{ env.CLEAN_NETWORK }}:${{ env.STATIC_TAG }} + # load: false + # cache-from: type=local,src=/tmp/.buildx-cache + # cache-to: type=local,dest=/tmp/.buildx-cache + # outputs: type=docker,dest=/tmp/image-${{ matrix.name }}-${{ env.ENVIRONMENT }}.tar + # build-args: | + # VITE_APP_ENV=${{ secrets.VITE_APP_ENV }} + # VITE_BASE_URL=${{ secrets.VITE_BASE_URL }} + # VITE_METADATA_API_URL=${{ secrets.VITE_METADATA_API_URL }} + # VITE_NETWORK_FLAG=${{ secrets.VITE_NETWORK_FLAG }} + # VITE_SENTRY_DSN=${{ secrets.VITE_SENTRY_DSN }} + # VITE_USERSNAP_SPACE_API_KEY=${{ secrets.VITE_USERSNAP_SPACE_API_KEY }} + # VITE_IS_PROPOSAL_DISCUSSION_FORUM_ENABLED=${{ secrets.VITE_IS_PROPOSAL_DISCUSSION_FORUM_ENABLED }} + # VITE_IS_GOVERNANCE_OUTCOMES_PILLAR_ENABLED=${{ secrets.VITE_IS_GOVERNANCE_OUTCOMES_PILLAR_ENABLED }} + # VITE_OUTCOMES_API_URL=${{secrets.VITE_OUTCOMES_API_URL}} + # VITE_PDF_API_URL=${{ secrets.VITE_PDF_API_URL }} + # VITE_IPFS_GATEWAY=${{ secrets.IPFS_GATEWAY }} + # VITE_IPFS_PROJECT_ID=${{ secrets.IPFS_PROJECT_ID }} + # IPFS_GATEWAY=${{ secrets.IPFS_GATEWAY }} + # IPFS_PROJECT_ID=${{ secrets.IPFS_PROJECT_ID }} + + # - name: Login to GHCR + # uses: docker/login-action@v2 + # with: + # registry: ghcr.io + # username: ${{ github.actor }} + # password: ${{ secrets.GITHUB_TOKEN }} + + # - name: Scan Docker image with Dockle + # id: dockle + # run: | + # wget -q https://github.com/goodwithtech/dockle/releases/download/v0.4.14/dockle_0.4.14_Linux-64bit.tar.gz + # tar zxf dockle_0.4.14_Linux-64bit.tar.gz + # sudo mv dockle /usr/local/bin + + # dockle --exit-code 1 --exit-level fatal --format json -ak GHC_RELEASE_KEY -ak CABAL_INSTALL_RELEASE_KEY -ak STACK_RELEASE_KEY -ak KEY_SHA512 --input '/tmp/image-${{ matrix.name }}-${{ env.ENVIRONMENT }}.tar' --output ${{ matrix.workdir }}/dockle_scan_output.json + # echo " dockle exited w/ $?" + # cat ${{ matrix.workdir }}/dockle_scan_output.json + + # echo "outcome=success" >> $GITHUB_OUTPUT + + # - name: Debug TAG Before Docker Push + # run: | + # echo "Lowercase Image: ${{ steps.image_lowercase.outputs.lowercase }}" + # echo "Network: ${{ matrix.network }}" + # echo "COMMIT_TAG: ${{ env.COMMIT_TAG }}" + # echo "STATIC_TAG: ${{ env.STATIC_TAG }}" + # echo "Final Docker Tag: ${{ steps.image_lowercase.outputs.lowercase }}-${{ matrix.network}}:${{ env.TAG }}" - - name: Push Docker image to GHCR - run: | - docker load -i '/tmp/image-${{ matrix.name }}-${{ env.ENVIRONMENT }}.tar' - rm -rf '/tmp/image-${{ matrix.name }}-${{ env.ENVIRONMENT }}.tar' - docker push ${{ steps.image_lowercase.outputs.lowercase }}-${{ env.CLEAN_NETWORK}}:${{ env.COMMIT_TAG }} - - - name: Sleep for 20 Seconds - run: sleep 20 - - - name: Notify Qovery of new image tag - run: | - curl -i -X POST https://api.qovery.com/organization/${{ secrets.QOVERY_ORG_ID }}/container/deploy \ - -H "Authorization: Token ${{ secrets.QOVERY_API_TOKEN }}" \ - -H "Content-Type: application/json" \ - -d '{ - "image_name": "intersectmbo/${{ matrix.name }}-${{ env.CLEAN_NETWORK }}", - "tag": "${{ env.COMMIT_TAG }}" - }' + # - name: Push Docker image to GHCR + # run: | + # docker load -i '/tmp/image-${{ matrix.name }}-${{ env.ENVIRONMENT }}.tar' + # rm -rf '/tmp/image-${{ matrix.name }}-${{ env.ENVIRONMENT }}.tar' + # docker push ${{ steps.image_lowercase.outputs.lowercase }}-${{ env.CLEAN_NETWORK}}:${{ env.COMMIT_TAG }} + + # - name: Sleep for 20 Seconds + # run: sleep 20 + + # - name: Notify Qovery of new image tag + # run: | + # curl -i -X POST https://api.qovery.com/organization/${{ secrets.QOVERY_ORG_ID }}/container/deploy \ + # -H "Authorization: Token ${{ secrets.QOVERY_API_TOKEN }}" \ + # -H "Content-Type: application/json" \ + # -d '{ + # "image_name": "intersectmbo/${{ matrix.name }}-${{ env.CLEAN_NETWORK }}", + # "tag": "${{ env.COMMIT_TAG }}" + # }' - name: Add tag as a PR comment uses: ubie-oss/comment-to-merged-pr-action@v0.3.3