Skip to main content
This guide walks through configuring sdlc.yaml for your repository. LaneSync reads this file from GitHub on every stage-details request.

Before you start

  • Repo setup wizard completed (or sdlc.yaml exists at repo root)
  • You know your GitHub Actions job names (they must match required_checks exactly)
  • You have decided: trunk-based or release-branch workflow

Base structure

Stage-by-stage configuration

1

Planning

Ensures every release has a milestone and assigned owners before development.
2

Development

required_checks lists GitHub Actions check names that must pass on main. Only failures on these checks block the stage.
3

Testing

Create release/v1.0.0 after development. Gates evaluate the release branch.
4

Evidencing

teams maps to GitHub teams that can approve the evidence PR.
5

Deployment

Production promotion stays manual until you integrate automated deploy workflows.

Staging environment (hasStaging)

The repo wizard hasStaging toggle controls whether your pipeline includes a staging environment between development and production. When enabled (Dev → Staging → Prod), bootstrap generates:
  • deploy_target: staging under stages.testing
  • Staging deploy workflow templates (when you do not already have deployment workflows)
  • Additional evidencing artifacts: test-results-staging alongside sdlc-evidence
When disabled (Dev → Prod), the testing stage omits the staging deploy target and staging-specific artifacts. Required checks still run — on the release branch or development branch depending on release model.
Enable staging when QA validates releases in a pre-production environment before evidencing and production promotion.

Release model (releaseModel)

The wizard releaseModel field sets how code moves from development to testing.
Development and testing both target the development branch (usually main). There is no separate release branch to cut.In sdlc.yaml, stages.testing.branch_pattern equals the development branch name — for example main.Best for: Continuous delivery teams that ship directly from trunk.
SDLC Enforce is always required regardless of release model. Only checks listed in required_checks block a stage when they fail.

Apply changes

  1. Edit sdlc.yaml in a branch
  2. Open a PR and merge to the default branch
  3. LaneSync webhook fires → re-parses checks → updates rulesets → re-syncs milestones
After renaming a CI job, update required_checks in the same PR as the workflow change to avoid phantom BLOCKING badges.

Validate configuration

Full schema

See sdlc.yaml schema reference for every field and constraint.