Loading skill
Install any skill in seconds. Free to start, no credit card required.
Get Started Free →CI/CD pipeline, Docker multi-stage build, GitHub Actions, and Cloud Run deployment for the Anachak platform.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-06 | ✗→✓ | ▲ Improved | 0% | 0% |
| case-08 | ✗→✓ | ▲ Improved | -41% | 0% |
| case-01 | ✗→✓ | ▲ Improved | -13% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 72% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 5% | 0% |
Covers the full CI/CD pipeline from local build to production deployment.
File: .github/workflows/ci.yml
| Job | Trigger | Purpose | |---|---|---| | check | push/PR to main | cargo fmt --check → clippy → build --release → test | | test | after check | Start PostgreSQL service → build server → run Ruby integration tests | | docker | after check | Build Docker image → push to GHCR (on push to main) |
cargo fmt --all -- --check
cargo clippy --all-targets --all-features -- -D warnings
cargo build --release
cargo test --releasepostgres:16-alpine service container.env with CI secretsruby scripts/test_all.rbghcr.io/<repo> with tags: latest, main, <sha>dockerfile# Stage 1: Builder FROM rust:1.88-slim AS builder # Install protobuf + SSL + pkg-config # Copy manifests for dep caching # Copy source + build --release # Stage 2: Runtime FROM debian:bookworm-slim # Install ca-certificates + curl # Non-root user (app) # Copy binary from builder # EXPOSE 50050 9090 9091 # CMD ["server"]
Cargo.toml/Cargo.lock first, dummy main.rsDATABASE_URL, JWT_SECRET, JWT_ACCESS_EXPIRY_SECS, JWT_REFRESH_EXPIRY_SECS,
GRPC_HOST, GRPC_PORT, RESEND_API_KEY, EMAIL_FROM, EMAIL_FROM_NAME,
FRONTEND_URL, CORS_ORIGINS, METRICS_PORT, WS_PORT,
BAKONG_EMAIL, BAKONG_TOKEN, BAKONG_ACCOUNT_ID, BAKONG_MERCHANT_NAME,
BAKONG_MERCHANT_CITY, KHR_EXCHANGE_RATE, SUPER_ADMIN_EMAIL,
SUPER_ADMIN_USERNAME, SUPER_ADMIN_PASSWORDPLASGATE_PRIVATE_KEY, PLASGATE_SECRET_KEY, TELEGRAM_BOT_TOKEN,
TELEGRAM_GATEWAY_TOKEN, GOOGLE_CLIENT_ID, ALERT_CHAT_ID, REDIS_URLVITE_API_URL=http://localhost:50050
VITE_GOOGLE_CLIENT_ID=xxx.apps.googleusercontent.combashgcloud run deploy anachak \ --image ghcr.io/khemapos/anachak_rust:latest \ --region asia-southeast1 \ --platform managed \ --port 50050 \ --allow-unauthenticated \ --set-secrets "DATABASE_URL=DATABASE_URL:latest,JWT_SECRET=JWT_SECRET:latest,..."
Kustomize manifests in k8s/ for self-hosted Kubernetes deployments.
fishcc # cargo check ct # cargo test ship "feat: X" # git add + commit + push → triggers CI
Other measured skills in the registry, with their headline benchmark lift.