ln-732-cicd-generator
Generates GitHub Actions CI workflow configuration
- License 许可
- MIT
- 最近更新
- 2026-05-02
- Stars
- ★ 3
- Forks
- 1
01 前言 Front Matter
- name
- ln-732-cicd-generator
- license
- MIT
- description
- Generates GitHub Actions CI workflow configuration
02 资源文件 3
- 参考文档references/github_ci_dotnet.template.yml1.5 KB
- 参考文档references/github_ci_python.template.yml1.7 KB
- 参考文档references/github_ci.template.yml4.7 KB
03 SKILL.md 正文
Paths: File paths (
shared/,references/,../ln-*) are relative to skills repo root. If not found at CWD, locate this SKILL.md directory and go up one level for repo root.
ln-732-cicd-generator
Type: L3 Worker Category: 7XX Project Bootstrap Parent: ln-730-devops-setup
Generates GitHub Actions CI pipeline for automated testing and validation.
Purpose & Scope
Creates CI/CD workflow for GitHub:
- Does: Generate .github/workflows/ci.yml with lint, test, build, docker jobs
- Does NOT: Configure deployment, manage secrets, set up CD pipelines
Inputs
| Input | Source | Description |
|---|---|---|
| Stack Type | ln-730 coordinator | backend-dotnet, backend-python |
| Versions | Auto-detected | Node.js, .NET or Python versions |
| Frontend Path | Auto-detected | Path to frontend directory |
| Build Commands | Auto-detected | npm scripts, dotnet/pytest commands |
Outputs
| File | Purpose | Template |
|---|---|---|
.github/workflows/ci.yml |
Main CI pipeline | github_ci_dotnet.template.yml or github_ci_python.template.yml |
Workflow
Phase 1: Stack Analysis
Determine which template to use:
| Detection | Backend Template |
|---|---|
.sln or .csproj present |
github_ci_dotnet.template.yml |
requirements.txt or pyproject.toml present |
github_ci_python.template.yml |
Detect commands:
- Frontend: Read scripts from package.json (lint, build, test)
- .NET: Standard dotnet restore/build/test
- Python: pip install, ruff lint, pytest
Phase 2: Variable Substitution
Replace template variables:
| Variable | Source | Default |
|---|---|---|
{{NODE_VERSION}} |
package.json engines | 22 |
{{DOTNET_VERSION}} |
*.csproj TargetFramework | 9.0.x |
{{PYTHON_VERSION}} |
pyproject.toml | 3.12 |
{{FRONTEND_PATH}} |
Directory detection | src/frontend |
Phase 3: Directory Creation
Create .github/workflows/ directory if not exists.
Phase 4: File Generation
Generate ci.yml from selected template:
- Check if workflow already exists (warn before overwrite)
- Apply variable substitution
- Write to
.github/workflows/ci.yml - Validate YAML syntax
Generated Pipeline Structure
Jobs Overview
| Job | Purpose | Dependencies |
|---|---|---|
| frontend | Lint, build, test React/Vite | None |
| backend | Build, test .NET or Python | None |
| docker | Build images, health checks | frontend, backend |
Frontend Job Steps
- Checkout code
- Setup Node.js with caching
- Install dependencies (
npm ci) - Run linter (
npm run lint) - Build application (
npm run build) - Run tests (
npm test)
Backend Job Steps (.NET)
- Checkout code
- Setup .NET SDK
- Restore dependencies (
dotnet restore) - Build (
dotnet build) - Run tests (
dotnet test)
Backend Job Steps (Python)
- Checkout code
- Setup Python with pip caching
- Install dependencies (
pip install -r requirements.txt) - Run linter (
ruff check) - Run tests (
pytest)
Docker Job Steps
- Checkout code
- Build images (
docker compose build) - Start containers (
docker compose up -d) - Wait for startup (30 seconds)
- Health check frontend (port 3000)
- Health check backend (port 5000/8000)
- Show logs on failure
- Stop containers (
docker compose down)
Triggers
| Event | Branches |
|---|---|
| Push | main, develop |
| Pull Request | main |
Best Practices Applied
| Practice | Implementation |
|---|---|
| Dependency caching | npm cache, pip cache |
| Pinned versions | actions/checkout@v4, setup-node@v4 |
| Parallel jobs | frontend and backend run in parallel |
| Fail fast | docker job waits for both to succeed |
| Clean up | docker compose down runs always |
| Debug support | logs shown on failure |
Quality Criteria
Generated workflow must:
- [ ] Pass YAML syntax validation
- [ ] Use pinned action versions (not
@latest) - [ ] Include dependency caching
- [ ] Have health checks for docker job
- [ ] Clean up resources on completion
Critical Notes
- GitHub Actions Only: This skill generates only GitHub Actions workflows. No Azure/GitLab support.
- Template-based: Use templates from references/. Do NOT hardcode workflow contents.
- Idempotent: Check if .github/workflows/ exists. Warn before overwriting ci.yml.
- Version Detection: Use detected versions, not hardcoded defaults.
Reference Files
| File | Purpose |
|---|---|
| github_ci.template.yml | Full template with comments |
| github_ci_dotnet.template.yml | Compact .NET stack template |
| github_ci_python.template.yml | Compact Python stack template |
Version: 1.1.0 Last Updated: 2026-01-10
04 同仓库更多 Skills
zarr-python
Chunked N-D arrays for cloud storage. Compressed arrays, parallel I/O, S3/GCS integration, NumPy/Dask/Xarray compatible, for large-scale scientific computing pipelines.
zabbix
Zabbix monitoring system automation via API and Python. Use when: (1) Managing hosts, templates, items, triggers, or host groups, (2) Automating monitoring configuration, (3) Sending data via Zabbix trapper/sender, (4) Querying historical data or events, (5) Bulk operations on Zabbix objects, (6) Maintenance window management, (7) User/permission management
x-twitter-growth
X/Twitter growth engine for building audience, crafting viral content, and analyzing engagement. Use when the user wants to grow on X/Twitter, write tweets or threads, analyze their X profile, research competitors on X, plan a posting strategy, or optimize engagement. Complements social-content (generic multi-platform) with X-specific depth: algorithm mechanics, thread engineering, reply strategy, profile optimization, and competitive intelligence via web search.
what-if-oracle
Run structured What-If scenario analysis with multi-branch possibility exploration. Use this skill when the user asks speculative questions like "what if...", "what would happen if...", "what are the possibilities", "explore scenarios", "scenario analysis", "possibility space", "what could go wrong", "best case / worst case", "risk analysis", "contingency planning", "strategic options", or any question about uncertain futures. Also trigger when the user faces a fork-in-the-road decision, wants to stress-test an idea, or needs to think through consequences before committing.
vercel-react-best-practices
React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React/Next.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.
venue-templates
Access comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.