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

Job DSL analogue of multibranch projects & organization folders

      To provide a more scalable alternative to the endless requested branch-api customizations such as JENKINS-32396, or the tricks based on JENKINS-30519, it would be useful to have a simple way of calling into scm-api implementations from a Job DSL folder (JENKINS-33275). So you could (for example) easily construct the equivalent of a GitHub organization folder, but from a script loop that could do arbitrary customizations to each, such as setting job properties.

      Need to also implement SCMSourceOwner, HeadByItem, etc. so that the branch source knows that a given generated project is associated with a given branch, which is needed for various purposes.

      TBD how webhooks should be integrated. The script needs to somehow indicate that changes to a given repository or organization should trigger a regeneration of the folder. May need to create an alternative to SCMTrigger that is keyed off the same criteria that branch-api branch indexing uses, though there are also use cases for traditional SCM polling—it is a little less efficient, but has more configuration options.

      For Pipeline projects you could use Jenkinsfile, if SCMBinder and SCMVar were generalized a bit, or something else.

      Needs a lot of design work; at this point this is more of a placeholder issue to collect ideas.

          [JENKINS-37220] Job DSL analogue of multibranch projects & organization folders

          Jesse Glick created issue -
          Jesse Glick made changes -
          Epic Link New: JENKINS-35386 [ 171179 ]
          Jesse Glick made changes -
          Link New: This issue is blocked by JENKINS-33275 [ JENKINS-33275 ]
          Jesse Glick made changes -
          Link New: This issue relates to JENKINS-30519 [ JENKINS-30519 ]
          Jesse Glick made changes -
          Link New: This issue relates to JENKINS-32396 [ JENKINS-32396 ]
          Andrew Bayer made changes -
          Labels Original: multibranch workflow New: multibranch pipeline workflow
          Andrew Bayer made changes -
          Labels Original: multibranch pipeline workflow New: multibranch pipeline
          Jesse Glick made changes -
          Link New: This issue is duplicated by JENKINS-39750 [ JENKINS-39750 ]
          Jesse Glick made changes -
          Link New: This issue relates to JENKINS-35415 [ JENKINS-35415 ]
          Patrick Wolf made changes -
          Remote Link New: This issue links to "Wiki Page (Jenkins Wiki)" [ 16958 ]
          Jesse Glick made changes -
          Link New: This issue is duplicated by JENKINS-45727 [ JENKINS-45727 ]

            jamietanna Jamie Tanna
            jglick Jesse Glick
            Votes:
            11 Vote for this issue
            Watchers:
            25 Start watching this issue

              Created:
              Updated: