Setup CI/CD
Generate a GitHub Actions workflow that mirrors the SDLC validation pipeline.
Arguments
python— Python project (ruff, mypy, pytest, bandit). Default if .py files detected.javascript— JS/TS project (eslint, tsc, jest/vitest).go— Go project (go vet, staticcheck, go test).
If no argument provided, detect language from project files.
Steps
Detect language if not specified:
*.pyfiles → python*.tsor*.jsfiles → javascript*.gofiles → go
Check for existing workflow:
- If
.github/workflows/sdlc-validate.ymlexists, warn and ask before overwriting.
- If
Create workflow directory:
mkdir -p .github/workflows
Generate workflow from the appropriate template:
- Python: use templates/python.yml
- JavaScript/TypeScript: use templates/javascript.yml
- Go: use templates/go.yml
- Copy the chosen template to
.github/workflows/sdlc-validate.yml
Report the created file and suggest next steps:
Created .github/workflows/sdlc-validate.yml Python workflow runs on push and PR to main: - Lint (ruff) - Format check (ruff format) - Type check (mypy) - Tests (pytest) - Security (bandit) JavaScript/TypeScript workflow runs: - Install (npm ci) - Lint (npm run lint) - Type check (tsc --noEmit if tsconfig.json present) - Tests (npm test) - Security audit (npm audit --audit-level=high) Go workflow runs: - Modules (go mod download) - Vet (go vet ./...) - Lint (staticcheck ./...) - Tests with race detector (go test -race ./...) - Security scan (gosec ./...) Commit and push to activate CI.