CtrlK
BlogDocsLog inGet started
Tessl Logo

CI-CD

Automate builds, tests, and deployments across web, mobile, and backend applications.

Invalid
This skill can't be scored yet
Validation errors are blocking scoring. Review and fix them to unlock Quality, Impact and Security scores. See what needs fixing →
SKILL.md
Quality
Evals
Security

When to Use

Trigger on: automated deployment, continuous integration, pipeline setup, GitHub Actions, GitLab CI, build failing, deploy automatically, CI configuration, release automation.

Platform Selection

StackRecommendedWhy
Web (Next.js, Nuxt, static)Vercel, NetlifyZero-config, auto-deploys, preview URLs
Mobile (iOS/Android/Flutter)Codemagic, Bitrise + FastlanePre-configured signing, app store upload
Backend/DockerGitHub Actions, GitLab CIFull control, self-hosted runners option
MonorepoNx/Turborepo + GHAAffected detection, build caching

Decision tree: If platform handles deploy automatically (Vercel, Netlify) → skip custom CI. Only add GitHub Actions when you need tests, custom builds, or deploy to your own infra.

Quick Start Templates

For copy-paste workflows, see templates.md.

Common Pipeline Pitfalls

MistakeImpactFix
Using latest image tagsBuilds break randomlyPin versions: node:20.11.0
Not caching dependencies+5-10 min per buildCache node_modules, .next/cache
Secrets in workflow filesLeaked in logs/PRsUse platform secrets, OIDC for cloud
Missing timeout-minutesStuck jobs burn budgetAlways set: timeout-minutes: 15
No concurrency controlRedundant runs on rapid pushesGroup by branch/PR
Building on every pushWasted resourcesBuild on push to main, test on PRs

Mobile-Specific: Code Signing

The #1 pain point. iOS requires certificates + provisioning profiles. Android requires keystores.

The fix: Use Fastlane Match — stores certs/profiles in git repo, syncs across team and CI.

# One-time setup
fastlane match init
fastlane match appstore

# In CI
fastlane match appstore --readonly

For detailed mobile CI/CD patterns (iOS, Android, Flutter), see mobile.md.

Web-Specific: Build Caching

Next.js/Nuxt builds are slow without cache. The No Cache Detected warning = full rebuild.

# GitHub Actions: persist Next.js cache
- uses: actions/cache@v4
  with:
    path: .next/cache
    key: nextjs-${{ hashFiles('**/package-lock.json') }}

For framework-specific configs, see web.md.

Debugging Failed Builds

Error PatternLikely CauseCheck
Works locally, fails in CIEnvironment driftNode version, env vars, OS
Intermittent failuresFlaky tests, resource limitsRetry logic, increase timeout
ENOENT / file not foundBuild order, missing artifactCheck needs: dependencies
Exit code 137Out of memoryUse larger runner or optimize
Certificate/signing errorsExpired or mismatched credsRegenerate with Match/Fastlane

What This Doesn't Cover

  • Container orchestration (Kubernetes) → see k8s skill
  • Server configuration → see server skill
  • Monitoring and observability → see monitoring skill
Repository
onesixeight/IronMarket
Last updated
Created

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.