Generate CI/CD pipeline configuration for stackql-deploy stacks. Supports GitHub Actions. Creates workflows for build, test, and teardown of cloud infrastructure.
You are helping the user set up CI/CD pipelines for deploying cloud infrastructure using stackql-deploy.
Input: $@
Follow these steps in order.
Look for an existing stackql-deploy stack in the current project:
find . -name "stackql_manifest.yml" -not -path '*/.git/*' 2>/dev/null
If --stack is specified, use that path. If multiple manifests are found, ask the user which one to configure.
If no manifest is found, suggest using /stackql-skills:scaffold-stack first.
Read the stackql_manifest.yml to understand:
If --provider is specified, use that. Otherwise, check for existing CI configuration:
test -d .github/workflows && echo "github-actions"
test -f .gitlab-ci.yml && echo "gitlab"
test -d .circleci && echo "circleci"
Default to GitHub Actions if nothing is detected. Currently supported:
github-actions (primary support)Based on the providers in the manifest, determine what secrets need to be configured:
| StackQL Provider | Required CI Secrets |
|---|---|
google | GOOGLE_CREDENTIALS (service account JSON key) |
aws / awscc | AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_REGION |
azure | AZURE_TENANT_ID, AZURE_CLIENT_ID, AZURE_CLIENT_SECRET, AZURE_SUBSCRIPTION_ID |
github | GITHUB_TOKEN (built-in) or a custom PAT |
Create .github/workflows/stackql-deploy.yml: