Skip to main content

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.

The repository form

Setup

FieldMeaning
URLThe SSH URL of the Git repository
Default BranchThe branch treated as the main line. Defaults to main
Initialize new BranchesWhether zCICD automatically sets up an instance for each new branch it discovers. Default: yes
AutofetchWhether zCICD fetches from the repository on its own
Skip PathsComma-separated paths to ignore when analysing changes

Security

FieldMeaning
Login TypeNothing (URL only), Username, or Key
Username / PasswordUsed when Login Type is Username
KeyThe private key, used when Login Type is Key — required for key-protected repositories
Public KeyComputed from the private key. Add this to your Git host as a deploy key
Personal Access TokenFor 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:

ModeBehaviour
Restore Dump (default)Restores the dump selected in Dump for new instance
Empty DB with Demo DataCreates a fresh database with Odoo demo data

Other useful settings

FieldMeaning
Needs CodereviewBranches must pass code review before release. Default: yes
Require Enduser SummaryBranches must carry an end-user-facing summary. Default: yes
Revive Branch on pushReactivates a deactivated branch when someone pushes to it
Cleanup untouchedNumber of days after which untouched instances are cleaned up
Docker RegistryThe registry built images are pushed to
Ticket SystemLinks branches to Jira or a similar system
MachineThe server instances for this repository run on
Analyze last n commitsHow far back to analyse history. Default: 200
note

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 main or master)
  • 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.