--- title: "CI: Gitea → Jenkins pipeline" tags: ["atlas", "ci", "gitea", "jenkins"] owners: ["brad"] entrypoints: ["scm.bstein.dev", "ci.bstein.dev"] source_paths: ["services/gitea", "services/jenkins", "scripts/jenkins_cred_sync.sh", "scripts/gitea_cred_sync.sh"] --- # CI: Gitea → Jenkins pipeline ## What this is Atlas uses Gitea for source control and Jenkins for CI. Authentication is via Keycloak (SSO). ## Where it is configured - Gitea manifests: `services/gitea/` - Jenkins manifests: `services/jenkins/` - Credential sync helpers: `scripts/gitea_cred_sync.sh`, `scripts/jenkins_cred_sync.sh` ## What users do (typical flow) - Create a repo in Gitea. - Create/update a Jenkins job/pipeline that can fetch the repo. - Configure a webhook (or SCM polling) so pushes trigger builds. ## Troubleshooting (common) - “Webhook not firing”: confirm ingress host, webhook URL, and Jenkins job is reachable. - “Auth denied cloning”: confirm Keycloak group membership and that Jenkins has a valid token/credential configured.