Repositories
A Repository in zCICD is the link between the application and one external Git repository. Once configured, zCICD can authenticate itself, fetch new branches and commits, and initialise Odoo test instances on its own.
Several repositories can be connected to the same zCICD instance and managed side by side.
Repositories are manager-only: Configuration > Repositories.
Setting up a repository
Navigate to Configuration > Repositories and create a new record, then fill in the details of your existing external repository.

Setup
| Field | Meaning |
|---|---|
| URL | The SSH URL of the Git repository |
| Default Branch | The branch treated as the main line. Defaults to main |
| Initialize new Branches | Whether zCICD automatically sets up an instance for each new branch it discovers. Default: yes |
| Autofetch | Whether zCICD fetches from the repository on its own |
| Skip Paths | Comma-separated paths to ignore when analysing changes |
Security
| Field | Meaning |
|---|---|
| Login Type | Nothing (URL only), Username, or Key |
| Username / Password | Used when Login Type is Username |
| Key | The private key, used when Login Type is Key — required for key-protected repositories |
| Public Key | Computed from the private key. Add this to your Git host as a deploy key |
| Personal Access Token | For host API access where needed |
New instances
When zCICD initialises an instance for a new branch, New Instance Mode decides where its database comes from:
| Mode | Behaviour |
|---|---|
| Restore Dump (default) | Restores the dump selected in Dump for new instance |
| Empty DB with Demo Data | Creates a fresh database with Odoo demo data |
Other useful settings
| Field | Meaning |
|---|---|
| Needs Codereview | Branches must pass code review before release. Default: yes |
| Require Enduser Summary | Branches must carry an end-user-facing summary. Default: yes |
| Revive Branch on push | Reactivates a deactivated branch when someone pushes to it |
| Cleanup untouched | Number of days after which untouched instances are cleaned up |
| Docker Registry | The registry built images are pushed to |
| Ticket System | Links branches to Jira or a similar system |
| Machine | The server instances for this repository run on |
| Analyze last n commits | How far back to analyse history. Default: 200 |
Credentials — key, password, username, access token and webhook secret — are readable only by Managers.
Quick actions
Two buttons on the repository form trigger a fetch by hand rather than waiting for the scheduled one:
- Fetch — pulls the configured default branch only (for example
mainormaster) - Fetch all Branches — pulls every branch in the repository, for example
main,develop,feature_233,migration_18.0
Use Fetch all Branches after pushing a new branch if you do not want to wait for zCICD to notice it on its own.
Webhooks
A repository can be driven by a webhook instead of polling. The repository record
carries a Webhook ID, which forms the endpoint path /trigger/repo/<id>, and
a Webhook Secret used to verify incoming calls. Webhook reconcile minutes
controls how often zCICD reconciles state anyway, as a safety net against missed
webhook deliveries.