genesis-cicd
Installation
SKILL.md
genesis-cicd
Adds one .github/workflows/ci.yml to a genesis monorepo. Railway and Overwatcher templates live in reference.md; Kubernetes uses kubernetes.md with the external lwlee2608/release-manifest actions.
- Kubernetes: after
changes -> resolve, independentserver -> build-server-imageandweb -> build-web-imagepaths join atpublish -> deploy. - Overwatcher: after
changes, independentserver -> build-server-imageandweb -> build-web-imagepaths; external deployment requires both builds to succeed. - Railway:
changes -> server/web.
Question flow
- Read the arguments first.
railway/kubernetes/overwatcheris the CD target;main-prod/release-prodis the branch model;sticky-diskopts into Blacksmith's paid Docker cache. Ask only what is missing. - Ask the rest in ONE AskUserQuestion call:
- CD target:
railway (Recommended)|kubernetes|overwatcher(VM running Docker Compose, deployed by the Overwatcher GitHub App) - Branch model:
main = production (Recommended)|main = staging, release = production - Docker layer cache, only for
kubernetes/overwatcher:GitHub Actions cache (Recommended)— free |Blacksmith sticky disk— $0.50/GB/month, also persistsRUN --mount=type=cache
- CD target:
- Resolve target prerequisites before writing. For Kubernetes, inspect the chart and collect missing GCP project, cluster locations, namespaces, release names, and environment values paths. Require chart support for complete digest references, not tag-only image construction. The canonical scaffold has no Helm chart: if one is missing, stop and ask whether to create it as a separate prerequisite or choose another target. Verify a published commit of
lwlee2608/release-manifestand pin both actions to it; until available, report the dependency blocker rather than invent a version. Do not leave deployment placeholders in a generated workflow. - Confirm in one sentence, then write. Example: "kubernetes, main→staging / release→prod, GCR, GHA cache — proceed?"