1.9 KiB
1.9 KiB
ci.yml - Main CI pipeline (push, pull requests)\n- Dockerfile - Custom CI image with pre-installed tools\n- Dockerfile.cross - Cross-compilation image for multi-platform builds\n\n## Setup\n\n### 1. Activate Woodpecker CI\n\nEnable Woodpecker CI in your Gitea/Forgejo repository settings.\n\n### 2. (Optional) Build Custom Image\n\nSpeeds up CI by pre-installing tools (~5 min faster per run).\n\n\n# Build CI image\ndocker build -t your-registry/ci:latest -f .woodpecker/Dockerfile .\n\n# Push to your registry\ndocker push your-registry/ci:latest\n\n# Update .woodpecker/ci.yml\n# Change: image: rust:latest\n# To: image: your-registry/ci:latest\n\n\n### 3. Cross-Compilation Setup\n\nFor multi-platform builds:\n\n\n# Build cross-compilation image\ndocker build -t your-registry/ci-cross:latest -f .woodpecker/Dockerfile.cross .\n\n# Push to registry\ndocker push your-registry/ci-cross:latest\n\n\n## CI Pipeline (ci.yml)\n\nTriggers: Push to main/develop, Pull Requests\n\nJobs:\n\n1. Lint (Rust, Bash, Nickel, Nushell, Markdown) - Parallel\n2. Test (all features)\n3. Build (release)\n4. Security audit\n5. License compliance check\n\nDuration: ~15-20 minutes (without custom image), ~10-15 minutes (with custom image)\n\n## Triggering Pipelines\n\n\n# CI pipeline (automatic on push/PR)\ngit push origin main\n\n\n## Viewing Results\n\n- Gitea/Forgejo: Repository → Actions → Pipeline runs\n- Woodpecker UI: https://your-woodpecker.instance/repos/{user}/{repo}\n\n## Differences from GitHub Actions\n\n| Feature | GitHub Actions | Woodpecker CI |\n| --------- | --------------- | --------------- |\n| Matrix builds | ✅ 3 OS | ❌ Linux only* |\n| Caching | ✅ Built-in | ⚠️ Server-side** |\n\n* Multi-OS builds require multiple Woodpecker agents\n** Configure in Woodpecker server settings