Copy-pasting YAML between repos is a maintenance nightmare. Reusable Workflows solve this.
Creating a Shared Workflow
In a central repo (e.g., `my-org/.github`), create:
# .github/workflows/dotnet-build.yml
name: .NET Build
on:
workflow_call:
inputs:
dotnet-version:
required: true
type: string
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-dotnet@v3
with:
dotnet-version: ${{ inputs.dotnet-version }}
- run: dotnet build
Consuming It
jobs:
call-build:
uses: my-org/.github/.github/workflows/dotnet-build.yml@main
with:
dotnet-version: '7.0'
Discover more from C4: Container, Code, Cloud & Context
Subscribe to get the latest posts sent to your email.