Permalink
179 lines (158 sloc) 11.8 KB

Plugin Compatibility with Pipeline

For architectural reasons, plugins providing various extensions of interest to builds cannot be made automatically compatible with Pipeline. Typically they require use of some newer APIs, large or small (see the bottom of this document for details). This document captures the ongoing status of plugins known to be compatible or incompatible.

Entries list the class name serving as the entry point to the relevant functionality of the plugin (generally an @Extension), the plugin short name, and implementation status.

Newly filed issues should bear the label pipeline for ease of tracking.

SCMs

  • GitSCM (git): supported as of 2.3; native git step also bundled
  • SubversionSCM (subversion): supported as of 2.5; native svn step also bundled
  • MercurialSCM (mercurial): supported as of 1.51
  • PerforceScm (p4, not the older perforce): supported as of 1.2.0
  • DimensionsSCM (dimensionsscm): JENKINS-26165
  • IntegritySCM (integrity-plugin): supported as of 1.36
  • RepoScm (repo): supported as of 1.9.0
  • teamconcert: supported as of 1.9.4
  • CVSSCM (cvs): scheduled to be supported in 2.13
  • TeamFoundationServerScm (tfs): supported as of 5.3.4
  • AccuRevSCM (accurev): supported as of 0.7.10

Build steps and post-build actions

  • ArtifactArchiver (core)
  • Fingerprinter (core)
  • JUnitResultArchiver (junit)
  • JavadocArchiver (javadoc)
  • Mailer (mailer)
  • CopyArtifact (copyartifact): JENKINS-24887 in 1.34
  • DeployPublisher (deployer-framework): JENKINS-25976
  • Analysis publishers (e.g., FindBugsPublisher): supported as of analysis-core 1.73 and downstream plugins (e.g., findbugs 4.62)
  • CoberturaPublisher (cobertura): as of cobertura-1.10
  • Maven (home TBD): JENKINS-26057
  • XShellBuilder (xshell): JENKINS-26169
  • DockerBuilder (docker-build-step): JENKINS-26178
  • CucumberTestResultArchiver (cucumber-testresult-plugin): supported as of 0.9.6
  • HtmlPublisher (htmlpublisher): supported as of 1.6
  • HttpRequest (http_request): supported as of 1.8.11
  • JacocoPublisher (jacoco): supported as of 2.1.0
  • Publisher (testng): supported as of 1.14
  • Gradle (gradle): JENKINS-27393
  • CloverPublisher (clover): supported as of 4.6.0
  • CloverPHPPublisher (cloverphp): JENKINS-37068
  • MsBuildBuilder (msbuild): JENKINS-26948
  • HipChatNotifier (hipchat): supported as of 1.0.0
  • IronMQNotifier (ironmq-notifier): JENKINS-35505
  • LogParserPublisher (log-parser): supported as of 2.0
  • SlackNotifier (slack): supported as of 2.0
  • DescriptionSetterPublisher (description-setter): PR 7
  • CopyToSlaveBuildWrapper and CopyToMasterNotifier (copy-to-slave): JENKINS-28386
  • VeracodeNotifier (veracode-scanner): JENKINS-28387
  • SeleniumHtmlReportPublisher (seleniumhtmlreport): supported as of 1.0
  • GitPublisher (git) or a custom step: JENKINS-28335
  • SonarQube Jenkins: supported as of 2.5
  • VSphereBuildStepContainer (vsphere-cloud): supported as of 2.13
  • ScoveragePublisher (scoverage): supported as of 1.2.0
  • AWSCodeDeployPublisher (codedeploy): issue 36
  • AnsiblePlaybookBuilder (ansible): supported as of 0.4
  • GitHubCommitNotifier, GitHubSetCommitStatusBuilder (github): scheduled to be supported as of 1.14.3
  • CoverityPublisher (coverity): JENKINS-32354
  • XUnitPublisher and XUnitBuilder (xunit): scheduled to be supported as of 1.100
  • PerformancePublisher and PerformanceTest (performance): supported as of 3.1
  • BlazeMeterTest (blazemeter): supported as of 4.0
  • ZfjReporter (zephyr-for-jira-test-management): JENKINS-32801
  • BapSshPublisher (publish-over-ssh): JENKINS-27963
  • PerfSigRecorder and 5 more (performance-signature-dynatrace): supported as of 2.0
  • StashNotifier (stashNotifier): supported as of 1.11
  • LambdaUploadBuildStep, LambdaInvokeBuildStep, LambdaEventSourceBuildStep (aws-lambda): supported as of 0.5.0
  • CucumberReportPublisher (cucumber-reports): supported as of 2.1.0
  • Powershell (powershell): JENKINS-34581
  • TestPackageBuilder (+6 more), ATXPublisher (+4 more) (ecutest): supported as of 1.11
  • GatlingPublisher (gatling): supported as of 1.2.0
  • BitbucketBuildStatusNotifier: (bitbucket-build-status-notifier) supported as of 1.3
  • NexusArtifactUploader (nexus-artifact-uploader): supported as of 2.2
  • CppcheckPublisher (cppcheck): JENKINS-34943
  • ConfluencePublisher (confluence-publisher): JENKINS-36345
  • ValgrindPublisher (valgrind): JENKINS-34981
  • HockeyappRecorder (hockeyapp): supported as of 1.2.2
  • WsCleanup (ws-cleanup): supported as of 0.30
  • XCodeBuilder (xcode-plugin): supported as of 2.0.0
  • PlotBuilder (plot): supported as of 2.0.0

Build wrappers

  • ConfigFileBuildWrapper (config-file-provider): supported as of 2.9.1
  • Xvnc (xvnc) supported as of 1.22
  • BuildUser (build-user-vars): supported as of 1.5
  • DashboardBuilder (environment-dashboard): issue 20
  • TimestamperBuildWrapper (timestamper): supported as of 1.7
  • MaskPasswordsBuildWrapper (mask-passwords): supported as of 2.8
  • XvfbBuildWrapper (xvfb): supported as of 1.1.0-beta-1
  • GCloudBuildWrapper (gcloud-sdk): scheduled to be supported as of 0.0.2
  • NodeJSBuildWrapper (nodejs): supported as of 1.1.0
  • AnsiColorBuildWrapper (ansicolor): supported as of 0.4.2
  • CustomToolInstallWrapper (custom-tools-plugin): JENKINS-30680
  • PortAllocator (port-allocator): JENKINS-31449
  • withAnt (ant): supported as of 1.6

Triggers

  • gerrit-trigger: supported as of 2.15.0
  • ghprb: supported as of 1.36
  • github: supported as of 1.14.0
  • xtrigger-plugin: JENKINS-27301
  • deployment-notification: scheduled to be supported as of 1.3
  • gitlab-plugin: supported as of 1.1.26
  • bitbucket: supported as of 1.1.2
  • bitbucket-pullrequest-builder: JENKINS-31749
  • xtrigger: JENKINS-31933
  • jira-trigger: supported as of 0.4.0

Clouds

  • elasticbox: JENKINS-25978 (could also include build wrapper integration)
  • mansion-cloud: JENKINS-24815
  • mock-slave (for prototyping): supported as of 1.7
  • docker: supported as of 0.8
  • nectar-vmware (CloudBees Jenkins Enterprise): supported as of 4.3.2
  • operations-center-cloud (CloudBees Jenkins Enterprise/Operations Center): supported as of 1.7.5/1.8.3
  • ec2: known to work as is

Miscellaneous

  • rebuild: supported as of 1.24
  • parameterized-trigger (to support a pipeline as downstream): supported as of 2.28
  • build-token-root: supported as of 1.2
  • build-failure-analyzer: supported as of 1.15
  • shelve-project: JENKINS-26432
  • job-dsl: Pipeline creation supported as of 1.29
  • zentimestamp: basic compatibility in 4.2
  • claim: scheduled to be supported as of 2.8
  • ListSubversionTagsParameterValue (subversion): supported as of 2.5.6
  • authorize-project: supported as of 1.1.0
  • lockable-resources: supported as of 1.8 (except for JENKINS-34273 and JENKINS-34268)
  • customize-build-now: supported as of 1.1
  • test-results-analyzer : supported as of 0.3.4
  • embeddable-build-status: scheduled to be supported as of 1.9
  • groovy-postbuild: supported as of 2.3
  • jira : supported as of 2.2
  • ownership : supported as of 0.9.0 (Documentation)
  • job-restrictions: partial support, JENKINS-32355
  • buildtriggerbadge: supported as of 2.2
  • build-monitor-plugin: supported as of 1.6+build.159
  • radiatorview: supported as of 1.25
  • chucknorris: JENKINS-32594
  • sidebar-link: JENKINS-33458
  • throttle-concurrent-builds: supported as of 2.0 (Documentation)
  • Exclusion: supported as of 0.11
  • jobconfighistory: supported as of 2.14
  • next-build-number: supported as of 1.4
  • tracking-svn JENKINS-38060
  • PrioritySorter: supported as of 3.5.0
  • scoring-load-balancer: JENKINS-41267
  • envinject-plugin: partial support, JENKINS-42614 (Documentation)
  • junit-realtime-test-reporter: realtimeJUnit step as of 0.5

Custom steps

For cases when a first-class Pipeline step (rather than an adaptation of functionality applicable to freestyle projects) makes sense.

  • docker-workflow: DSL based on docker global variable
  • credentials-binding: withCredentials step as of 1.3
  • ssh-agent: sshagent step as of 1.8
  • parallel-test-executor: splitTests step since 1.6
  • gerrit-trigger: JENKINS-26102, JENKINS-26103
  • mailer: mail step in Pipeline 1.2
  • artifactory: step as of 2.5.0
  • email-ext: emailext step since 2.41
  • marathon: marathon step since 1.2.1
  • Release Plugin (release): step since 2.7
  • M2 Release Plugin (m2release): JENKINS-40766

Plugin Developer Guide

Moved to a separate document.