CI/CD pipeline running on your own infrastructure
name: Rust CI on: push: branches: [main] pull_request: branches: [main] jobs: build: runs-on: self-hosted # ← runs on iqra, not GitHub cloud steps: - uses: actions/checkout@v4 - name: Build run: cargo build --release - name: Test run: cargo test - name: Clippy run: cargo clippy -- -D warnings
on: section in your workflow controls thisgit push origin main like you normally do.
The runner picks it up within seconds — no manual action, no PR required.
PRs are optional but useful because they check code before you merge, catching bugs earlier.
Move the repo from your personal account to jojomojo-org. Visibility stays the same.
gh api --method POST repos/jojomojo786/REPO/transfer -f new_owner="jojomojo-org"
Create .github/workflows/ci.yml in the repo with runs-on: self-hosted.
mkdir -p .github/workflows && cp ci.yml .github/workflows/
Every push to main now auto-builds and tests on your iqra server. No cloud minutes used.
git push origin main → ✅ CI runs automatically