@waensaran/antigravity-skills 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CATALOG.md +355 -0
- package/LICENSE +21 -0
- package/README.md +264 -0
- package/SECURITY.md +15 -0
- package/aliases.json +65 -0
- package/bin/cli.js +485 -0
- package/bundles.json +265 -0
- package/catalog.json +7532 -0
- package/lib/skill-utils.js +164 -0
- package/package.json +49 -0
- package/scripts/build-catalog.js +355 -0
- package/scripts/normalize-frontmatter.js +149 -0
- package/scripts/validate-skills.js +266 -0
- package/skills/accessibility-compliance-accessibility-audit/SKILL.md +42 -0
- package/skills/accessibility-compliance-accessibility-audit/resources/implementation-playbook.md +502 -0
- package/skills/agent-orchestration-improve-agent/SKILL.md +349 -0
- package/skills/agent-orchestration-multi-agent-optimize/SKILL.md +239 -0
- package/skills/ai-engineer/SKILL.md +171 -0
- package/skills/airflow-dag-patterns/SKILL.md +41 -0
- package/skills/airflow-dag-patterns/resources/implementation-playbook.md +509 -0
- package/skills/angular-migration/SKILL.md +428 -0
- package/skills/anti-reversing-techniques/SKILL.md +42 -0
- package/skills/anti-reversing-techniques/resources/implementation-playbook.md +539 -0
- package/skills/api-design-principles/SKILL.md +37 -0
- package/skills/api-design-principles/assets/api-design-checklist.md +155 -0
- package/skills/api-design-principles/assets/rest-api-template.py +182 -0
- package/skills/api-design-principles/references/graphql-schema-design.md +583 -0
- package/skills/api-design-principles/references/rest-best-practices.md +408 -0
- package/skills/api-design-principles/resources/implementation-playbook.md +513 -0
- package/skills/api-documenter/SKILL.md +184 -0
- package/skills/api-testing-observability-api-mock/SKILL.md +46 -0
- package/skills/api-testing-observability-api-mock/resources/implementation-playbook.md +1327 -0
- package/skills/application-performance-performance-optimization/SKILL.md +154 -0
- package/skills/architect-review/SKILL.md +174 -0
- package/skills/architecture-decision-records/SKILL.md +441 -0
- package/skills/architecture-patterns/SKILL.md +37 -0
- package/skills/architecture-patterns/resources/implementation-playbook.md +479 -0
- package/skills/arm-cortex-expert/SKILL.md +306 -0
- package/skills/async-python-patterns/SKILL.md +39 -0
- package/skills/async-python-patterns/resources/implementation-playbook.md +678 -0
- package/skills/attack-tree-construction/SKILL.md +38 -0
- package/skills/attack-tree-construction/resources/implementation-playbook.md +671 -0
- package/skills/auth-implementation-patterns/SKILL.md +39 -0
- package/skills/auth-implementation-patterns/resources/implementation-playbook.md +618 -0
- package/skills/backend-architect/SKILL.md +333 -0
- package/skills/backend-development-feature-development/SKILL.md +180 -0
- package/skills/backend-security-coder/SKILL.md +156 -0
- package/skills/backtesting-frameworks/SKILL.md +39 -0
- package/skills/backtesting-frameworks/resources/implementation-playbook.md +647 -0
- package/skills/bash-defensive-patterns/SKILL.md +43 -0
- package/skills/bash-defensive-patterns/resources/implementation-playbook.md +517 -0
- package/skills/bash-pro/SKILL.md +310 -0
- package/skills/bats-testing-patterns/SKILL.md +34 -0
- package/skills/bats-testing-patterns/resources/implementation-playbook.md +614 -0
- package/skills/bazel-build-optimization/SKILL.md +397 -0
- package/skills/billing-automation/SKILL.md +42 -0
- package/skills/billing-automation/resources/implementation-playbook.md +544 -0
- package/skills/binary-analysis-patterns/SKILL.md +450 -0
- package/skills/blockchain-developer/SKILL.md +208 -0
- package/skills/business-analyst/SKILL.md +182 -0
- package/skills/c-pro/SKILL.md +56 -0
- package/skills/c4-architecture-c4-architecture/SKILL.md +389 -0
- package/skills/c4-code/SKILL.md +244 -0
- package/skills/c4-component/SKILL.md +153 -0
- package/skills/c4-container/SKILL.md +171 -0
- package/skills/c4-context/SKILL.md +150 -0
- package/skills/changelog-automation/SKILL.md +38 -0
- package/skills/changelog-automation/resources/implementation-playbook.md +538 -0
- package/skills/cicd-automation-workflow-automate/SKILL.md +51 -0
- package/skills/cicd-automation-workflow-automate/resources/implementation-playbook.md +1333 -0
- package/skills/cloud-architect/SKILL.md +135 -0
- package/skills/code-documentation-code-explain/SKILL.md +46 -0
- package/skills/code-documentation-code-explain/resources/implementation-playbook.md +802 -0
- package/skills/code-documentation-doc-generate/SKILL.md +48 -0
- package/skills/code-documentation-doc-generate/resources/implementation-playbook.md +640 -0
- package/skills/code-refactoring-context-restore/SKILL.md +179 -0
- package/skills/code-refactoring-refactor-clean/SKILL.md +51 -0
- package/skills/code-refactoring-refactor-clean/resources/implementation-playbook.md +879 -0
- package/skills/code-refactoring-tech-debt/SKILL.md +386 -0
- package/skills/code-review-ai-ai-review/SKILL.md +450 -0
- package/skills/code-review-excellence/SKILL.md +40 -0
- package/skills/code-review-excellence/resources/implementation-playbook.md +515 -0
- package/skills/code-reviewer/SKILL.md +178 -0
- package/skills/codebase-cleanup-deps-audit/SKILL.md +51 -0
- package/skills/codebase-cleanup-deps-audit/resources/implementation-playbook.md +766 -0
- package/skills/codebase-cleanup-refactor-clean/SKILL.md +51 -0
- package/skills/codebase-cleanup-refactor-clean/resources/implementation-playbook.md +879 -0
- package/skills/codebase-cleanup-tech-debt/SKILL.md +386 -0
- package/skills/competitive-landscape/SKILL.md +34 -0
- package/skills/competitive-landscape/resources/implementation-playbook.md +494 -0
- package/skills/comprehensive-review-full-review/SKILL.md +146 -0
- package/skills/comprehensive-review-pr-enhance/SKILL.md +46 -0
- package/skills/comprehensive-review-pr-enhance/resources/implementation-playbook.md +691 -0
- package/skills/conductor-implement/SKILL.md +388 -0
- package/skills/conductor-manage/SKILL.md +39 -0
- package/skills/conductor-manage/resources/implementation-playbook.md +1120 -0
- package/skills/conductor-new-track/SKILL.md +433 -0
- package/skills/conductor-revert/SKILL.md +372 -0
- package/skills/conductor-setup/SKILL.md +426 -0
- package/skills/conductor-status/SKILL.md +338 -0
- package/skills/conductor-validator/SKILL.md +62 -0
- package/skills/content-marketer/SKILL.md +170 -0
- package/skills/context-driven-development/SKILL.md +400 -0
- package/skills/context-management-context-restore/SKILL.md +179 -0
- package/skills/context-management-context-save/SKILL.md +177 -0
- package/skills/context-manager/SKILL.md +185 -0
- package/skills/cost-optimization/SKILL.md +286 -0
- package/skills/cpp-pro/SKILL.md +59 -0
- package/skills/cqrs-implementation/SKILL.md +35 -0
- package/skills/cqrs-implementation/resources/implementation-playbook.md +540 -0
- package/skills/csharp-pro/SKILL.md +59 -0
- package/skills/customer-support/SKILL.md +170 -0
- package/skills/data-engineer/SKILL.md +224 -0
- package/skills/data-engineering-data-driven-feature/SKILL.md +182 -0
- package/skills/data-engineering-data-pipeline/SKILL.md +201 -0
- package/skills/data-quality-frameworks/SKILL.md +40 -0
- package/skills/data-quality-frameworks/resources/implementation-playbook.md +573 -0
- package/skills/data-scientist/SKILL.md +199 -0
- package/skills/data-storytelling/SKILL.md +465 -0
- package/skills/database-admin/SKILL.md +165 -0
- package/skills/database-architect/SKILL.md +268 -0
- package/skills/database-cloud-optimization-cost-optimize/SKILL.md +44 -0
- package/skills/database-cloud-optimization-cost-optimize/resources/implementation-playbook.md +1441 -0
- package/skills/database-migration/SKILL.md +436 -0
- package/skills/database-migrations-migration-observability/SKILL.md +420 -0
- package/skills/database-migrations-sql-migrations/SKILL.md +53 -0
- package/skills/database-migrations-sql-migrations/resources/implementation-playbook.md +499 -0
- package/skills/database-optimizer/SKILL.md +167 -0
- package/skills/dbt-transformation-patterns/SKILL.md +34 -0
- package/skills/dbt-transformation-patterns/resources/implementation-playbook.md +547 -0
- package/skills/debugger/SKILL.md +49 -0
- package/skills/debugging-strategies/SKILL.md +34 -0
- package/skills/debugging-strategies/resources/implementation-playbook.md +511 -0
- package/skills/debugging-toolkit-smart-debug/SKILL.md +197 -0
- package/skills/defi-protocol-templates/SKILL.md +466 -0
- package/skills/dependency-management-deps-audit/SKILL.md +44 -0
- package/skills/dependency-management-deps-audit/resources/implementation-playbook.md +766 -0
- package/skills/dependency-upgrade/SKILL.md +421 -0
- package/skills/deployment-engineer/SKILL.md +170 -0
- package/skills/deployment-pipeline-design/SKILL.md +371 -0
- package/skills/deployment-validation-config-validate/SKILL.md +496 -0
- package/skills/devops-troubleshooter/SKILL.md +161 -0
- package/skills/distributed-debugging-debug-trace/SKILL.md +44 -0
- package/skills/distributed-debugging-debug-trace/resources/implementation-playbook.md +1307 -0
- package/skills/distributed-tracing/SKILL.md +450 -0
- package/skills/django-pro/SKILL.md +180 -0
- package/skills/docs-architect/SKILL.md +98 -0
- package/skills/documentation-generation-doc-generate/SKILL.md +48 -0
- package/skills/documentation-generation-doc-generate/resources/implementation-playbook.md +640 -0
- package/skills/dotnet-architect/SKILL.md +197 -0
- package/skills/dotnet-backend-patterns/SKILL.md +37 -0
- package/skills/dotnet-backend-patterns/assets/repository-template.cs +523 -0
- package/skills/dotnet-backend-patterns/assets/service-template.cs +336 -0
- package/skills/dotnet-backend-patterns/references/dapper-patterns.md +544 -0
- package/skills/dotnet-backend-patterns/references/ef-core-best-practices.md +355 -0
- package/skills/dotnet-backend-patterns/resources/implementation-playbook.md +799 -0
- package/skills/dx-optimizer/SKILL.md +83 -0
- package/skills/e2e-testing-patterns/SKILL.md +41 -0
- package/skills/e2e-testing-patterns/resources/implementation-playbook.md +531 -0
- package/skills/elixir-pro/SKILL.md +59 -0
- package/skills/embedding-strategies/SKILL.md +491 -0
- package/skills/employment-contract-templates/SKILL.md +39 -0
- package/skills/employment-contract-templates/resources/implementation-playbook.md +493 -0
- package/skills/error-debugging-error-analysis/SKILL.md +47 -0
- package/skills/error-debugging-error-analysis/resources/implementation-playbook.md +1143 -0
- package/skills/error-debugging-error-trace/SKILL.md +43 -0
- package/skills/error-debugging-error-trace/resources/implementation-playbook.md +1361 -0
- package/skills/error-debugging-multi-agent-review/SKILL.md +216 -0
- package/skills/error-detective/SKILL.md +53 -0
- package/skills/error-diagnostics-error-analysis/SKILL.md +47 -0
- package/skills/error-diagnostics-error-analysis/resources/implementation-playbook.md +1143 -0
- package/skills/error-diagnostics-error-trace/SKILL.md +48 -0
- package/skills/error-diagnostics-error-trace/resources/implementation-playbook.md +1371 -0
- package/skills/error-diagnostics-smart-debug/SKILL.md +197 -0
- package/skills/error-handling-patterns/SKILL.md +35 -0
- package/skills/error-handling-patterns/resources/implementation-playbook.md +635 -0
- package/skills/event-sourcing-architect/SKILL.md +58 -0
- package/skills/event-store-design/SKILL.md +449 -0
- package/skills/fastapi-pro/SKILL.md +192 -0
- package/skills/fastapi-templates/SKILL.md +32 -0
- package/skills/fastapi-templates/resources/implementation-playbook.md +566 -0
- package/skills/firmware-analyst/SKILL.md +320 -0
- package/skills/flutter-expert/SKILL.md +200 -0
- package/skills/framework-migration-code-migrate/SKILL.md +48 -0
- package/skills/framework-migration-code-migrate/resources/implementation-playbook.md +1052 -0
- package/skills/framework-migration-deps-upgrade/SKILL.md +48 -0
- package/skills/framework-migration-deps-upgrade/resources/implementation-playbook.md +755 -0
- package/skills/framework-migration-legacy-modernize/SKILL.md +132 -0
- package/skills/frontend-developer/SKILL.md +171 -0
- package/skills/frontend-mobile-development-component-scaffold/SKILL.md +403 -0
- package/skills/frontend-mobile-security-xss-scan/SKILL.md +322 -0
- package/skills/frontend-security-coder/SKILL.md +170 -0
- package/skills/full-stack-orchestration-full-stack-feature/SKILL.md +135 -0
- package/skills/gdpr-data-handling/SKILL.md +33 -0
- package/skills/gdpr-data-handling/resources/implementation-playbook.md +615 -0
- package/skills/git-advanced-workflows/SKILL.md +412 -0
- package/skills/git-pr-workflows-git-workflow/SKILL.md +140 -0
- package/skills/git-pr-workflows-onboard/SKILL.md +416 -0
- package/skills/git-pr-workflows-pr-enhance/SKILL.md +48 -0
- package/skills/git-pr-workflows-pr-enhance/resources/implementation-playbook.md +701 -0
- package/skills/github-actions-templates/SKILL.md +345 -0
- package/skills/gitlab-ci-patterns/SKILL.md +283 -0
- package/skills/gitops-workflow/SKILL.md +303 -0
- package/skills/gitops-workflow/references/argocd-setup.md +134 -0
- package/skills/gitops-workflow/references/sync-policies.md +131 -0
- package/skills/go-concurrency-patterns/SKILL.md +33 -0
- package/skills/go-concurrency-patterns/resources/implementation-playbook.md +654 -0
- package/skills/godot-gdscript-patterns/SKILL.md +33 -0
- package/skills/godot-gdscript-patterns/resources/implementation-playbook.md +804 -0
- package/skills/golang-pro/SKILL.md +179 -0
- package/skills/grafana-dashboards/SKILL.md +381 -0
- package/skills/graphql-architect/SKILL.md +182 -0
- package/skills/haskell-pro/SKILL.md +56 -0
- package/skills/helm-chart-scaffolding/SKILL.md +34 -0
- package/skills/helm-chart-scaffolding/assets/Chart.yaml.template +42 -0
- package/skills/helm-chart-scaffolding/assets/values.yaml.template +185 -0
- package/skills/helm-chart-scaffolding/references/chart-structure.md +500 -0
- package/skills/helm-chart-scaffolding/resources/implementation-playbook.md +543 -0
- package/skills/helm-chart-scaffolding/scripts/validate-chart.sh +244 -0
- package/skills/hr-pro/SKILL.md +126 -0
- package/skills/hybrid-cloud-architect/SKILL.md +168 -0
- package/skills/hybrid-cloud-networking/SKILL.md +238 -0
- package/skills/hybrid-search-implementation/SKILL.md +32 -0
- package/skills/hybrid-search-implementation/resources/implementation-playbook.md +567 -0
- package/skills/incident-responder/SKILL.md +213 -0
- package/skills/incident-response-incident-response/SKILL.md +168 -0
- package/skills/incident-response-smart-fix/SKILL.md +29 -0
- package/skills/incident-response-smart-fix/resources/implementation-playbook.md +838 -0
- package/skills/incident-runbook-templates/SKILL.md +395 -0
- package/skills/ios-developer/SKILL.md +219 -0
- package/skills/istio-traffic-management/SKILL.md +337 -0
- package/skills/java-pro/SKILL.md +177 -0
- package/skills/javascript-pro/SKILL.md +57 -0
- package/skills/javascript-testing-patterns/SKILL.md +35 -0
- package/skills/javascript-testing-patterns/resources/implementation-playbook.md +1024 -0
- package/skills/javascript-typescript-typescript-scaffold/SKILL.md +361 -0
- package/skills/julia-pro/SKILL.md +209 -0
- package/skills/k8s-manifest-generator/SKILL.md +35 -0
- package/skills/k8s-manifest-generator/assets/configmap-template.yaml +296 -0
- package/skills/k8s-manifest-generator/assets/deployment-template.yaml +203 -0
- package/skills/k8s-manifest-generator/assets/service-template.yaml +171 -0
- package/skills/k8s-manifest-generator/references/deployment-spec.md +753 -0
- package/skills/k8s-manifest-generator/references/service-spec.md +724 -0
- package/skills/k8s-manifest-generator/resources/implementation-playbook.md +510 -0
- package/skills/k8s-security-policies/SKILL.md +346 -0
- package/skills/k8s-security-policies/assets/network-policy-template.yaml +177 -0
- package/skills/k8s-security-policies/references/rbac-patterns.md +187 -0
- package/skills/kpi-dashboard-design/SKILL.md +440 -0
- package/skills/kubernetes-architect/SKILL.md +170 -0
- package/skills/langchain-architecture/SKILL.md +350 -0
- package/skills/legacy-modernizer/SKILL.md +53 -0
- package/skills/legal-advisor/SKILL.md +70 -0
- package/skills/linkerd-patterns/SKILL.md +321 -0
- package/skills/llm-application-dev-ai-assistant/SKILL.md +35 -0
- package/skills/llm-application-dev-ai-assistant/resources/implementation-playbook.md +1236 -0
- package/skills/llm-application-dev-langchain-agent/SKILL.md +246 -0
- package/skills/llm-application-dev-prompt-optimize/SKILL.md +37 -0
- package/skills/llm-application-dev-prompt-optimize/resources/implementation-playbook.md +591 -0
- package/skills/llm-evaluation/SKILL.md +483 -0
- package/skills/machine-learning-ops-ml-pipeline/SKILL.md +314 -0
- package/skills/malware-analyst/SKILL.md +247 -0
- package/skills/market-sizing-analysis/SKILL.md +425 -0
- package/skills/market-sizing-analysis/examples/saas-market-sizing.md +349 -0
- package/skills/market-sizing-analysis/references/data-sources.md +360 -0
- package/skills/memory-forensics/SKILL.md +491 -0
- package/skills/memory-safety-patterns/SKILL.md +33 -0
- package/skills/memory-safety-patterns/resources/implementation-playbook.md +603 -0
- package/skills/mermaid-expert/SKILL.md +59 -0
- package/skills/microservices-patterns/SKILL.md +35 -0
- package/skills/microservices-patterns/resources/implementation-playbook.md +607 -0
- package/skills/minecraft-bukkit-pro/SKILL.md +126 -0
- package/skills/ml-engineer/SKILL.md +168 -0
- package/skills/ml-pipeline-workflow/SKILL.md +257 -0
- package/skills/mlops-engineer/SKILL.md +219 -0
- package/skills/mobile-developer/SKILL.md +205 -0
- package/skills/mobile-security-coder/SKILL.md +184 -0
- package/skills/modern-javascript-patterns/SKILL.md +35 -0
- package/skills/modern-javascript-patterns/resources/implementation-playbook.md +910 -0
- package/skills/monorepo-architect/SKILL.md +61 -0
- package/skills/monorepo-management/SKILL.md +35 -0
- package/skills/monorepo-management/resources/implementation-playbook.md +621 -0
- package/skills/mtls-configuration/SKILL.md +359 -0
- package/skills/multi-cloud-architecture/SKILL.md +189 -0
- package/skills/multi-platform-apps-multi-platform/SKILL.md +203 -0
- package/skills/network-engineer/SKILL.md +169 -0
- package/skills/nextjs-app-router-patterns/SKILL.md +33 -0
- package/skills/nextjs-app-router-patterns/resources/implementation-playbook.md +543 -0
- package/skills/nft-standards/SKILL.md +395 -0
- package/skills/nodejs-backend-patterns/SKILL.md +35 -0
- package/skills/nodejs-backend-patterns/resources/implementation-playbook.md +1019 -0
- package/skills/nx-workspace-patterns/SKILL.md +464 -0
- package/skills/observability-engineer/SKILL.md +237 -0
- package/skills/observability-monitoring-monitor-setup/SKILL.md +48 -0
- package/skills/observability-monitoring-monitor-setup/resources/implementation-playbook.md +505 -0
- package/skills/observability-monitoring-slo-implement/SKILL.md +43 -0
- package/skills/observability-monitoring-slo-implement/resources/implementation-playbook.md +1077 -0
- package/skills/on-call-handoff-patterns/SKILL.md +453 -0
- package/skills/openapi-spec-generation/SKILL.md +33 -0
- package/skills/openapi-spec-generation/resources/implementation-playbook.md +1027 -0
- package/skills/payment-integration/SKILL.md +77 -0
- package/skills/paypal-integration/SKILL.md +479 -0
- package/skills/pci-compliance/SKILL.md +478 -0
- package/skills/performance-engineer/SKILL.md +180 -0
- package/skills/performance-testing-review-ai-review/SKILL.md +450 -0
- package/skills/performance-testing-review-multi-agent-review/SKILL.md +216 -0
- package/skills/php-pro/SKILL.md +63 -0
- package/skills/posix-shell-pro/SKILL.md +304 -0
- package/skills/postgresql/SKILL.md +230 -0
- package/skills/postmortem-writing/SKILL.md +386 -0
- package/skills/projection-patterns/SKILL.md +33 -0
- package/skills/projection-patterns/resources/implementation-playbook.md +501 -0
- package/skills/prometheus-configuration/SKILL.md +404 -0
- package/skills/prompt-engineer/SKILL.md +272 -0
- package/skills/prompt-engineering-patterns/SKILL.md +213 -0
- package/skills/prompt-engineering-patterns/assets/few-shot-examples.json +106 -0
- package/skills/prompt-engineering-patterns/assets/prompt-template-library.md +246 -0
- package/skills/prompt-engineering-patterns/references/chain-of-thought.md +399 -0
- package/skills/prompt-engineering-patterns/references/few-shot-learning.md +369 -0
- package/skills/prompt-engineering-patterns/references/prompt-optimization.md +414 -0
- package/skills/prompt-engineering-patterns/references/prompt-templates.md +470 -0
- package/skills/prompt-engineering-patterns/references/system-prompts.md +189 -0
- package/skills/prompt-engineering-patterns/scripts/optimize-prompt.py +279 -0
- package/skills/protocol-reverse-engineering/SKILL.md +29 -0
- package/skills/protocol-reverse-engineering/resources/implementation-playbook.md +509 -0
- package/skills/python-development-python-scaffold/SKILL.md +331 -0
- package/skills/python-packaging/SKILL.md +36 -0
- package/skills/python-packaging/resources/implementation-playbook.md +869 -0
- package/skills/python-performance-optimization/SKILL.md +36 -0
- package/skills/python-performance-optimization/resources/implementation-playbook.md +868 -0
- package/skills/python-pro/SKILL.md +158 -0
- package/skills/python-testing-patterns/SKILL.md +37 -0
- package/skills/python-testing-patterns/resources/implementation-playbook.md +906 -0
- package/skills/quant-analyst/SKILL.md +53 -0
- package/skills/rag-implementation/SKILL.md +421 -0
- package/skills/react-modernization/SKILL.md +34 -0
- package/skills/react-modernization/resources/implementation-playbook.md +512 -0
- package/skills/react-native-architecture/SKILL.md +33 -0
- package/skills/react-native-architecture/resources/implementation-playbook.md +670 -0
- package/skills/react-state-management/SKILL.md +441 -0
- package/skills/reference-builder/SKILL.md +188 -0
- package/skills/reverse-engineer/SKILL.md +173 -0
- package/skills/risk-manager/SKILL.md +61 -0
- package/skills/risk-metrics-calculation/SKILL.md +33 -0
- package/skills/risk-metrics-calculation/resources/implementation-playbook.md +554 -0
- package/skills/ruby-pro/SKILL.md +56 -0
- package/skills/rust-async-patterns/SKILL.md +33 -0
- package/skills/rust-async-patterns/resources/implementation-playbook.md +516 -0
- package/skills/rust-pro/SKILL.md +178 -0
- package/skills/saga-orchestration/SKILL.md +496 -0
- package/skills/sales-automator/SKILL.md +55 -0
- package/skills/sast-configuration/SKILL.md +212 -0
- package/skills/scala-pro/SKILL.md +82 -0
- package/skills/screen-reader-testing/SKILL.md +33 -0
- package/skills/screen-reader-testing/resources/implementation-playbook.md +544 -0
- package/skills/search-specialist/SKILL.md +80 -0
- package/skills/secrets-management/SKILL.md +364 -0
- package/skills/security-auditor/SKILL.md +169 -0
- package/skills/security-compliance-compliance-check/SKILL.md +55 -0
- package/skills/security-compliance-compliance-check/resources/implementation-playbook.md +963 -0
- package/skills/security-requirement-extraction/SKILL.md +33 -0
- package/skills/security-requirement-extraction/resources/implementation-playbook.md +676 -0
- package/skills/security-scanning-security-dependencies/SKILL.md +43 -0
- package/skills/security-scanning-security-dependencies/resources/implementation-playbook.md +544 -0
- package/skills/security-scanning-security-hardening/SKILL.md +147 -0
- package/skills/security-scanning-security-sast/SKILL.md +495 -0
- package/skills/seo-authority-builder/SKILL.md +136 -0
- package/skills/seo-cannibalization-detector/SKILL.md +123 -0
- package/skills/seo-content-auditor/SKILL.md +83 -0
- package/skills/seo-content-planner/SKILL.md +108 -0
- package/skills/seo-content-refresher/SKILL.md +118 -0
- package/skills/seo-content-writer/SKILL.md +96 -0
- package/skills/seo-keyword-strategist/SKILL.md +95 -0
- package/skills/seo-meta-optimizer/SKILL.md +92 -0
- package/skills/seo-snippet-hunter/SKILL.md +114 -0
- package/skills/seo-structure-architect/SKILL.md +108 -0
- package/skills/service-mesh-expert/SKILL.md +58 -0
- package/skills/service-mesh-observability/SKILL.md +395 -0
- package/skills/shellcheck-configuration/SKILL.md +466 -0
- package/skills/similarity-search-patterns/SKILL.md +33 -0
- package/skills/similarity-search-patterns/resources/implementation-playbook.md +557 -0
- package/skills/slo-implementation/SKILL.md +341 -0
- package/skills/solidity-security/SKILL.md +34 -0
- package/skills/solidity-security/resources/implementation-playbook.md +524 -0
- package/skills/spark-optimization/SKILL.md +427 -0
- package/skills/sql-optimization-patterns/SKILL.md +35 -0
- package/skills/sql-optimization-patterns/resources/implementation-playbook.md +504 -0
- package/skills/sql-pro/SKILL.md +173 -0
- package/skills/startup-analyst/SKILL.md +328 -0
- package/skills/startup-business-analyst-business-case/SKILL.md +487 -0
- package/skills/startup-business-analyst-financial-projections/SKILL.md +353 -0
- package/skills/startup-business-analyst-market-opportunity/SKILL.md +240 -0
- package/skills/startup-financial-modeling/SKILL.md +467 -0
- package/skills/startup-metrics-framework/SKILL.md +34 -0
- package/skills/startup-metrics-framework/resources/implementation-playbook.md +500 -0
- package/skills/stride-analysis-patterns/SKILL.md +33 -0
- package/skills/stride-analysis-patterns/resources/implementation-playbook.md +655 -0
- package/skills/stripe-integration/SKILL.md +454 -0
- package/skills/systems-programming-rust-project/SKILL.md +440 -0
- package/skills/tailwind-design-system/SKILL.md +33 -0
- package/skills/tailwind-design-system/resources/implementation-playbook.md +665 -0
- package/skills/tdd-orchestrator/SKILL.md +205 -0
- package/skills/tdd-workflows-tdd-cycle/SKILL.md +221 -0
- package/skills/tdd-workflows-tdd-green/SKILL.md +73 -0
- package/skills/tdd-workflows-tdd-green/resources/implementation-playbook.md +870 -0
- package/skills/tdd-workflows-tdd-red/SKILL.md +164 -0
- package/skills/tdd-workflows-tdd-refactor/SKILL.md +187 -0
- package/skills/team-collaboration-issue/SKILL.md +37 -0
- package/skills/team-collaboration-issue/resources/implementation-playbook.md +640 -0
- package/skills/team-collaboration-standup-notes/SKILL.md +44 -0
- package/skills/team-collaboration-standup-notes/resources/implementation-playbook.md +768 -0
- package/skills/team-composition-analysis/SKILL.md +413 -0
- package/skills/temporal-python-pro/SKILL.md +370 -0
- package/skills/temporal-python-testing/SKILL.md +170 -0
- package/skills/temporal-python-testing/resources/integration-testing.md +455 -0
- package/skills/temporal-python-testing/resources/local-setup.md +553 -0
- package/skills/temporal-python-testing/resources/replay-testing.md +462 -0
- package/skills/temporal-python-testing/resources/unit-testing.md +328 -0
- package/skills/terraform-module-library/SKILL.md +261 -0
- package/skills/terraform-module-library/references/aws-modules.md +63 -0
- package/skills/terraform-specialist/SKILL.md +166 -0
- package/skills/test-automator/SKILL.md +224 -0
- package/skills/threat-mitigation-mapping/SKILL.md +33 -0
- package/skills/threat-mitigation-mapping/resources/implementation-playbook.md +744 -0
- package/skills/threat-modeling-expert/SKILL.md +60 -0
- package/skills/track-management/SKILL.md +38 -0
- package/skills/track-management/resources/implementation-playbook.md +591 -0
- package/skills/turborepo-caching/SKILL.md +419 -0
- package/skills/tutorial-engineer/SKILL.md +139 -0
- package/skills/typescript-advanced-types/SKILL.md +35 -0
- package/skills/typescript-advanced-types/resources/implementation-playbook.md +716 -0
- package/skills/typescript-pro/SKILL.md +55 -0
- package/skills/ui-ux-designer/SKILL.md +209 -0
- package/skills/ui-visual-validator/SKILL.md +214 -0
- package/skills/unit-testing-test-generate/SKILL.md +319 -0
- package/skills/unity-developer/SKILL.md +230 -0
- package/skills/unity-ecs-patterns/SKILL.md +33 -0
- package/skills/unity-ecs-patterns/resources/implementation-playbook.md +625 -0
- package/skills/uv-package-manager/SKILL.md +37 -0
- package/skills/uv-package-manager/resources/implementation-playbook.md +830 -0
- package/skills/vector-database-engineer/SKILL.md +60 -0
- package/skills/vector-index-tuning/SKILL.md +42 -0
- package/skills/vector-index-tuning/resources/implementation-playbook.md +507 -0
- package/skills/wcag-audit-patterns/SKILL.md +41 -0
- package/skills/wcag-audit-patterns/resources/implementation-playbook.md +541 -0
- package/skills/web3-testing/SKILL.md +427 -0
- package/skills/workflow-orchestration-patterns/SKILL.md +333 -0
- package/skills/workflow-patterns/SKILL.md +38 -0
- package/skills/workflow-patterns/resources/implementation-playbook.md +621 -0
- package/validation-baseline.json +7 -0
|
@@ -0,0 +1,345 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: github-actions-templates
|
|
3
|
+
description: Create production-ready GitHub Actions workflows for automated testing, building, and deploying applications. Use when setting up CI/CD with GitHub Actions, automating development workflows, or creating reusable workflow templates.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# GitHub Actions Templates
|
|
7
|
+
|
|
8
|
+
Production-ready GitHub Actions workflow patterns for testing, building, and deploying applications.
|
|
9
|
+
|
|
10
|
+
## Do not use this skill when
|
|
11
|
+
|
|
12
|
+
- The task is unrelated to github actions templates
|
|
13
|
+
- You need a different domain or tool outside this scope
|
|
14
|
+
|
|
15
|
+
## Instructions
|
|
16
|
+
|
|
17
|
+
- Clarify goals, constraints, and required inputs.
|
|
18
|
+
- Apply relevant best practices and validate outcomes.
|
|
19
|
+
- Provide actionable steps and verification.
|
|
20
|
+
- If detailed examples are required, open `resources/implementation-playbook.md`.
|
|
21
|
+
|
|
22
|
+
## Purpose
|
|
23
|
+
|
|
24
|
+
Create efficient, secure GitHub Actions workflows for continuous integration and deployment across various tech stacks.
|
|
25
|
+
|
|
26
|
+
## Use this skill when
|
|
27
|
+
|
|
28
|
+
- Automate testing and deployment
|
|
29
|
+
- Build Docker images and push to registries
|
|
30
|
+
- Deploy to Kubernetes clusters
|
|
31
|
+
- Run security scans
|
|
32
|
+
- Implement matrix builds for multiple environments
|
|
33
|
+
|
|
34
|
+
## Common Workflow Patterns
|
|
35
|
+
|
|
36
|
+
### Pattern 1: Test Workflow
|
|
37
|
+
|
|
38
|
+
```yaml
|
|
39
|
+
name: Test
|
|
40
|
+
|
|
41
|
+
on:
|
|
42
|
+
push:
|
|
43
|
+
branches: [ main, develop ]
|
|
44
|
+
pull_request:
|
|
45
|
+
branches: [ main ]
|
|
46
|
+
|
|
47
|
+
jobs:
|
|
48
|
+
test:
|
|
49
|
+
runs-on: ubuntu-latest
|
|
50
|
+
|
|
51
|
+
strategy:
|
|
52
|
+
matrix:
|
|
53
|
+
node-version: [18.x, 20.x]
|
|
54
|
+
|
|
55
|
+
steps:
|
|
56
|
+
- uses: actions/checkout@v4
|
|
57
|
+
|
|
58
|
+
- name: Use Node.js ${{ matrix.node-version }}
|
|
59
|
+
uses: actions/setup-node@v4
|
|
60
|
+
with:
|
|
61
|
+
node-version: ${{ matrix.node-version }}
|
|
62
|
+
cache: 'npm'
|
|
63
|
+
|
|
64
|
+
- name: Install dependencies
|
|
65
|
+
run: npm ci
|
|
66
|
+
|
|
67
|
+
- name: Run linter
|
|
68
|
+
run: npm run lint
|
|
69
|
+
|
|
70
|
+
- name: Run tests
|
|
71
|
+
run: npm test
|
|
72
|
+
|
|
73
|
+
- name: Upload coverage
|
|
74
|
+
uses: codecov/codecov-action@v3
|
|
75
|
+
with:
|
|
76
|
+
files: ./coverage/lcov.info
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
**Reference:** See `assets/test-workflow.yml`
|
|
80
|
+
|
|
81
|
+
### Pattern 2: Build and Push Docker Image
|
|
82
|
+
|
|
83
|
+
```yaml
|
|
84
|
+
name: Build and Push
|
|
85
|
+
|
|
86
|
+
on:
|
|
87
|
+
push:
|
|
88
|
+
branches: [ main ]
|
|
89
|
+
tags: [ 'v*' ]
|
|
90
|
+
|
|
91
|
+
env:
|
|
92
|
+
REGISTRY: ghcr.io
|
|
93
|
+
IMAGE_NAME: ${{ github.repository }}
|
|
94
|
+
|
|
95
|
+
jobs:
|
|
96
|
+
build:
|
|
97
|
+
runs-on: ubuntu-latest
|
|
98
|
+
permissions:
|
|
99
|
+
contents: read
|
|
100
|
+
packages: write
|
|
101
|
+
|
|
102
|
+
steps:
|
|
103
|
+
- uses: actions/checkout@v4
|
|
104
|
+
|
|
105
|
+
- name: Log in to Container Registry
|
|
106
|
+
uses: docker/login-action@v3
|
|
107
|
+
with:
|
|
108
|
+
registry: ${{ env.REGISTRY }}
|
|
109
|
+
username: ${{ github.actor }}
|
|
110
|
+
password: ${{ secrets.GITHUB_TOKEN }}
|
|
111
|
+
|
|
112
|
+
- name: Extract metadata
|
|
113
|
+
id: meta
|
|
114
|
+
uses: docker/metadata-action@v5
|
|
115
|
+
with:
|
|
116
|
+
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
|
|
117
|
+
tags: |
|
|
118
|
+
type=ref,event=branch
|
|
119
|
+
type=ref,event=pr
|
|
120
|
+
type=semver,pattern={{version}}
|
|
121
|
+
type=semver,pattern={{major}}.{{minor}}
|
|
122
|
+
|
|
123
|
+
- name: Build and push
|
|
124
|
+
uses: docker/build-push-action@v5
|
|
125
|
+
with:
|
|
126
|
+
context: .
|
|
127
|
+
push: true
|
|
128
|
+
tags: ${{ steps.meta.outputs.tags }}
|
|
129
|
+
labels: ${{ steps.meta.outputs.labels }}
|
|
130
|
+
cache-from: type=gha
|
|
131
|
+
cache-to: type=gha,mode=max
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
**Reference:** See `assets/deploy-workflow.yml`
|
|
135
|
+
|
|
136
|
+
### Pattern 3: Deploy to Kubernetes
|
|
137
|
+
|
|
138
|
+
```yaml
|
|
139
|
+
name: Deploy to Kubernetes
|
|
140
|
+
|
|
141
|
+
on:
|
|
142
|
+
push:
|
|
143
|
+
branches: [ main ]
|
|
144
|
+
|
|
145
|
+
jobs:
|
|
146
|
+
deploy:
|
|
147
|
+
runs-on: ubuntu-latest
|
|
148
|
+
|
|
149
|
+
steps:
|
|
150
|
+
- uses: actions/checkout@v4
|
|
151
|
+
|
|
152
|
+
- name: Configure AWS credentials
|
|
153
|
+
uses: aws-actions/configure-aws-credentials@v4
|
|
154
|
+
with:
|
|
155
|
+
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
|
156
|
+
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
|
157
|
+
aws-region: us-west-2
|
|
158
|
+
|
|
159
|
+
- name: Update kubeconfig
|
|
160
|
+
run: |
|
|
161
|
+
aws eks update-kubeconfig --name production-cluster --region us-west-2
|
|
162
|
+
|
|
163
|
+
- name: Deploy to Kubernetes
|
|
164
|
+
run: |
|
|
165
|
+
kubectl apply -f k8s/
|
|
166
|
+
kubectl rollout status deployment/my-app -n production
|
|
167
|
+
kubectl get services -n production
|
|
168
|
+
|
|
169
|
+
- name: Verify deployment
|
|
170
|
+
run: |
|
|
171
|
+
kubectl get pods -n production
|
|
172
|
+
kubectl describe deployment my-app -n production
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
### Pattern 4: Matrix Build
|
|
176
|
+
|
|
177
|
+
```yaml
|
|
178
|
+
name: Matrix Build
|
|
179
|
+
|
|
180
|
+
on: [push, pull_request]
|
|
181
|
+
|
|
182
|
+
jobs:
|
|
183
|
+
build:
|
|
184
|
+
runs-on: ${{ matrix.os }}
|
|
185
|
+
|
|
186
|
+
strategy:
|
|
187
|
+
matrix:
|
|
188
|
+
os: [ubuntu-latest, macos-latest, windows-latest]
|
|
189
|
+
python-version: ['3.9', '3.10', '3.11', '3.12']
|
|
190
|
+
|
|
191
|
+
steps:
|
|
192
|
+
- uses: actions/checkout@v4
|
|
193
|
+
|
|
194
|
+
- name: Set up Python
|
|
195
|
+
uses: actions/setup-python@v5
|
|
196
|
+
with:
|
|
197
|
+
python-version: ${{ matrix.python-version }}
|
|
198
|
+
|
|
199
|
+
- name: Install dependencies
|
|
200
|
+
run: |
|
|
201
|
+
python -m pip install --upgrade pip
|
|
202
|
+
pip install -r requirements.txt
|
|
203
|
+
|
|
204
|
+
- name: Run tests
|
|
205
|
+
run: pytest
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
**Reference:** See `assets/matrix-build.yml`
|
|
209
|
+
|
|
210
|
+
## Workflow Best Practices
|
|
211
|
+
|
|
212
|
+
1. **Use specific action versions** (@v4, not @latest)
|
|
213
|
+
2. **Cache dependencies** to speed up builds
|
|
214
|
+
3. **Use secrets** for sensitive data
|
|
215
|
+
4. **Implement status checks** on PRs
|
|
216
|
+
5. **Use matrix builds** for multi-version testing
|
|
217
|
+
6. **Set appropriate permissions**
|
|
218
|
+
7. **Use reusable workflows** for common patterns
|
|
219
|
+
8. **Implement approval gates** for production
|
|
220
|
+
9. **Add notification steps** for failures
|
|
221
|
+
10. **Use self-hosted runners** for sensitive workloads
|
|
222
|
+
|
|
223
|
+
## Reusable Workflows
|
|
224
|
+
|
|
225
|
+
```yaml
|
|
226
|
+
# .github/workflows/reusable-test.yml
|
|
227
|
+
name: Reusable Test Workflow
|
|
228
|
+
|
|
229
|
+
on:
|
|
230
|
+
workflow_call:
|
|
231
|
+
inputs:
|
|
232
|
+
node-version:
|
|
233
|
+
required: true
|
|
234
|
+
type: string
|
|
235
|
+
secrets:
|
|
236
|
+
NPM_TOKEN:
|
|
237
|
+
required: true
|
|
238
|
+
|
|
239
|
+
jobs:
|
|
240
|
+
test:
|
|
241
|
+
runs-on: ubuntu-latest
|
|
242
|
+
steps:
|
|
243
|
+
- uses: actions/checkout@v4
|
|
244
|
+
- uses: actions/setup-node@v4
|
|
245
|
+
with:
|
|
246
|
+
node-version: ${{ inputs.node-version }}
|
|
247
|
+
- run: npm ci
|
|
248
|
+
- run: npm test
|
|
249
|
+
```
|
|
250
|
+
|
|
251
|
+
**Use reusable workflow:**
|
|
252
|
+
```yaml
|
|
253
|
+
jobs:
|
|
254
|
+
call-test:
|
|
255
|
+
uses: ./.github/workflows/reusable-test.yml
|
|
256
|
+
with:
|
|
257
|
+
node-version: '20.x'
|
|
258
|
+
secrets:
|
|
259
|
+
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
|
|
260
|
+
```
|
|
261
|
+
|
|
262
|
+
## Security Scanning
|
|
263
|
+
|
|
264
|
+
```yaml
|
|
265
|
+
name: Security Scan
|
|
266
|
+
|
|
267
|
+
on:
|
|
268
|
+
push:
|
|
269
|
+
branches: [ main ]
|
|
270
|
+
pull_request:
|
|
271
|
+
branches: [ main ]
|
|
272
|
+
|
|
273
|
+
jobs:
|
|
274
|
+
security:
|
|
275
|
+
runs-on: ubuntu-latest
|
|
276
|
+
|
|
277
|
+
steps:
|
|
278
|
+
- uses: actions/checkout@v4
|
|
279
|
+
|
|
280
|
+
- name: Run Trivy vulnerability scanner
|
|
281
|
+
uses: aquasecurity/trivy-action@master
|
|
282
|
+
with:
|
|
283
|
+
scan-type: 'fs'
|
|
284
|
+
scan-ref: '.'
|
|
285
|
+
format: 'sarif'
|
|
286
|
+
output: 'trivy-results.sarif'
|
|
287
|
+
|
|
288
|
+
- name: Upload Trivy results to GitHub Security
|
|
289
|
+
uses: github/codeql-action/upload-sarif@v2
|
|
290
|
+
with:
|
|
291
|
+
sarif_file: 'trivy-results.sarif'
|
|
292
|
+
|
|
293
|
+
- name: Run Snyk Security Scan
|
|
294
|
+
uses: snyk/actions/node@master
|
|
295
|
+
env:
|
|
296
|
+
SNYK_TOKEN: ${{ secrets.SNYK_TOKEN }}
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
## Deployment with Approvals
|
|
300
|
+
|
|
301
|
+
```yaml
|
|
302
|
+
name: Deploy to Production
|
|
303
|
+
|
|
304
|
+
on:
|
|
305
|
+
push:
|
|
306
|
+
tags: [ 'v*' ]
|
|
307
|
+
|
|
308
|
+
jobs:
|
|
309
|
+
deploy:
|
|
310
|
+
runs-on: ubuntu-latest
|
|
311
|
+
environment:
|
|
312
|
+
name: production
|
|
313
|
+
url: https://app.example.com
|
|
314
|
+
|
|
315
|
+
steps:
|
|
316
|
+
- uses: actions/checkout@v4
|
|
317
|
+
|
|
318
|
+
- name: Deploy application
|
|
319
|
+
run: |
|
|
320
|
+
echo "Deploying to production..."
|
|
321
|
+
# Deployment commands here
|
|
322
|
+
|
|
323
|
+
- name: Notify Slack
|
|
324
|
+
if: success()
|
|
325
|
+
uses: slackapi/slack-github-action@v1
|
|
326
|
+
with:
|
|
327
|
+
webhook-url: ${{ secrets.SLACK_WEBHOOK }}
|
|
328
|
+
payload: |
|
|
329
|
+
{
|
|
330
|
+
"text": "Deployment to production completed successfully!"
|
|
331
|
+
}
|
|
332
|
+
```
|
|
333
|
+
|
|
334
|
+
## Reference Files
|
|
335
|
+
|
|
336
|
+
- `assets/test-workflow.yml` - Testing workflow template
|
|
337
|
+
- `assets/deploy-workflow.yml` - Deployment workflow template
|
|
338
|
+
- `assets/matrix-build.yml` - Matrix build template
|
|
339
|
+
- `references/common-workflows.md` - Common workflow patterns
|
|
340
|
+
|
|
341
|
+
## Related Skills
|
|
342
|
+
|
|
343
|
+
- `gitlab-ci-patterns` - For GitLab CI workflows
|
|
344
|
+
- `deployment-pipeline-design` - For pipeline architecture
|
|
345
|
+
- `secrets-management` - For secrets handling
|
|
@@ -0,0 +1,283 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gitlab-ci-patterns
|
|
3
|
+
description: Build GitLab CI/CD pipelines with multi-stage workflows, caching, and distributed runners for scalable automation. Use when implementing GitLab CI/CD, optimizing pipeline performance, or setting up automated testing and deployment.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# GitLab CI Patterns
|
|
7
|
+
|
|
8
|
+
Comprehensive GitLab CI/CD pipeline patterns for automated testing, building, and deployment.
|
|
9
|
+
|
|
10
|
+
## Do not use this skill when
|
|
11
|
+
|
|
12
|
+
- The task is unrelated to gitlab ci patterns
|
|
13
|
+
- You need a different domain or tool outside this scope
|
|
14
|
+
|
|
15
|
+
## Instructions
|
|
16
|
+
|
|
17
|
+
- Clarify goals, constraints, and required inputs.
|
|
18
|
+
- Apply relevant best practices and validate outcomes.
|
|
19
|
+
- Provide actionable steps and verification.
|
|
20
|
+
- If detailed examples are required, open `resources/implementation-playbook.md`.
|
|
21
|
+
|
|
22
|
+
## Purpose
|
|
23
|
+
|
|
24
|
+
Create efficient GitLab CI pipelines with proper stage organization, caching, and deployment strategies.
|
|
25
|
+
|
|
26
|
+
## Use this skill when
|
|
27
|
+
|
|
28
|
+
- Automate GitLab-based CI/CD
|
|
29
|
+
- Implement multi-stage pipelines
|
|
30
|
+
- Configure GitLab Runners
|
|
31
|
+
- Deploy to Kubernetes from GitLab
|
|
32
|
+
- Implement GitOps workflows
|
|
33
|
+
|
|
34
|
+
## Basic Pipeline Structure
|
|
35
|
+
|
|
36
|
+
```yaml
|
|
37
|
+
stages:
|
|
38
|
+
- build
|
|
39
|
+
- test
|
|
40
|
+
- deploy
|
|
41
|
+
|
|
42
|
+
variables:
|
|
43
|
+
DOCKER_DRIVER: overlay2
|
|
44
|
+
DOCKER_TLS_CERTDIR: "/certs"
|
|
45
|
+
|
|
46
|
+
build:
|
|
47
|
+
stage: build
|
|
48
|
+
image: node:20
|
|
49
|
+
script:
|
|
50
|
+
- npm ci
|
|
51
|
+
- npm run build
|
|
52
|
+
artifacts:
|
|
53
|
+
paths:
|
|
54
|
+
- dist/
|
|
55
|
+
expire_in: 1 hour
|
|
56
|
+
cache:
|
|
57
|
+
key: ${CI_COMMIT_REF_SLUG}
|
|
58
|
+
paths:
|
|
59
|
+
- node_modules/
|
|
60
|
+
|
|
61
|
+
test:
|
|
62
|
+
stage: test
|
|
63
|
+
image: node:20
|
|
64
|
+
script:
|
|
65
|
+
- npm ci
|
|
66
|
+
- npm run lint
|
|
67
|
+
- npm test
|
|
68
|
+
coverage: '/Lines\s*:\s*(\d+\.\d+)%/'
|
|
69
|
+
artifacts:
|
|
70
|
+
reports:
|
|
71
|
+
coverage_report:
|
|
72
|
+
coverage_format: cobertura
|
|
73
|
+
path: coverage/cobertura-coverage.xml
|
|
74
|
+
|
|
75
|
+
deploy:
|
|
76
|
+
stage: deploy
|
|
77
|
+
image: bitnami/kubectl:latest
|
|
78
|
+
script:
|
|
79
|
+
- kubectl apply -f k8s/
|
|
80
|
+
- kubectl rollout status deployment/my-app
|
|
81
|
+
only:
|
|
82
|
+
- main
|
|
83
|
+
environment:
|
|
84
|
+
name: production
|
|
85
|
+
url: https://app.example.com
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
## Docker Build and Push
|
|
89
|
+
|
|
90
|
+
```yaml
|
|
91
|
+
build-docker:
|
|
92
|
+
stage: build
|
|
93
|
+
image: docker:24
|
|
94
|
+
services:
|
|
95
|
+
- docker:24-dind
|
|
96
|
+
before_script:
|
|
97
|
+
- docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
|
|
98
|
+
script:
|
|
99
|
+
- docker build -t $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA .
|
|
100
|
+
- docker build -t $CI_REGISTRY_IMAGE:latest .
|
|
101
|
+
- docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA
|
|
102
|
+
- docker push $CI_REGISTRY_IMAGE:latest
|
|
103
|
+
only:
|
|
104
|
+
- main
|
|
105
|
+
- tags
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
## Multi-Environment Deployment
|
|
109
|
+
|
|
110
|
+
```yaml
|
|
111
|
+
.deploy_template: &deploy_template
|
|
112
|
+
image: bitnami/kubectl:latest
|
|
113
|
+
before_script:
|
|
114
|
+
- kubectl config set-cluster k8s --server="$KUBE_URL" --insecure-skip-tls-verify=true
|
|
115
|
+
- kubectl config set-credentials admin --token="$KUBE_TOKEN"
|
|
116
|
+
- kubectl config set-context default --cluster=k8s --user=admin
|
|
117
|
+
- kubectl config use-context default
|
|
118
|
+
|
|
119
|
+
deploy:staging:
|
|
120
|
+
<<: *deploy_template
|
|
121
|
+
stage: deploy
|
|
122
|
+
script:
|
|
123
|
+
- kubectl apply -f k8s/ -n staging
|
|
124
|
+
- kubectl rollout status deployment/my-app -n staging
|
|
125
|
+
environment:
|
|
126
|
+
name: staging
|
|
127
|
+
url: https://staging.example.com
|
|
128
|
+
only:
|
|
129
|
+
- develop
|
|
130
|
+
|
|
131
|
+
deploy:production:
|
|
132
|
+
<<: *deploy_template
|
|
133
|
+
stage: deploy
|
|
134
|
+
script:
|
|
135
|
+
- kubectl apply -f k8s/ -n production
|
|
136
|
+
- kubectl rollout status deployment/my-app -n production
|
|
137
|
+
environment:
|
|
138
|
+
name: production
|
|
139
|
+
url: https://app.example.com
|
|
140
|
+
when: manual
|
|
141
|
+
only:
|
|
142
|
+
- main
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
## Terraform Pipeline
|
|
146
|
+
|
|
147
|
+
```yaml
|
|
148
|
+
stages:
|
|
149
|
+
- validate
|
|
150
|
+
- plan
|
|
151
|
+
- apply
|
|
152
|
+
|
|
153
|
+
variables:
|
|
154
|
+
TF_ROOT: ${CI_PROJECT_DIR}/terraform
|
|
155
|
+
TF_VERSION: "1.6.0"
|
|
156
|
+
|
|
157
|
+
before_script:
|
|
158
|
+
- cd ${TF_ROOT}
|
|
159
|
+
- terraform --version
|
|
160
|
+
|
|
161
|
+
validate:
|
|
162
|
+
stage: validate
|
|
163
|
+
image: hashicorp/terraform:${TF_VERSION}
|
|
164
|
+
script:
|
|
165
|
+
- terraform init -backend=false
|
|
166
|
+
- terraform validate
|
|
167
|
+
- terraform fmt -check
|
|
168
|
+
|
|
169
|
+
plan:
|
|
170
|
+
stage: plan
|
|
171
|
+
image: hashicorp/terraform:${TF_VERSION}
|
|
172
|
+
script:
|
|
173
|
+
- terraform init
|
|
174
|
+
- terraform plan -out=tfplan
|
|
175
|
+
artifacts:
|
|
176
|
+
paths:
|
|
177
|
+
- ${TF_ROOT}/tfplan
|
|
178
|
+
expire_in: 1 day
|
|
179
|
+
|
|
180
|
+
apply:
|
|
181
|
+
stage: apply
|
|
182
|
+
image: hashicorp/terraform:${TF_VERSION}
|
|
183
|
+
script:
|
|
184
|
+
- terraform init
|
|
185
|
+
- terraform apply -auto-approve tfplan
|
|
186
|
+
dependencies:
|
|
187
|
+
- plan
|
|
188
|
+
when: manual
|
|
189
|
+
only:
|
|
190
|
+
- main
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
## Security Scanning
|
|
194
|
+
|
|
195
|
+
```yaml
|
|
196
|
+
include:
|
|
197
|
+
- template: Security/SAST.gitlab-ci.yml
|
|
198
|
+
- template: Security/Dependency-Scanning.gitlab-ci.yml
|
|
199
|
+
- template: Security/Container-Scanning.gitlab-ci.yml
|
|
200
|
+
|
|
201
|
+
trivy-scan:
|
|
202
|
+
stage: test
|
|
203
|
+
image: aquasec/trivy:latest
|
|
204
|
+
script:
|
|
205
|
+
- trivy image --exit-code 1 --severity HIGH,CRITICAL $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA
|
|
206
|
+
allow_failure: true
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
## Caching Strategies
|
|
210
|
+
|
|
211
|
+
```yaml
|
|
212
|
+
# Cache node_modules
|
|
213
|
+
build:
|
|
214
|
+
cache:
|
|
215
|
+
key: ${CI_COMMIT_REF_SLUG}
|
|
216
|
+
paths:
|
|
217
|
+
- node_modules/
|
|
218
|
+
policy: pull-push
|
|
219
|
+
|
|
220
|
+
# Global cache
|
|
221
|
+
cache:
|
|
222
|
+
key: ${CI_COMMIT_REF_SLUG}
|
|
223
|
+
paths:
|
|
224
|
+
- .cache/
|
|
225
|
+
- vendor/
|
|
226
|
+
|
|
227
|
+
# Separate cache per job
|
|
228
|
+
job1:
|
|
229
|
+
cache:
|
|
230
|
+
key: job1-cache
|
|
231
|
+
paths:
|
|
232
|
+
- build/
|
|
233
|
+
|
|
234
|
+
job2:
|
|
235
|
+
cache:
|
|
236
|
+
key: job2-cache
|
|
237
|
+
paths:
|
|
238
|
+
- dist/
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
## Dynamic Child Pipelines
|
|
242
|
+
|
|
243
|
+
```yaml
|
|
244
|
+
generate-pipeline:
|
|
245
|
+
stage: build
|
|
246
|
+
script:
|
|
247
|
+
- python generate_pipeline.py > child-pipeline.yml
|
|
248
|
+
artifacts:
|
|
249
|
+
paths:
|
|
250
|
+
- child-pipeline.yml
|
|
251
|
+
|
|
252
|
+
trigger-child:
|
|
253
|
+
stage: deploy
|
|
254
|
+
trigger:
|
|
255
|
+
include:
|
|
256
|
+
- artifact: child-pipeline.yml
|
|
257
|
+
job: generate-pipeline
|
|
258
|
+
strategy: depend
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
## Reference Files
|
|
262
|
+
|
|
263
|
+
- `assets/gitlab-ci.yml.template` - Complete pipeline template
|
|
264
|
+
- `references/pipeline-stages.md` - Stage organization patterns
|
|
265
|
+
|
|
266
|
+
## Best Practices
|
|
267
|
+
|
|
268
|
+
1. **Use specific image tags** (node:20, not node:latest)
|
|
269
|
+
2. **Cache dependencies** appropriately
|
|
270
|
+
3. **Use artifacts** for build outputs
|
|
271
|
+
4. **Implement manual gates** for production
|
|
272
|
+
5. **Use environments** for deployment tracking
|
|
273
|
+
6. **Enable merge request pipelines**
|
|
274
|
+
7. **Use pipeline schedules** for recurring jobs
|
|
275
|
+
8. **Implement security scanning**
|
|
276
|
+
9. **Use CI/CD variables** for secrets
|
|
277
|
+
10. **Monitor pipeline performance**
|
|
278
|
+
|
|
279
|
+
## Related Skills
|
|
280
|
+
|
|
281
|
+
- `github-actions-templates` - For GitHub Actions
|
|
282
|
+
- `deployment-pipeline-design` - For architecture
|
|
283
|
+
- `secrets-management` - For secrets handling
|