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

Invert pipeline-model-definition → docker-workflow dependency

    XMLWordPrintable

    Details

    • Similar Issues:
    • Released As:
      docker-workflow 1.22; pipeline-model-definition 1.6.0

      Description

      Currently pipeline-model-definition has a dependency on docker-workflow to supply agent docker and agent dockerfile definitions. These should rather be defined in the docker-workflow plugin, which would then get a dependency on pipeline-model-extensions (unclear if that should be optional).

      This would match, for example, how agent kubernetes is defined in the kubernetes plugin, and how I propose (related to JENKINS-48050) something like agent dockerNode should be defined in the docker plugin, keeping the sensitive aspects of the behavior close to the plugin which manages that environment.

      It would also allow docker-workflow to be omitted from distributions which do not need it. In particular, Kubernetes-oriented distributions are unlikely to have any use for agent docker. (You might want to install docker-workflow so as to be able to use withDockerContainer with DinD, but in that case you would still be using agent kubernetes, and anyway the most common use case—building Docker images—is preferably handled via Kaniko.)

        Attachments

          Activity

          Hide
          jglick Jesse Glick added a comment -

          Pending JENKINS-49651, delivering this to existing installations might be tricky as users might update some but not all plugins.

          Show
          jglick Jesse Glick added a comment - Pending JENKINS-49651 , delivering this to existing installations might be tricky as users might update some but not all plugins.
          Hide
          dnusbaum Devin Nusbaum added a comment -

          Docker-related functionality has been removed from Pipeline: Declarative Plugin as of version 1.6.0, which was just released, and resides in Docker Pipeline Plugin as of version 1.22. Pipeline: Declarative Plugin still has a dependency on Docker Pipeline Plugin for now to guide users to the latest version of Docker Pipeline Plugin so that the dependency can be safely removed in a few weeks or so.

          Show
          dnusbaum Devin Nusbaum added a comment - Docker-related functionality has been removed from Pipeline: Declarative Plugin as of version 1.6.0, which was just released, and resides in Docker Pipeline Plugin as of version 1.22. Pipeline: Declarative Plugin still has a dependency on Docker Pipeline Plugin for now to guide users to the latest version of Docker Pipeline Plugin so that the dependency can be safely removed in a few weeks or so.

            People

            Assignee:
            jglick Jesse Glick
            Reporter:
            jglick Jesse Glick
            Votes:
            1 Vote for this issue
            Watchers:
            3 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: