From 252b523c542254b5ba6cba85f6b98933118df7ac Mon Sep 17 00:00:00 2001 From: Felix Angelov Date: Thu, 9 May 2024 13:43:13 -0500 Subject: [PATCH] ci: migrate to artifact registry (#2055) --- .../workflows/deploy_artifact_proxy_dev.yaml | 32 +++++++++++-------- .../workflows/deploy_artifact_proxy_prod.yaml | 30 ++++++++++------- .../workflows/deploy_discord_gcp_alerts.yaml | 32 +++++++++++-------- 3 files changed, 56 insertions(+), 38 deletions(-) diff --git a/.github/workflows/deploy_artifact_proxy_dev.yaml b/.github/workflows/deploy_artifact_proxy_dev.yaml index 819e1813..17b9baef 100644 --- a/.github/workflows/deploy_artifact_proxy_dev.yaml +++ b/.github/workflows/deploy_artifact_proxy_dev.yaml @@ -13,6 +13,7 @@ env: PROJECT_ID: code-push-dev SERVICE: artifact-proxy REGION: us-central1 + CONTAINER_REGISTRY: us-docker.pkg.dev jobs: deploy: @@ -30,35 +31,40 @@ jobs: with: submodules: recursive - - uses: dart-lang/setup-dart@v1 + - name: 🎯 Setup Dart + uses: dart-lang/setup-dart@v1 - - name: GCloud Auth - uses: "google-github-actions/auth@v2" + - name: 🔐 GCloud Auth + uses: google-github-actions/auth@v2 with: project_id: ${{ env.PROJECT_ID }} - credentials_json: ${{ secrets.CLOUD_RUN_SA_DEV }} + credentials_json: ${{ secrets.CLOUD_RUN_SA_DEV }} export_environment_variables: true - - name: Setup Cloud SDK + - name: ☁️ Setup GCloud SDK uses: google-github-actions/setup-gcloud@v2.1.0 with: project_id: ${{ env.PROJECT_ID }} - - name: Authorize Docker Push - run: gcloud auth configure-docker + - name: 🔓 Login to Artifact Registry + uses: docker/login-action@v3 + with: + registry: ${{ env.CONTAINER_REGISTRY }} + username: _json_key + password: ${{ secrets.CLOUD_RUN_SA_DEV }} - - name: Build and Push Container + - name: 🐳 Build and Push Container run: |- - docker build -t gcr.io/${{ env.PROJECT_ID }}/${{ env.SERVICE }}:${{ github.sha }} . - docker push gcr.io/${{ env.PROJECT_ID }}/${{ env.SERVICE }}:${{ github.sha }} + docker build -t ${{ env.CONTAINER_REGISTRY }}/${{ env.PROJECT_ID }}/us.gcr.io/${{ env.SERVICE }}:${{ github.sha }} . + docker push ${{ env.CONTAINER_REGISTRY }}/${{ env.PROJECT_ID }}/us.gcr.io/${{ env.SERVICE }}:${{ github.sha }} - - name: Deploy to Cloud Run + - name: 🚀 Deploy to Cloud Run id: deploy uses: google-github-actions/deploy-cloudrun@v2.4.1 with: service: ${{ env.SERVICE }} - image: gcr.io/${{ env.PROJECT_ID }}/${{ env.SERVICE }}:${{ github.sha }} + image: ${{ env.CONTAINER_REGISTRY }}/${{ env.PROJECT_ID }}/us.gcr.io/${{ env.SERVICE }}:${{ github.sha }} region: ${{ env.REGION }} - - name: Show Output + - name: 👀 Show Output run: echo ${{ steps.deploy.outputs.url }} diff --git a/.github/workflows/deploy_artifact_proxy_prod.yaml b/.github/workflows/deploy_artifact_proxy_prod.yaml index 72bf3765..84c664ad 100644 --- a/.github/workflows/deploy_artifact_proxy_prod.yaml +++ b/.github/workflows/deploy_artifact_proxy_prod.yaml @@ -7,6 +7,7 @@ env: PROJECT_ID: code-push-prod SERVICE: artifact-proxy REGION: us-central1 + CONTAINER_REGISTRY: us-docker.pkg.dev jobs: deploy: @@ -24,35 +25,40 @@ jobs: with: submodules: recursive - - uses: dart-lang/setup-dart@v1 + - name: 🎯 Setup Dart + uses: dart-lang/setup-dart@v1 - - name: GCloud Auth - uses: "google-github-actions/auth@v2" + - name: 🔐 GCloud Auth + uses: google-github-actions/auth@v2 with: project_id: ${{ env.PROJECT_ID }} credentials_json: ${{ secrets.CLOUD_RUN_SA_PROD }} export_environment_variables: true - - name: Setup Cloud SDK + - name: ☁️ Setup GCloud SDK uses: google-github-actions/setup-gcloud@v2.1.0 with: project_id: ${{ env.PROJECT_ID }} - - name: Authorize Docker Push - run: gcloud auth configure-docker + - name: 🔓 Login to Artifact Registry + uses: docker/login-action@v3 + with: + registry: ${{ env.CONTAINER_REGISTRY }} + username: _json_key + password: ${{ secrets.CLOUD_RUN_SA_PROD }} - - name: Build and Push Container + - name: 🐳 Build and Push Container run: |- - docker build -t gcr.io/${{ env.PROJECT_ID }}/${{ env.SERVICE }}:${{ github.sha }} . - docker push gcr.io/${{ env.PROJECT_ID }}/${{ env.SERVICE }}:${{ github.sha }} + docker build -t ${{ env.CONTAINER_REGISTRY }}/${{ env.PROJECT_ID }}/us.gcr.io/${{ env.SERVICE }}:${{ github.sha }} . + docker push ${{ env.CONTAINER_REGISTRY }}/${{ env.PROJECT_ID }}/us.gcr.io/${{ env.SERVICE }}:${{ github.sha }} - - name: Deploy to Cloud Run + - name: 🚀 Deploy to Cloud Run id: deploy uses: google-github-actions/deploy-cloudrun@v2.4.1 with: service: ${{ env.SERVICE }} - image: gcr.io/${{ env.PROJECT_ID }}/${{ env.SERVICE }}:${{ github.sha }} + image: ${{ env.CONTAINER_REGISTRY }}/${{ env.PROJECT_ID }}/us.gcr.io/${{ env.SERVICE }}:${{ github.sha }} region: ${{ env.REGION }} - - name: Show Output + - name: 👀 Show Output run: echo ${{ steps.deploy.outputs.url }} diff --git a/.github/workflows/deploy_discord_gcp_alerts.yaml b/.github/workflows/deploy_discord_gcp_alerts.yaml index 0878041c..f4961f47 100644 --- a/.github/workflows/deploy_discord_gcp_alerts.yaml +++ b/.github/workflows/deploy_discord_gcp_alerts.yaml @@ -13,6 +13,7 @@ env: PROJECT_ID: code-push-prod SERVICE: discord-gcp-alerts REGION: us-central1 + CONTAINER_REGISTRY: us-docker.pkg.dev jobs: deploy: @@ -30,38 +31,43 @@ jobs: with: submodules: recursive - - uses: dart-lang/setup-dart@v1 + - name: 🎯 Setup Dart + uses: dart-lang/setup-dart@v1 - - name: GCloud Auth - uses: "google-github-actions/auth@v2" + - name: 🔐 GCloud Auth + uses: google-github-actions/auth@v2 with: project_id: ${{ env.PROJECT_ID }} credentials_json: ${{ secrets.CLOUD_RUN_SA_PROD }} export_environment_variables: true - - name: Setup Cloud SDK + - name: ☁️ Setup GCloud SDK uses: google-github-actions/setup-gcloud@v2.1.0 with: project_id: ${{ env.PROJECT_ID }} - - name: Authorize Docker Push - run: gcloud auth configure-docker + - name: 🔓 Login to Artifact Registry + uses: docker/login-action@v3 + with: + registry: ${{ env.CONTAINER_REGISTRY }} + username: _json_key + password: ${{ secrets.CLOUD_RUN_SA_PROD }} - - name: Build and Push Container + - name: 🐳 Build and Push Container run: |- - docker build -t gcr.io/${{ env.PROJECT_ID }}/${{ env.SERVICE }}:${{ github.sha }} . - docker push gcr.io/${{ env.PROJECT_ID }}/${{ env.SERVICE }}:${{ github.sha }} + docker build -t ${{ env.CONTAINER_REGISTRY }}/${{ env.PROJECT_ID }}/us.gcr.io/${{ env.SERVICE }}:${{ github.sha }} . + docker push ${{ env.CONTAINER_REGISTRY }}/${{ env.PROJECT_ID }}/us.gcr.io/${{ env.SERVICE }}:${{ github.sha }} - - name: Deploy to Cloud Run + - name: 🚀 Deploy to Cloud Run id: deploy uses: google-github-actions/deploy-cloudrun@v2.4.1 with: service: ${{ env.SERVICE }} - image: gcr.io/${{ env.PROJECT_ID }}/${{ env.SERVICE }}:${{ github.sha }} + image: ${{ env.CONTAINER_REGISTRY }}/${{ env.PROJECT_ID }}/us.gcr.io/${{ env.SERVICE }}:${{ github.sha }} region: ${{ env.REGION }} - - name: Show Output + - name: 👀 Show Output run: echo ${{ steps.deploy.outputs.url }} - - name: Ping + - name: 🏓 Ping run: curl "${{ steps.deploy.outputs.url }}"