Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-18698

Toplevel git reference repos

XMLWordPrintable

    • Icon: New Feature New Feature
    • Resolution: Unresolved
    • Icon: Major Major
    • git-plugin
    • None

      I have many jobs that use the same set of git repos and/or submodules.

      I'm using the reference repo feature of the git plugin to conserve space, but this still requires some bootstrapping on each node where I want to use the repo.

      What I'm imagining is a mode of operation where there's a top level mirror clone for each node and repo at the start of a job by default.

      Example:

      Let's say I have a git repo like:

      git@github.com:fooproject/foo.git

      That has submodules:

      git@some.gitosis.com:/path/to/foosub1.git
      git@github.com:myproj/foosub2.git

      What I'd want is on the node when the job first runs, it does a mirror clone for each component to an encoded directory:

      $JENKINS_HOME/gitrepos/git@github.com:fooproject%foo.git
      $JENKINS_HOME/gitrepos/git@some.gitosis.com:%path%to%foosub1.git
      $JENKINS_HOME/gitrepos/git@github.com:myproj%foosub2.git

      When the job runs it would check first for a matching spec under gitrepos, and use that as a reference both for submodules and the main repo as necessary, eliminating the need to manually clone and set a reference repo.

      For some users this could be a big savings of time/space.

            Unassigned Unassigned
            b2jrock b2jrock
            Votes:
            1 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated: