Workflows Overview¶
Go Gamma Actions provides six reusable workflows that can be used individually or combined.
Available Workflows¶
| Workflow | Purpose | When to Use |
|---|---|---|
| ci.yml | Complete CI pipeline | Default choice for most projects |
| test.yml | Testing and coverage | Standalone testing |
| lint.yml | Code quality | Custom lint configurations |
| security.yml | Security scanning | Compliance requirements |
| build.yml | Cross-platform builds | Binary distribution |
| release.yml | Automated releases | Version tagging |
Recommended Approach¶
For Most Projects¶
Use the combined ci.yml workflow:
This orchestrates all workflows with optimal parallelization.
For Custom Pipelines¶
Compose individual workflows:
jobs:
test:
uses: go-gamma/actions/.github/workflows/test.yml@v1
lint:
uses: go-gamma/actions/.github/workflows/lint.yml@v1
security:
uses: go-gamma/actions/.github/workflows/security.yml@v1
build:
needs: [test, lint, security]
uses: go-gamma/actions/.github/workflows/build.yml@v1
Workflow Execution¶
CI Pipeline Flow¶
flowchart TB
subgraph "Parallel Phase"
T[Test]
L[Lint]
S[Security]
end
subgraph "Sequential Phase"
B[Build Matrix]
end
T --> B
L --> B
S --> B Resource Usage¶
| Workflow | Runners | Typical Duration |
|---|---|---|
| test | 1 (ubuntu) | 1-5 min |
| lint | 1 (ubuntu) | 1-3 min |
| security | 1 (ubuntu) | 1-3 min |
| build | 3 (matrix) | 1-3 min each |
Versioning¶
Always pin to a major version:
# ✅ Recommended
uses: go-gamma/actions/.github/workflows/ci.yml@v1
# ⚠️ For testing only
uses: go-gamma/actions/.github/workflows/ci.yml@main
Next Steps¶
Explore individual workflows: