Skip to content

Automate deploy to Google Cloud Functions Gen2 from GitHub Actions #15

@gepser

Description

@gepser

Problem

Deploy is currently manual via gcloud functions deploy, so releases depend on local steps and can drift from the repository state.

Goal

Deploy automatically to Google Cloud Functions Gen2 when changes are merged to master.

Proposed solution

Create a GitHub Actions deploy workflow using Workload Identity Federation (OIDC) and the official Google GitHub Actions.

Scope

  • Add .github/workflows/deploy.yml.
  • Trigger on push to master and workflow_dispatch.
  • Use google-github-actions/auth with workload identity provider + service account.
  • Deploy function progress in project progress-markdown, region us-central1, runtime go124, entry point Progress.
  • Add optional post-deploy smoke test step (reusing scripts/smoke.sh).
  • Document required GitHub repository secrets/variables and one-time GCP IAM setup.

Acceptance criteria

  • Merge to master triggers deploy workflow automatically.
  • Workflow can also be run manually.
  • Deployment succeeds without long-lived JSON keys.
  • README includes setup instructions for GitHub-to-GCP auth and deploy automation.

Notes

Use OIDC/WIF only (no service account key files).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions