Skip to content
Proud to collaborate with Microsoft for Startups

repligit.mirror.from-github ​

Mirror a GitHub repository into a Repligit appliance repository

Mirror a GitHub repository into a Repligit appliance repository (one pass).

GitHub-primary: apply GitHub's tip when the appliance is behind or the ref is new. Appliance-ahead and diverged refs are flagged, never force-reset, and never pushed back to GitHub.

Inputs:

  • repository_uuid: Repligit repository UUID on the appliance (required)
  • source_repository: GitHub "owner/repo" (required)
  • appliance_base_url: appliance Git HTTP base, e.g. https://git.example (required)
  • admin_base_url: admin HTTPS base used to write the replica snapshot (optional)
  • audience: JWT audience the appliance enforces (default repligit)
  • source_token: GitHub credential for private sources (optional)
  • source_username: username paired with source_token (default x-access-token)
  • replica_uuid: persisted pair UUID echoed onto the snapshot (optional)

Outputs (terminal state_data):

  • refs_updated: number of refs the push changed (0 = already in sync)
  • needs_sync_to_github: flagged refs (ahead / diverged / tag_immutable)
  • heads_verified / heads_total: heads that match GitHub after this pass
  • source_repository / repository_uuid / appliance_base_url: echoes
  • grant_uuid: audit id of the internally minted sync credential
  • completed_at: ISO-8601 timestamp

Overview ​

PropertyValue
Workflow typeAtomic
LibraryApp-repligit
Version1.0

Input Schema ​

FieldTypeRequiredDefaultDescription
repository_uuiduuidYes—Repligit repository UUID on the appliance
source_repositorystringYes—GitHub source as owner/repo
appliance_base_urlstringYes—Appliance Git HTTP base URL, e.g. https://git.example
admin_base_urlstringNo—Admin HTTPS base for writing the replica snapshot
audiencestringNo—JWT audience the appliance enforces
source_tokenstringNo—GitHub credential for private sources (optional)
source_usernamestringNo—Username paired with source_token (default x-access-token)
replica_uuiduuidNo—Persisted replica-pair UUID

Output Schema ​

FieldTypeRequiredDefaultDescription
refs_updatedintegerNo—Refs changed by the push (0 = already in sync)
needs_sync_to_githubjsonNo—Refs the appliance holds that were not applied from GitHub
heads_verifiedintegerNo—Branch tips matching the source after push
heads_totalintegerNo—Branch tips on the source
source_repositorystringNo—Echo of the GitHub source
repository_uuiduuidNo—Echo of the appliance repository
appliance_base_urlstringNo—Echo of the appliance base URL
grant_uuiduuidNo—Audit id of the internally minted sync credential
completed_atstringNo—ISO-8601 completion timestamp
last_errorstringNo——
admin_base_urlstringNo——
audiencestringNo——
replica_uuiduuidNo——
source_tokenstringNo——
source_usernamestringNo——
failure_reasonstringNo——
failure_typestringNo——
failed_actionstringNo——
failed_at_statestringNo——
failed_stepstringNo——
failed_layerstringNo——
errorstringNo——
error_typestringNo——

States ​

StateInitialTerminalSuccessAuto-advanceDescription
pendingYesNo—execute—
completedNoYesYes——
failedNoYesNo——

State Diagram ​

Transitions ​

FromActionToDescription
pendingexecutecompleted—
* (any state)failfailed—

API Usage ​

bash
POST /api/workflows/start
Content-Type: application/json

{
  "workflow_type": "repligit.mirror.from-github",
  "initial_data": {
    "repository_uuid": "value",
    "source_repository": "value",
    "appliance_base_url": "value"
  }
}