portal-cicd

Builds and maintains GitHub Actions CI/CD pipelines deploying Docker containers to Cloud Run.

Updated Jul 27, 2026
One-click install
npx skills add https://github.com/ArthurZizumbo/karisma-data --skill portal-cicd-arthurzizumbo
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: portal-cicd
Source: https://github.com/ArthurZizumbo/karisma-data/tree/main/.claude/skills/portal-cicd
Command: npx skills add https://github.com/ArthurZizumbo/karisma-data --skill portal-cicd-arthurzizumbo

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Maintaining a consistent CI/CD pipeline for a full-stack FastAPI + Nuxt application is error-prone: lint and test jobs drift, migrations get skipped before deploys, secrets leak into workflows, and Docker images ship with unnecessary build tooling. This Skill encodes the exact pipeline conventions for the Portal Centralizado de Datos Financieros so every workflow edit follows the same rules. ## Core Features & Use Cases - CI workflow authoring: Generates ci.yml with ruff/eslint linting, pytest and Vue Test Utils testing, Poetry/pnpm lockfile caching, and a backend/frontend job matrix. - Deploy pipeline management: Produces deploy.yml that builds Docker images, pushes to Artifact Registry, runs dbmate migrations before deployment, and deploys to Cloud Run with secrets scoped to GitHub Environments. - Multi-stage Dockerfiles and local tooling: Provides slim FastAPI images via poetry export, Nuxt images with a pnpm fetch cache layer, plus Makefile targets and Docker Compose for local development. - Use Case: When editing .github/workflows/, docker-compose.yml, the Makefile, or Dockerfiles, activate this Skill to ensure migrations always run before deploys, secrets stay in GitHub Environments, and lockfile caching stays enabled. ## Quick Start Ask the assistant to update the deploy workflow so database migrations run before the Cloud Run deployment using the portal-cicd conventions.

Frequently Asked Questions about portal-cicd

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up GitHub Actions CI for a FastAPI and Nuxt monorepo?

Create a ci.yml with separate backend and frontend jobs. The backend job uses setup-python with Poetry caching to run ruff and pytest, while the frontend job uses pnpm with setup-node caching to run lint and Vitest, each with its own working directory.

How to run database migrations before deploying to Cloud Run?

Run dbmate up with the DATABASE_URL secret as an explicit step in deploy.yml before the gcloud run deploy commands. This guarantees schema changes are applied before the new container revision receives traffic.

What is the best way to cache Poetry and pnpm dependencies in GitHub Actions?

Use actions/setup-python with cache: poetry for the backend and actions/setup-node with cache: pnpm plus cache-dependency-path pointing at pnpm-lock.yaml for the frontend. Dependencies install only from committed lockfiles.

How do I build a slim Docker image for a Poetry-managed FastAPI app?

Use a multi-stage Dockerfile: in the builder stage run poetry export to produce requirements.txt, then in the final python:3.12-slim stage pip install from that file. The runtime image contains no Poetry or dev dependencies.

Where should CI/CD pipeline secrets be stored in GitHub?

Store secrets in GitHub Environments, such as a production environment attached to the deploy job, never in the repository or hardcoded in workflow files. The deploy job references them via secrets context like GCP_DEPLOY_SA_KEY and DATABASE_URL.

Why does pnpm fetch improve Docker build caching for Nuxt apps?

Copying only pnpm-lock.yaml and running pnpm fetch creates a Docker layer that caches the dependency store independently of source code changes. Subsequent builds reuse that layer and run pnpm install --offline --frozen-lockfile.