Skip to content

Commit

Permalink
Merge pull request #974 from daspilker/JENKINS-40601
Browse files Browse the repository at this point in the history
[JENKINS-40601] improved error message when a plugin is missing
  • Loading branch information
daspilker committed Dec 23, 2016
2 parents b5a7a3e + c2f0f09 commit 8613178
Show file tree
Hide file tree
Showing 6 changed files with 82 additions and 80 deletions.
2 changes: 2 additions & 0 deletions docs/Home.md
Expand Up @@ -42,6 +42,8 @@ Browse the Jenkins issue tracker to see any [open issues](https://issues.jenkins
([#973](https://github.com/jenkinsci/job-dsl-plugin/pull/973))
* Changed embedded API Viewer to work without Internet connectivity
([JENKINS-40205](https://issues.jenkins-ci.org/browse/JENKINS-40205))
* Improved error message when a plugin is missing
([JENKINS-40601](https://issues.jenkins-ci.org/browse/JENKINS-40601))
* The short URL for the embedded API Viewer ()http://localhost:8080/plugin/job-dsl/api-viewer) is deprecated, see
[Migration](Migration#migrating-to-154)
* Fixed problem with
Expand Down
44 changes: 22 additions & 22 deletions job-dsl-core/src/main/groovy/javaposse/jobdsl/dsl/DslFactory.groovy
Expand Up @@ -47,15 +47,15 @@ interface DslFactory extends ViewFactory {
* @since 1.30
* @see #buildFlowJob(java.lang.String, groovy.lang.Closure)
*/
@RequiresPlugin(id = 'build-flow-plugin')
@RequiresPlugin(id = 'build-flow-plugin', failIfMissing = true)
BuildFlowJob buildFlowJob(String name)

/**
* Creates or update a job for managing Jenkins jobs orchestration using a dedicated DSL.
*
* @since 1.31
*/
@RequiresPlugin(id = 'build-flow-plugin')
@RequiresPlugin(id = 'build-flow-plugin', failIfMissing = true)
BuildFlowJob buildFlowJob(String name, @DslContext(BuildFlowJob) Closure closure)

/**
Expand All @@ -64,15 +64,15 @@ interface DslFactory extends ViewFactory {
* @since 1.38
* @see #ivyJob(java.lang.String, groovy.lang.Closure)
*/
@RequiresPlugin(id = 'ivy', minimumVersion = '1.23')
@RequiresPlugin(id = 'ivy', minimumVersion = '1.23', failIfMissing = true)
IvyJob ivyJob(String name)

/**
* Creates or updates a job to build an Ivy project.
*
* @since 1.38
*/
@RequiresPlugin(id = 'ivy', minimumVersion = '1.23')
@RequiresPlugin(id = 'ivy', minimumVersion = '1.23', failIfMissing = true)
IvyJob ivyJob(String name, @DslContext(IvyJob) Closure closure)

/**
Expand All @@ -81,15 +81,15 @@ interface DslFactory extends ViewFactory {
* @since 1.30
* @see #matrixJob(java.lang.String, groovy.lang.Closure)
*/
@RequiresPlugin(id = 'matrix-project')
@RequiresPlugin(id = 'matrix-project', failIfMissing = true)
MatrixJob matrixJob(String name)

/**
* Creates or updates a multi-configuration job.
*
* @since 1.31
*/
@RequiresPlugin(id = 'matrix-project')
@RequiresPlugin(id = 'matrix-project', failIfMissing = true)
MatrixJob matrixJob(String name, @DslContext(MatrixJob) Closure closure)

/**
Expand All @@ -98,15 +98,15 @@ interface DslFactory extends ViewFactory {
* @since 1.30
* @see #mavenJob(java.lang.String, groovy.lang.Closure)
*/
@RequiresPlugin(id = 'maven-plugin', minimumVersion = '2.3')
@RequiresPlugin(id = 'maven-plugin', minimumVersion = '2.3', failIfMissing = true)
MavenJob mavenJob(String name)

/**
* Creates or updates a job to build a Maven project.
*
* @since 1.31
*/
@RequiresPlugin(id = 'maven-plugin', minimumVersion = '2.3')
@RequiresPlugin(id = 'maven-plugin', minimumVersion = '2.3', failIfMissing = true)
MavenJob mavenJob(String name, @DslContext(MavenJob) Closure closure)

/**
Expand All @@ -115,15 +115,15 @@ interface DslFactory extends ViewFactory {
* @since 1.30
* @see #multiJob(java.lang.String, groovy.lang.Closure)
*/
@RequiresPlugin(id = 'jenkins-multijob-plugin', minimumVersion = '1.16')
@RequiresPlugin(id = 'jenkins-multijob-plugin', minimumVersion = '1.16', failIfMissing = true)
MultiJob multiJob(String name)

/**
* Creates or updates a multi-job project, suitable for running other jobs.
*
* @since 1.31
*/
@RequiresPlugin(id = 'jenkins-multijob-plugin', minimumVersion = '1.16')
@RequiresPlugin(id = 'jenkins-multijob-plugin', minimumVersion = '1.16', failIfMissing = true)
MultiJob multiJob(String name, @DslContext(MultiJob) Closure closure)

/**
Expand All @@ -133,7 +133,7 @@ interface DslFactory extends ViewFactory {
* @since 1.47
* @see #pipelineJob(java.lang.String, groovy.lang.Closure)
*/
@RequiresPlugin(id = 'workflow-aggregator')
@RequiresPlugin(id = 'workflow-aggregator', failIfMissing = true)
WorkflowJob pipelineJob(String name)

/**
Expand All @@ -142,7 +142,7 @@ interface DslFactory extends ViewFactory {
*
* @since 1.47
*/
@RequiresPlugin(id = 'workflow-aggregator')
@RequiresPlugin(id = 'workflow-aggregator', failIfMissing = true)
WorkflowJob pipelineJob(String name, @DslContext(WorkflowJob) Closure closure)

/**
Expand All @@ -151,15 +151,15 @@ interface DslFactory extends ViewFactory {
* @since 1.47
* @see #multibranchPipelineJob(java.lang.String, groovy.lang.Closure)
*/
@RequiresPlugin(id = 'workflow-multibranch', minimumVersion = '1.12')
@RequiresPlugin(id = 'workflow-multibranch', minimumVersion = '1.12', failIfMissing = true)
MultibranchWorkflowJob multibranchPipelineJob(String name)

/**
* Creates or updates a multibranch pipeline job.
*
* @since 1.47
*/
@RequiresPlugin(id = 'workflow-multibranch', minimumVersion = '1.12')
@RequiresPlugin(id = 'workflow-multibranch', minimumVersion = '1.12', failIfMissing = true)
MultibranchWorkflowJob multibranchPipelineJob(String name, @DslContext(MultibranchWorkflowJob) Closure closure)

/**
Expand All @@ -168,15 +168,15 @@ interface DslFactory extends ViewFactory {
* @since 1.30
* @see #folder(java.lang.String, groovy.lang.Closure)
*/
@RequiresPlugin(id = 'cloudbees-folder', minimumVersion = '5.0')
@RequiresPlugin(id = 'cloudbees-folder', minimumVersion = '5.0', failIfMissing = true)
Folder folder(String name)

/**
* Creates or updates a folder.
*
* @since 1.31
*/
@RequiresPlugin(id = 'cloudbees-folder', minimumVersion = '5.0')
@RequiresPlugin(id = 'cloudbees-folder', minimumVersion = '5.0', failIfMissing = true)
Folder folder(String name, @DslContext(Folder) Closure closure)

/**
Expand All @@ -185,15 +185,15 @@ interface DslFactory extends ViewFactory {
* @since 1.30
* @see #customConfigFile(java.lang.String, groovy.lang.Closure)
*/
@RequiresPlugin(id = 'config-file-provider')
@RequiresPlugin(id = 'config-file-provider', failIfMissing = true)
ConfigFile customConfigFile(String name)

/**
* Creates a managed custom file.
*
* @since 1.31
*/
@RequiresPlugin(id = 'config-file-provider')
@RequiresPlugin(id = 'config-file-provider', failIfMissing = true)
ConfigFile customConfigFile(String name, @DslContext(ConfigFile) Closure closure)

/**
Expand All @@ -202,31 +202,31 @@ interface DslFactory extends ViewFactory {
* @since 1.30
* @see #mavenSettingsConfigFile(java.lang.String, groovy.lang.Closure)
*/
@RequiresPlugin(id = 'config-file-provider')
@RequiresPlugin(id = 'config-file-provider', failIfMissing = true)
MavenSettingsConfigFile mavenSettingsConfigFile(String name)

/**
* Creates a managed Maven settings file.
*
* @since 1.31
*/
@RequiresPlugin(id = 'config-file-provider')
@RequiresPlugin(id = 'config-file-provider', failIfMissing = true)
MavenSettingsConfigFile mavenSettingsConfigFile(String name, @DslContext(ConfigFile) Closure closure)

/**
* Creates a managed global Maven settings file.
*
* @since 1.39
*/
@RequiresPlugin(id = 'config-file-provider')
@RequiresPlugin(id = 'config-file-provider', failIfMissing = true)
MavenSettingsConfigFile globalMavenSettingsConfigFile(String name)

/**
* Creates a managed global Maven settings file.
*
* @since 1.39
*/
@RequiresPlugin(id = 'config-file-provider')
@RequiresPlugin(id = 'config-file-provider', failIfMissing = true)
MavenSettingsConfigFile globalMavenSettingsConfigFile(String name, @DslContext(ConfigFile) Closure closure)

/**
Expand Down
Expand Up @@ -32,69 +32,69 @@ interface ViewFactory extends Context {
*
* @see #sectionedView(java.lang.String)
*/
@RequiresPlugin(id = 'sectioned-view')
@RequiresPlugin(id = 'sectioned-view', failIfMissing = true)
SectionedView sectionedView(String name)

/**
* Creates or updates a view that can be divided into sections.
*/
@RequiresPlugin(id = 'sectioned-view')
@RequiresPlugin(id = 'sectioned-view', failIfMissing = true)
SectionedView sectionedView(String name, @DslContext(SectionedView) Closure closure)

/**
* Creates or updates a view that allows grouping views into multiple levels.
*
* @see #nestedView(java.lang.String, groovy.lang.Closure)
*/
@RequiresPlugin(id = 'nested-view')
@RequiresPlugin(id = 'nested-view', failIfMissing = true)
NestedView nestedView(String name)

/**
* Creates or updates a view that allows grouping views into multiple levels.
*/
@RequiresPlugin(id = 'nested-view')
@RequiresPlugin(id = 'nested-view', failIfMissing = true)
NestedView nestedView(String name, @DslContext(NestedView) Closure closure)

/**
* Creates or updates a view that renders pipelines based on upstream/downstream jobs.
*
* @see #deliveryPipelineView(java.lang.String, groovy.lang.Closure)
*/
@RequiresPlugin(id = 'delivery-pipeline-plugin')
@RequiresPlugin(id = 'delivery-pipeline-plugin', failIfMissing = true)
DeliveryPipelineView deliveryPipelineView(String name)

/**
* Creates or updates a view that renders pipelines based on upstream/downstream jobs.
*/
@RequiresPlugin(id = 'delivery-pipeline-plugin')
@RequiresPlugin(id = 'delivery-pipeline-plugin', failIfMissing = true)
DeliveryPipelineView deliveryPipelineView(String name, @DslContext(DeliveryPipelineView) Closure closure)

/**
* Create or updates a view of upstream and downstream connected jobs.
*
* @see #buildPipelineView(java.lang.String, groovy.lang.Closure)
*/
@RequiresPlugin(id = 'build-pipeline-plugin')
@RequiresPlugin(id = 'build-pipeline-plugin', failIfMissing = true)
BuildPipelineView buildPipelineView(String name)

/**
* Create or updates a view of upstream and downstream connected jobs.
*/
@RequiresPlugin(id = 'build-pipeline-plugin')
@RequiresPlugin(id = 'build-pipeline-plugin', failIfMissing = true)
BuildPipelineView buildPipelineView(String name, @DslContext(BuildPipelineView) Closure closure)

/**
* Creates or updates a view that provides a highly visible view of the status of selected Jenkins jobs.
*
* @see #buildMonitorView(java.lang.String, groovy.lang.Closure)
*/
@RequiresPlugin(id = 'build-monitor-plugin')
@RequiresPlugin(id = 'build-monitor-plugin', failIfMissing = true)
BuildMonitorView buildMonitorView(String name)

/**
* Creates or updates a view that provides a highly visible view of the status of selected Jenkins jobs.
*/
@RequiresPlugin(id = 'build-monitor-plugin')
@RequiresPlugin(id = 'build-monitor-plugin', failIfMissing = true)
BuildMonitorView buildMonitorView(String name, @DslContext(BuildMonitorView) Closure closure)

/**
Expand All @@ -103,14 +103,14 @@ interface ViewFactory extends Context {
*
* @see #categorizedJobsView(java.lang.String, groovy.lang.Closure)
*/
@RequiresPlugin(id = 'categorized-view', minimumVersion = '1.8')
@RequiresPlugin(id = 'categorized-view', minimumVersion = '1.8', failIfMissing = true)
CategorizedJobsView categorizedJobsView(String name)

/**
* Creates or updates a new view that is very similar to the standard Jenkins List Views, but where you can group
* jobs and categorize them according to regular expressions.
*/
@RequiresPlugin(id = 'categorized-view', minimumVersion = '1.8')
@RequiresPlugin(id = 'categorized-view', minimumVersion = '1.8', failIfMissing = true)
CategorizedJobsView categorizedJobsView(String name, @DslContext(CategorizedJobsView) Closure closure)

/**
Expand All @@ -119,14 +119,14 @@ interface ViewFactory extends Context {
* @see #dashboardView(java.lang.String, groovy.lang.Closure)
* @since 1.42
*/
@RequiresPlugin(id = 'dashboard-view', minimumVersion = '2.9.7')
@RequiresPlugin(id = 'dashboard-view', minimumVersion = '2.9.7', failIfMissing = true)
DashboardView dashboardView(String name)

/**
* Creates or updates a dashboard / portal-like view.
* @since 1.42
*/
@RequiresPlugin(id = 'dashboard-view', minimumVersion = '2.9.7')
@RequiresPlugin(id = 'dashboard-view', minimumVersion = '2.9.7', failIfMissing = true)
DashboardView dashboardView(String name, @DslContext(DashboardView) Closure closure)
}

0 comments on commit 8613178

Please sign in to comment.