Mirror Settings
Repository mirroring allows your AllSpice repository to stay synchronized with external Git repositories. It’s useful when you need to:
- Keep an internal copy of an external project
- Continuously publish changes to an upstream provider (e.g., GitHub, GitLab, Bitbucket)
- Maintain redundancy or backups
- Integrate with systems that require code to exist in multiple locations
Mirroring helps teams work across platforms without manually duplicating commits or maintaining custom sync scripts.
Overview
Mirroring supports two modes:
- Push mirrors – Send changes from AllSpice to another repository.
- Pull mirrors – Bring changes from another repository into AllSpice.
This section covers push mirrors.
For pull mirrors, refer to Pulling from a Remote Repository in the documentation.
Push Mirrors
The Push Mirrors section lists all configured mirror targets. For each mirror, it displays:
- Repository – The destination repository URL
- Direction – Always push for this section
- Last Update – Timestamp of the most recent successful sync
If no mirrors are configured, the page displays:
No push mirrors configured.
Push mirroring is helpful when AllSpice is your source of truth but you still need to publish code to external platforms for CI/CD pipelines, vendor integrations, or public distribution.
Git Remote Repository URL
Specifies the URL of the remote repository you want to push to.
This must be a valid Git URL, such as:
https://github.com/example/repo.gitgit@github.com:example/repo.git
The remote URL determines where AllSpice sends updates. If the remote requires authentication, credentials must be configured in Authorization.
Authorization
Defines the authentication method used when connecting to the remote repository.
Why this matters:
Most Git providers require credentials for pushes. Without proper authorization, mirror syncing will fail.
Supported credential types depend on the external service and may include:
- Personal access tokens
- Deploy keys (SSH)
- HTTPS credentials (username/token)
Sync on Push
Enable this option to trigger a mirror sync automatically whenever commits are pushed to the repository.
Why this matters:
If the mirrored repository powers CI/CD pipelines or other automated systems, Sync on Push ensures updates appear immediately, without waiting for the scheduled interval.
Mirror Interval
Controls how frequently AllSpice attempts automated background syncs.
Useful for:
- Maintaining redundancy
- Ensuring mirrors stay up to date even if no new commits are pushed
- Detecting and retrying missed sync attempts
Settings:
- Valid units:
h,m,s - Minimum interval:
10m0s - Set to
0to disable scheduled syncing
Example:
1h0m0s (sync every hour)
Add Push Mirror
Creates a new push mirror configuration.
To add a mirror:
- Enter the Remote Repository URL.
- Configure Authorization with valid credentials.
- (Optional) Enable Sync on Push.
- (Optional) Set the Mirror Interval.
- Click Add Push Mirror.
Once created, AllSpice will begin pushing updates according to your sync settings.