.NET API to Cloud Run

dotnet-cloud-run@1.0.0 Template

Ready-made pipeline: test a .NET API, build its image and roll it out to Cloud Run, with Claude reviewing PRs.

Start from it

flightstack template use dotnet-cloud-run

What it does

A complete pipeline for a .NET API on Google Cloud Run. Pull requests get a build, tests and a Claude review. Pushes to main build and test, push a container image to Artifact Registry, and roll the exact digest out to Cloud Run with a health check.

Definition

name: .NET API to Cloud Run
description: >-
  Test a .NET API, build its container and roll it out to Cloud Run on every
  push to main, with a Claude review on pull requests.

triggers:
  - type: push
    branches: [main]
  - type: pullRequest
  - type: manual

jobs:
  test:
    name: Build and test
    type: plugin/dotnet-ci
    with:
      target: "{{dotnetTarget}}"
      configuration: Release

  review:
    name: Claude review
    type: plugin/claude-pr-review
    if: "${{ context.eventType == 'pullRequest' }}"
    with:
      repository: "${{ context.repository }}"
      branch: "${{ context.branch }}"
      baseBranch: main

  image:
    name: Build image
    type: plugin/docker-build-push
    depends_on: [test]
    if: "${{ context.eventType != 'pullRequest' }}"
    with:
      image: "{{image}}"
      platform: linux/amd64
      tags:
        - "${{ context.commitShort }}"
        - latest

  deploy:
    name: Deploy to Cloud Run
    type: plugin/cloud-run-deploy
    depends_on: [image]
    with:
      project: "{{project}}"
      region: "{{region}}"
      service: "{{service}}"
      image: "${{ steps.image.outputs.imageRef }}"
      healthPath: "{{healthPath}}"