commerce/.github/workflows/develop.deploy-functions.yml
2024-07-19 21:09:48 -07:00

68 lines
2.3 KiB
YAML

name: '[Develop] Deploy Functions'
env:
COMPANY_NAME: ${{ vars.COMPANY_NAME }}
TWITTER_CREATOR: ${{ vars.TWITTER_CREATOR }}
TWITTER_SITE: ${{ vars.TWITTER_SITE }}
SITE_NAME: ${{ vars.SITE_NAME }}
SHOPIFY_REVALIDATION_SECRET: ${{ secrets.SHOPIFY_REVALIDATION_SECRET }}
SHOPIFY_STOREFRONT_ACCESS_TOKEN: ${{ vars.SHOPIFY_STOREFRONT_ACCESS_TOKEN }}
SHOPIFY_STORE_DOMAIN: ${{ vars.SHOPIFY_STORE_DOMAIN }}
on:
push:
branches:
- develop
jobs:
deploy-to-gcp:
runs-on: ubuntu-latest
environment: develop
permissions:
contents: 'read'
id-token: 'write'
steps:
- name: Checkout actions-oidc-debugger
uses: actions/checkout@v3
with:
repository: github/actions-oidc-debugger
ref: main
token: ${{ secrets.GITHUB_TOKEN }}
path: ./.github/actions/actions-oidc-debugger
- name: Debug OIDC Claims
uses: ./.github/actions/actions-oidc-debugger
with:
audience: 'projects/244612473611/locations/global/workloadIdentityPools/aspirex-dev/providers/github-actions'
- name: Checkout repository
uses: 'actions/checkout@v4'
- name: Authenticate with Google Cloud
id: auth
uses: google-github-actions/auth@v2
with:
project_id: ${{ vars.PROJECT_ID }}
service_account: ${{ vars.WORKLOAD_SERVICE_ACCOUNT }}
workload_identity_provider: ${{ vars.WORKLOAD_IDENTITY_PROVIDER }}
# https://github.com/marketplace/actions/deploy-to-cloud-run
- name: Build and Deploy to Google CloudRun
id: 'deploy'
uses: 'google-github-actions/deploy-cloudrun@v2'
with:
service: ${{ vars.APP_NAME }}
project_id: ${{ vars.PROJECT_ID }}
region: ${{ vars.REGION }}
source: ./
env_vars: |-
COMPANY_NAME="Foo Bar"
TWITTER_CREATOR="@vercel"
TWITTER_SITE="https://nextjs.org/commerce"
SITE_NAME="Next.js Commerce"
SHOPIFY_REVALIDATION_SECRET=${{ env.SHOPIFY_REVALIDATION_SECRET }}
SHOPIFY_STOREFRONT_ACCESS_TOKEN=${{ env.SHOPIFY_STOREFRONT_ACCESS_TOKEN }}
SHOPIFY_STORE_DOMAIN=${{ env.SHOPIFY_STORE_DOMAIN }}
- name: 'Use output'
run: 'curl "${{ steps.deploy.outputs.url }}"'