diff --git a/build.gradle.kts b/build.gradle.kts new file mode 100644 index 0000000..adaf7fe --- /dev/null +++ b/build.gradle.kts @@ -0,0 +1,67 @@ +import com.gradle.scan.plugin.BuildScanPlugin +import com.mkobit.jenkins.pipelines.http.AnonymousAuthentication +import org.gradle.kotlin.dsl.version +import java.io.ByteArrayOutputStream + +plugins { + id("com.gradle.build-scan") version "1.16" + id("com.mkobit.jenkins.pipelines.shared-library") version "0.7.0" + id("com.github.ben-manes.versions") version "0.20.0" +} + +val commitSha: String by lazy { + ByteArrayOutputStream().use { + project.exec { + commandLine("git", "rev-parse", "HEAD") + standardOutput = it + } + it.toString(Charsets.UTF_8.name()).trim() + } +} + +buildScan { + setTermsOfServiceAgree("yes") + setTermsOfServiceUrl("https://gradle.com/terms-of-service") + link("Git", "https://git.floop.org.uk/git/ONS/pmd-jenkins-library.git") + value("Revision", commitSha) +} + +tasks { + register("wrapper", Wrapper::class) { + gradleVersion = "4.10" + } +} + +java { + sourceCompatibility = JavaVersion.VERSION_1_8 +} + +dependencies { + val spock = "org.spockframework:spock-core:1.1-groovy-2.4" + testImplementation(spock) + testImplementation("org.assertj:assertj-core:3.11.1") + integrationTestImplementation(spock) + integrationTestImplementation("com.github.tomakehurst:wiremock:2.19.0") +} + +jenkinsIntegration { + baseUrl.set(uri("http://localhost:5050").toURL()) + authentication.set(providers.provider { AnonymousAuthentication }) + downloadDirectory.set(layout.projectDirectory.dir("jenkinsResources")) +} + +sharedLibrary { + // TODO: this will need to be altered when auto-mapping functionality is complete + coreVersion.set(jenkinsIntegration.downloadDirectory.file("core-version.txt").map { it.asFile.readText().trim() }) + // TODO: retrieve downloaded plugin resource + pluginDependencies { + dependency("org.jenkins-ci.plugins", "pipeline-build-step", "2.7") + dependency("org.6wind.jenkins", "lockable-resources", "2.2") + dependency("org.jenkinsci.plugins", "pipeline-model-api", "1.2.5") + dependency("org.jenkinsci.plugins", "pipeline-model-declarative-agent", "1.1.1") + dependency("org.jenkinsci.plugins", "pipeline-model-definition", "1.2.5") + dependency("org.jenkins-ci.plugins", "config-file-provider", "3.4.1") + dependency("org.jenkinsci.plugins", "pipeline-model-extensions", "1.2.5") + dependency("org.jenkins-ci.plugins", "http_request", "1.8.21") + } +} diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..28861d2 --- /dev/null +++ b/gradle/wrapper/gradle-wrapper.jar Binary files differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..115e6ac --- /dev/null +++ b/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-4.10-bin.zip +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/gradlew b/gradlew new file mode 100755 index 0000000..cccdd3d --- /dev/null +++ b/gradlew @@ -0,0 +1,172 @@ +#!/usr/bin/env sh + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn () { + echo "$*" +} + +die () { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; + NONSTOP* ) + nonstop=true + ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Escape application args +save () { + for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done + echo " " +} +APP_ARGS=$(save "$@") + +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" + +# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong +if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then + cd "$(dirname "$0")" +fi + +exec "$JAVACMD" "$@" diff --git a/jenkinsResources/core-version.txt b/jenkinsResources/core-version.txt new file mode 100644 index 0000000..2898311 --- /dev/null +++ b/jenkinsResources/core-version.txt @@ -0,0 +1 @@ +2.107.1 \ No newline at end of file diff --git a/jenkinsResources/idea.gdsl b/jenkinsResources/idea.gdsl new file mode 100644 index 0000000..7917f54 --- /dev/null +++ b/jenkinsResources/idea.gdsl @@ -0,0 +1,140 @@ + +//The global script scope +def ctx = context(scope: scriptScope()) +contributor(ctx) { +method(name: 'build', type: 'Object', params: [job:'java.lang.String'], doc: 'Build a job') +method(name: 'build', type: 'Object', namedParams: [parameter(name: 'job', type: 'java.lang.String'), parameter(name: 'parameters', type: 'Map'), parameter(name: 'propagate', type: 'boolean'), parameter(name: 'quietPeriod', type: 'java.lang.Integer'), parameter(name: 'wait', type: 'boolean'), ], doc: 'Build a job') +method(name: 'echo', type: 'Object', params: [message:'java.lang.String'], doc: 'Print Message') +method(name: 'emailext', type: 'Object', namedParams: [parameter(name: 'subject', type: 'java.lang.String'), parameter(name: 'body', type: 'java.lang.String'), parameter(name: 'attachLog', type: 'boolean'), parameter(name: 'attachmentsPattern', type: 'java.lang.String'), parameter(name: 'compressLog', type: 'boolean'), parameter(name: 'from', type: 'java.lang.String'), parameter(name: 'mimeType', type: 'java.lang.String'), parameter(name: 'postsendScript', type: 'java.lang.String'), parameter(name: 'presendScript', type: 'java.lang.String'), parameter(name: 'recipientProviders', type: 'Map'), parameter(name: 'replyTo', type: 'java.lang.String'), parameter(name: 'to', type: 'java.lang.String'), ], doc: 'Extended Email') +method(name: 'emailextrecipients', type: 'Object', params: [recipientProviders:'Map'], doc: 'Extended Email Recipients') +method(name: 'error', type: 'Object', params: [message:'java.lang.String'], doc: 'Error signal') +method(name: 'input', type: 'Object', params: [message:'java.lang.String'], doc: 'Wait for interactive input') +method(name: 'input', type: 'Object', namedParams: [parameter(name: 'message', type: 'java.lang.String'), parameter(name: 'id', type: 'java.lang.String'), parameter(name: 'ok', type: 'java.lang.String'), parameter(name: 'parameters', type: 'Map'), parameter(name: 'submitter', type: 'java.lang.String'), parameter(name: 'submitterParameter', type: 'java.lang.String'), ], doc: 'Wait for interactive input') +method(name: 'isUnix', type: 'Object', params: [:], doc: 'Checks if running on a Unix-like node') +method(name: 'jiraComment', type: 'Object', namedParams: [parameter(name: 'issueKey', type: 'java.lang.String'), parameter(name: 'body', type: 'java.lang.String'), ], doc: 'JIRA: Add a comment to issue(s)') +method(name: 'jiraIssueSelector', type: 'Object', params: [:], doc: 'JIRA: Issue selector') +method(name: 'jiraIssueSelector', type: 'Object', namedParams: [parameter(name: 'issueSelector', type: 'Map'), ], doc: 'JIRA: Issue selector') +method(name: 'jiraSearch', type: 'Object', params: [jql:'java.lang.String'], doc: 'JIRA: Search issues') +method(name: 'library', type: 'Object', params: [identifier:'java.lang.String'], doc: 'Load a shared library on the fly') +method(name: 'library', type: 'Object', namedParams: [parameter(name: 'identifier', type: 'java.lang.String'), parameter(name: 'changelog', type: 'java.lang.Boolean'), parameter(name: 'retriever', type: 'Map'), ], doc: 'Load a shared library on the fly') +method(name: 'libraryResource', type: 'Object', params: [resource:'java.lang.String'], doc: 'Load a resource file from a shared library') +method(name: 'lock', type: 'Object', params: [resource:java.lang.String, body:'Closure'], doc: 'Lock shared resource') +method(name: 'lock', type: 'Object', params: [body:Closure], namedParams: [parameter(name: 'resource', type: 'java.lang.String'), parameter(name: 'inversePrecedence', type: 'boolean'), parameter(name: 'label', type: 'java.lang.String'), parameter(name: 'quantity', type: 'int'), parameter(name: 'variable', type: 'java.lang.String'), ], doc: 'Lock shared resource') +method(name: 'mail', type: 'Object', namedParams: [parameter(name: 'subject', type: 'java.lang.String'), parameter(name: 'body', type: 'java.lang.String'), parameter(name: 'bcc', type: 'java.lang.String'), parameter(name: 'cc', type: 'java.lang.String'), parameter(name: 'charset', type: 'java.lang.String'), parameter(name: 'from', type: 'java.lang.String'), parameter(name: 'mimeType', type: 'java.lang.String'), parameter(name: 'replyTo', type: 'java.lang.String'), parameter(name: 'to', type: 'java.lang.String'), ], doc: 'Mail') +method(name: 'milestone', type: 'Object', params: [ordinal:'java.lang.Integer'], doc: 'The milestone step forces all builds to go through in order') +method(name: 'milestone', type: 'Object', namedParams: [parameter(name: 'ordinal', type: 'java.lang.Integer'), parameter(name: 'label', type: 'java.lang.String'), ], doc: 'The milestone step forces all builds to go through in order') +method(name: 'node', type: 'Object', params: [label:java.lang.String, body:'Closure'], doc: 'Allocate node') +method(name: 'nodesByLabel', type: 'Object', params: [label:'java.lang.String'], doc: 'List of nodes by Label, by default excludes offline nodes.') +method(name: 'nodesByLabel', type: 'Object', namedParams: [parameter(name: 'label', type: 'java.lang.String'), parameter(name: 'offline', type: 'boolean'), ], doc: 'List of nodes by Label, by default excludes offline nodes.') +method(name: 'properties', type: 'Object', params: [properties:'Map'], doc: 'Set job properties') +method(name: 'readJSON', type: 'Object', params: [:], doc: 'Read JSON from files in the workspace.') +method(name: 'readJSON', type: 'Object', namedParams: [parameter(name: 'file', type: 'java.lang.String'), parameter(name: 'text', type: 'java.lang.String'), ], doc: 'Read JSON from files in the workspace.') +method(name: 'readManifest', type: 'Object', params: [:], doc: 'Read a Jar Manifest') +method(name: 'readManifest', type: 'Object', namedParams: [parameter(name: 'file', type: 'java.lang.String'), parameter(name: 'text', type: 'java.lang.String'), ], doc: 'Read a Jar Manifest') +method(name: 'readProperties', type: 'Object', params: [:], doc: 'Read properties from files in the workspace or text.') +method(name: 'readProperties', type: 'Object', namedParams: [parameter(name: 'defaults', type: 'java.util.Map'), parameter(name: 'file', type: 'java.lang.String'), parameter(name: 'interpolate', type: 'java.lang.Boolean'), parameter(name: 'text', type: 'java.lang.String'), ], doc: 'Read properties from files in the workspace or text.') +method(name: 'readTrusted', type: 'Object', params: [path:'java.lang.String'], doc: 'Read trusted file from SCM') +method(name: 'readYaml', type: 'Object', params: [:], doc: 'Read yaml from files in the workspace or text.') +method(name: 'readYaml', type: 'Object', namedParams: [parameter(name: 'file', type: 'java.lang.String'), parameter(name: 'text', type: 'java.lang.String'), ], doc: 'Read yaml from files in the workspace or text.') +method(name: 'resolveScm', type: 'Object', namedParams: [parameter(name: 'source', type: 'Map'), parameter(name: 'targets', type: 'Map'), parameter(name: 'ignoreErrors', type: 'boolean'), ], doc: 'Resolves an SCM from an SCM Source and a list of candidate target branch names') +method(name: 'retry', type: 'Object', params: [count:int, body:'Closure'], doc: 'Retry the body up to N times') +method(name: 'script', type: 'Object', params: [body:'Closure'], doc: 'Run arbitrary Pipeline script') +method(name: 'sleep', type: 'Object', params: [time:'int'], doc: 'Sleep') +method(name: 'sleep', type: 'Object', namedParams: [parameter(name: 'time', type: 'int'), parameter(name: 'unit', type: 'java.util.concurrent.TimeUnit'), ], doc: 'Sleep') +method(name: 'stage', type: 'Object', params: [name:java.lang.String, body:'Closure'], doc: 'Stage') +method(name: 'stage', type: 'Object', params: [body:Closure], namedParams: [parameter(name: 'name', type: 'java.lang.String'), parameter(name: 'concurrency', type: 'java.lang.Integer'), ], doc: 'Stage') +method(name: 'timeout', type: 'Object', params: [time:int, body:'Closure'], doc: 'Enforce time limit') +method(name: 'timeout', type: 'Object', params: [body:Closure], namedParams: [parameter(name: 'time', type: 'int'), parameter(name: 'unit', type: 'java.util.concurrent.TimeUnit'), ], doc: 'Enforce time limit') +method(name: 'timestamps', type: 'Object', params: [body:'Closure'], doc: 'Timestamps') +method(name: 'tool', type: 'Object', params: [name:'java.lang.String'], doc: 'Use a tool from a predefined Tool Installation') +method(name: 'tool', type: 'Object', namedParams: [parameter(name: 'name', type: 'java.lang.String'), parameter(name: 'type', type: 'java.lang.String'), ], doc: 'Use a tool from a predefined Tool Installation') +method(name: 'waitUntil', type: 'Object', params: [body:'Closure'], doc: 'Wait for condition') +method(name: 'withCredentials', type: 'Object', params: [bindings:Map, body:'Closure'], doc: 'Bind credentials to variables') +method(name: 'withEnv', type: 'Object', params: [overrides:Map, body:'Closure'], doc: 'Set environment variables') +method(name: 'ws', type: 'Object', params: [dir:java.lang.String, body:'Closure'], doc: 'Allocate workspace') +method(name: 'catchError', type: 'Object', params: [body:'Closure'], doc: 'Advanced/Deprecated Catch error and set build result') +method(name: 'dockerFingerprintRun', type: 'Object', params: [containerId:'java.lang.String'], doc: 'Advanced/Deprecated Record trace of a Docker image run in a container') +method(name: 'dockerFingerprintRun', type: 'Object', namedParams: [parameter(name: 'containerId', type: 'java.lang.String'), parameter(name: 'toolName', type: 'java.lang.String'), ], doc: 'Record trace of a Docker image run in a container') +method(name: 'envVarsForTool', type: 'Object', namedParams: [parameter(name: 'toolId', type: 'java.lang.String'), parameter(name: 'toolVersion', type: 'java.lang.String'), ], doc: 'Fetches the environment variables for a given tool in a list of \'FOO=bar\' strings suitable for the withEnv step.') +method(name: 'getContext', type: 'Object', params: [type:'Map'], doc: 'Advanced/Deprecated Get contextual object from internal APIs') +method(name: 'podTemplate', type: 'Object', params: [body:Closure], namedParams: [parameter(name: 'label', type: 'java.lang.String'), parameter(name: 'name', type: 'java.lang.String'), parameter(name: 'activeDeadlineSeconds', type: 'int'), parameter(name: 'annotations', type: 'Map'), parameter(name: 'cloud', type: 'java.lang.String'), parameter(name: 'containers', type: 'Map'), parameter(name: 'envVars', type: 'Map'), parameter(name: 'idleMinutes', type: 'int'), parameter(name: 'imagePullSecrets', type: 'Map'), parameter(name: 'inheritFrom', type: 'java.lang.String'), parameter(name: 'instanceCap', type: 'int'), parameter(name: 'namespace', type: 'java.lang.String'), parameter(name: 'nodeSelector', type: 'java.lang.String'), parameter(name: 'nodeUsageMode', type: 'java.lang.String'), parameter(name: 'serviceAccount', type: 'java.lang.String'), parameter(name: 'slaveConnectTimeout', type: 'int'), parameter(name: 'volumes', type: 'Map'), parameter(name: 'workingDir', type: 'java.lang.String'), parameter(name: 'workspaceVolume', type: 'Map'), parameter(name: 'yaml', type: 'java.lang.String'), ], doc: 'Define a podTemplate to use in the kubernetes plugin') +method(name: 'withContext', type: 'Object', params: [context:java.lang.Object, body:'Closure'], doc: 'Advanced/Deprecated Use contextual object from internal APIs within a block') +property(name: 'docker', type: 'org.jenkinsci.plugins.docker.workflow.DockerDSL') +property(name: 'pipeline', type: 'org.jenkinsci.plugins.pipeline.modeldefinition.ModelStepLoader') +property(name: 'env', type: 'org.jenkinsci.plugins.workflow.cps.EnvActionImpl.Binder') +property(name: 'params', type: 'org.jenkinsci.plugins.workflow.cps.ParamsVariable') +property(name: 'currentBuild', type: 'org.jenkinsci.plugins.workflow.cps.RunWrapperBinder') +property(name: 'scm', type: 'org.jenkinsci.plugins.workflow.multibranch.SCMVar') +} +//Steps that require a node context +def nodeCtx = context(scope: closureScope()) +contributor(nodeCtx) { + def call = enclosingCall('node') + if (call) { +method(name: 'bat', type: 'Object', params: [script:'java.lang.String'], doc: 'Windows Batch Script') +method(name: 'bat', type: 'Object', namedParams: [parameter(name: 'script', type: 'java.lang.String'), parameter(name: 'encoding', type: 'java.lang.String'), parameter(name: 'returnStatus', type: 'boolean'), parameter(name: 'returnStdout', type: 'boolean'), ], doc: 'Windows Batch Script') +method(name: 'checkout', type: 'Object', params: [scm:'Map'], doc: 'General SCM') +method(name: 'checkout', type: 'Object', namedParams: [parameter(name: 'scm', type: 'Map'), parameter(name: 'changelog', type: 'boolean'), parameter(name: 'poll', type: 'boolean'), ], doc: 'General SCM') +method(name: 'containerLog', type: 'Object', params: [name:'java.lang.String'], doc: 'Get container log from Kubernetes') +method(name: 'containerLog', type: 'Object', namedParams: [parameter(name: 'name', type: 'java.lang.String'), parameter(name: 'limitBytes', type: 'int'), parameter(name: 'returnLog', type: 'boolean'), parameter(name: 'sinceSeconds', type: 'int'), parameter(name: 'tailingLines', type: 'int'), ], doc: 'Get container log from Kubernetes') +method(name: 'deleteDir', type: 'Object', params: [:], doc: 'Recursively delete the current directory from the workspace') +method(name: 'dir', type: 'Object', params: [path:java.lang.String, body:'Closure'], doc: 'Change current directory') +method(name: 'fileExists', type: 'Object', params: [file:'java.lang.String'], doc: 'Verify if file exists in workspace') +method(name: 'findFiles', type: 'Object', params: [:], doc: 'Find files in the workspace') +method(name: 'findFiles', type: 'Object', namedParams: [parameter(name: 'glob', type: 'java.lang.String'), ], doc: 'Find files in the workspace') +method(name: 'git', type: 'Object', params: [url:'java.lang.String'], doc: 'Git') +method(name: 'git', type: 'Object', namedParams: [parameter(name: 'url', type: 'java.lang.String'), parameter(name: 'branch', type: 'java.lang.String'), parameter(name: 'changelog', type: 'boolean'), parameter(name: 'credentialsId', type: 'java.lang.String'), parameter(name: 'poll', type: 'boolean'), ], doc: 'Git') +method(name: 'junit', type: 'Object', params: [testResults:'java.lang.String'], doc: 'Archive JUnit-formatted test results') +method(name: 'junit', type: 'Object', namedParams: [parameter(name: 'testResults', type: 'java.lang.String'), parameter(name: 'allowEmptyResults', type: 'boolean'), parameter(name: 'healthScaleFactor', type: 'double'), parameter(name: 'keepLongStdio', type: 'boolean'), parameter(name: 'testDataPublishers', type: 'Map'), ], doc: 'Archive JUnit-formatted test results') +method(name: 'load', type: 'Object', params: [path:'java.lang.String'], doc: 'Evaluate a Groovy source file into the Pipeline script') +method(name: 'powershell', type: 'Object', params: [script:'java.lang.String'], doc: 'PowerShell Script') +method(name: 'powershell', type: 'Object', namedParams: [parameter(name: 'script', type: 'java.lang.String'), parameter(name: 'encoding', type: 'java.lang.String'), parameter(name: 'returnStatus', type: 'boolean'), parameter(name: 'returnStdout', type: 'boolean'), ], doc: 'PowerShell Script') +method(name: 'publishHTML', type: 'Object', params: [target:'Map'], doc: 'Publish HTML reports') +method(name: 'pwd', type: 'Object', params: [:], doc: 'Determine current directory') +method(name: 'pwd', type: 'Object', namedParams: [parameter(name: 'tmp', type: 'boolean'), ], doc: 'Determine current directory') +method(name: 'readFile', type: 'Object', params: [file:'java.lang.String'], doc: 'Read file from workspace') +method(name: 'readFile', type: 'Object', namedParams: [parameter(name: 'file', type: 'java.lang.String'), parameter(name: 'encoding', type: 'java.lang.String'), ], doc: 'Read file from workspace') +method(name: 'readMavenPom', type: 'Object', params: [:], doc: 'Read a maven project file.') +method(name: 'readMavenPom', type: 'Object', namedParams: [parameter(name: 'file', type: 'java.lang.String'), ], doc: 'Read a maven project file.') +method(name: 'sh', type: 'Object', params: [script:'java.lang.String'], doc: 'Shell Script') +method(name: 'sh', type: 'Object', namedParams: [parameter(name: 'script', type: 'java.lang.String'), parameter(name: 'encoding', type: 'java.lang.String'), parameter(name: 'returnStatus', type: 'boolean'), parameter(name: 'returnStdout', type: 'boolean'), ], doc: 'Shell Script') +method(name: 'sha1', type: 'Object', params: [file:'java.lang.String'], doc: 'Compute the SHA1 of a given file') +method(name: 'sshagent', type: 'Object', params: [credentials:Map, body:'Closure'], doc: 'SSH Agent') +method(name: 'sshagent', type: 'Object', params: [body:Closure], namedParams: [parameter(name: 'credentials', type: 'Map'), parameter(name: 'ignoreMissing', type: 'boolean'), ], doc: 'SSH Agent') +method(name: 'stash', type: 'Object', params: [name:'java.lang.String'], doc: 'Stash some files to be used later in the build') +method(name: 'stash', type: 'Object', namedParams: [parameter(name: 'name', type: 'java.lang.String'), parameter(name: 'allowEmpty', type: 'boolean'), parameter(name: 'excludes', type: 'java.lang.String'), parameter(name: 'includes', type: 'java.lang.String'), parameter(name: 'useDefaultExcludes', type: 'boolean'), ], doc: 'Stash some files to be used later in the build') +method(name: 'step', type: 'Object', params: [delegate:'Map'], doc: 'General Build Step') +method(name: 'svn', type: 'Object', params: [url:'java.lang.String'], doc: 'Subversion') +method(name: 'svn', type: 'Object', namedParams: [parameter(name: 'url', type: 'java.lang.String'), parameter(name: 'changelog', type: 'boolean'), parameter(name: 'poll', type: 'boolean'), ], doc: 'Subversion') +method(name: 'tee', type: 'Object', params: [file:java.lang.String, body:'Closure'], doc: 'Tee output to file') +method(name: 'tm', type: 'Object', params: [stringWithMacro:'java.lang.String'], doc: 'Expand a string containing macros') +method(name: 'touch', type: 'Object', params: [file:'java.lang.String'], doc: 'Create a file (if not already exist) in the workspace, and set the timestamp') +method(name: 'touch', type: 'Object', namedParams: [parameter(name: 'file', type: 'java.lang.String'), parameter(name: 'timestamp', type: 'java.lang.Long'), ], doc: 'Create a file (if not already exist) in the workspace, and set the timestamp') +method(name: 'unstash', type: 'Object', params: [name:'java.lang.String'], doc: 'Restore files previously stashed') +method(name: 'unzip', type: 'Object', params: [zipFile:'java.lang.String'], doc: 'Extract Zip file') +method(name: 'unzip', type: 'Object', namedParams: [parameter(name: 'zipFile', type: 'java.lang.String'), parameter(name: 'charset', type: 'java.lang.String'), parameter(name: 'dir', type: 'java.lang.String'), parameter(name: 'glob', type: 'java.lang.String'), parameter(name: 'quiet', type: 'boolean'), parameter(name: 'read', type: 'boolean'), parameter(name: 'test', type: 'boolean'), ], doc: 'Extract Zip file') +method(name: 'validateDeclarativePipeline', type: 'Object', params: [path:'java.lang.String'], doc: 'Validate a file containing a Declarative Pipeline') +method(name: 'wrap', type: 'Object', params: [delegate:Map, body:'Closure'], doc: 'General Build Wrapper') +method(name: 'writeFile', type: 'Object', namedParams: [parameter(name: 'file', type: 'java.lang.String'), parameter(name: 'text', type: 'java.lang.String'), parameter(name: 'encoding', type: 'java.lang.String'), ], doc: 'Write file to workspace') +method(name: 'writeJSON', type: 'Object', namedParams: [parameter(name: 'file', type: 'java.lang.String'), parameter(name: 'json', type: 'Map'), parameter(name: 'pretty', type: 'int'), ], doc: 'Write JSON to a file in the workspace.') +method(name: 'writeMavenPom', type: 'Object', params: [model:'Map'], doc: 'Write a maven project file.') +method(name: 'writeMavenPom', type: 'Object', namedParams: [parameter(name: 'model', type: 'Map'), parameter(name: 'file', type: 'java.lang.String'), ], doc: 'Write a maven project file.') +method(name: 'writeYaml', type: 'Object', namedParams: [parameter(name: 'file', type: 'java.lang.String'), parameter(name: 'data', type: 'java.lang.Object'), parameter(name: 'charset', type: 'java.lang.String'), ], doc: 'Write a yaml from an object.') +method(name: 'zip', type: 'Object', params: [zipFile:'java.lang.String'], doc: 'Create Zip file') +method(name: 'zip', type: 'Object', namedParams: [parameter(name: 'zipFile', type: 'java.lang.String'), parameter(name: 'archive', type: 'boolean'), parameter(name: 'dir', type: 'java.lang.String'), parameter(name: 'glob', type: 'java.lang.String'), ], doc: 'Create Zip file') +method(name: 'archive', type: 'Object', params: [includes:'java.lang.String'], doc: 'Advanced/Deprecated Archive artifacts') +method(name: 'archive', type: 'Object', namedParams: [parameter(name: 'includes', type: 'java.lang.String'), parameter(name: 'excludes', type: 'java.lang.String'), ], doc: 'Archive artifacts') +method(name: 'container', type: 'Object', params: [name:java.lang.String, body:'Closure'], doc: 'Advanced/Deprecated Run build steps in a container') +method(name: 'container', type: 'Object', params: [body:Closure], namedParams: [parameter(name: 'name', type: 'java.lang.String'), parameter(name: 'shell', type: 'java.lang.String'), ], doc: 'Run build steps in a container') +method(name: 'dockerFingerprintFrom', type: 'Object', namedParams: [parameter(name: 'dockerfile', type: 'java.lang.String'), parameter(name: 'image', type: 'java.lang.String'), parameter(name: 'buildArgs', type: 'Map'), parameter(name: 'toolName', type: 'java.lang.String'), ], doc: 'Record trace of a Docker image used in FROM') +method(name: 'unarchive', type: 'Object', params: [:], doc: 'Advanced/Deprecated Copy archived artifacts into the workspace') +method(name: 'unarchive', type: 'Object', namedParams: [parameter(name: 'mapping', type: 'Map'), ], doc: 'Copy archived artifacts into the workspace') +method(name: 'withDockerContainer', type: 'Object', params: [image:java.lang.String, body:'Closure'], doc: 'Advanced/Deprecated Run build steps inside a Docker container') +method(name: 'withDockerContainer', type: 'Object', params: [body:Closure], namedParams: [parameter(name: 'image', type: 'java.lang.String'), parameter(name: 'args', type: 'java.lang.String'), parameter(name: 'toolName', type: 'java.lang.String'), ], doc: 'Run build steps inside a Docker container') +method(name: 'withDockerRegistry', type: 'Object', params: [registry:Map, body:'Closure'], doc: 'Advanced/Deprecated Sets up Docker registry endpoint') +method(name: 'withDockerServer', type: 'Object', params: [server:Map, body:'Closure'], doc: 'Advanced/Deprecated Sets up Docker server endpoint') + } +} + +// Errors on: +// class org.jenkinsci.plugins.workflow.cps.steps.ParallelStep: There's no @DataBoundConstructor on any constructor of class org.jenkinsci.plugins.workflow.cps.steps.ParallelStep diff --git a/jenkinsResources/plugins.json b/jenkinsResources/plugins.json new file mode 100644 index 0000000..c0b2482 --- /dev/null +++ b/jenkinsResources/plugins.json @@ -0,0 +1,4700 @@ +{ + "_class" : "hudson.LocalPluginManager", + "plugins" : [ + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "2.14" + }, + { + "optional" : false, + "shortName" : "structs", + "version" : "1.14" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline: Model API", + "pinned" : false, + "requiredCoreVersion" : "2.62", + "shortName" : "pipeline-model-api", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Model+Definition+Plugin", + "version" : "1.2.8" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "junit", + "version" : "1.0" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "MapDB API Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.565", + "shortName" : "mapdb-api", + "supportsDynamicLoad" : "YES", + "url" : "http://wiki.jenkins-ci.org/display/JENKINS/MapDB+API+Plugin", + "version" : "1.0.9.0" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "blueocean-core-js", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-rest", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "jenkins-design-language", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "variant", + "version" : "1.1" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Web for Blue Ocean", + "pinned" : false, + "requiredCoreVersion" : "2.73.3", + "shortName" : "blueocean-web", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Blue+Ocean+Plugin", + "version" : "1.4.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-job", + "version" : "2.6" + }, + { + "optional" : false, + "shortName" : "workflow-multibranch", + "version" : "2.8" + }, + { + "optional" : false, + "shortName" : "scm-api", + "version" : "2.1.1" + }, + { + "optional" : false, + "shortName" : "display-url-api", + "version" : "2.2.0" + }, + { + "optional" : false, + "shortName" : "blueocean-rest", + "version" : "1.1.5" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Display URL for Blue Ocean", + "pinned" : false, + "requiredCoreVersion" : "2.7.1", + "shortName" : "blueocean-display-url", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/BlueOcean+Display+URL+Plugin", + "version" : "2.2.0" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-api", + "version" : "2.22" + }, + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "2.14" + }, + { + "optional" : false, + "shortName" : "workflow-support", + "version" : "2.14" + }, + { + "optional" : false, + "shortName" : "script-security", + "version" : "1.39" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline: Build Step", + "pinned" : false, + "requiredCoreVersion" : "2.32.2", + "shortName" : "pipeline-build-step", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins.io/display/JENKINS/Pipeline+Build+Step+Plugin", + "version" : "2.7" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-api", + "version" : "2.19" + }, + { + "optional" : false, + "shortName" : "workflow-cps", + "version" : "2.37" + }, + { + "optional" : false, + "shortName" : "workflow-job", + "version" : "2.4" + }, + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "2.10" + }, + { + "optional" : false, + "shortName" : "workflow-support", + "version" : "2.14" + }, + { + "optional" : false, + "shortName" : "pipeline-input-step", + "version" : "2.0" + }, + { + "optional" : false, + "shortName" : "pipeline-stage-step", + "version" : "2.2" + }, + { + "optional" : false, + "shortName" : "structs", + "version" : "1.7" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline Graph Analysis Plugin", + "pinned" : false, + "requiredCoreVersion" : "2.7.3", + "shortName" : "pipeline-graph-analysis", + "supportsDynamicLoad" : "YES", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Graph+Analysis+Plugin", + "version" : "1.6" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "structs", + "version" : "1.5" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline: Step API", + "pinned" : false, + "requiredCoreVersion" : "1.642.3", + "shortName" : "workflow-step-api", + "supportsDynamicLoad" : "YES", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Step+API+Plugin", + "version" : "2.14" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "bouncycastle API Plugin", + "pinned" : false, + "requiredCoreVersion" : "2.16", + "shortName" : "bouncycastle-api", + "supportsDynamicLoad" : "YES", + "url" : "http://wiki.jenkins-ci.org/display/JENKINS/Bouncy+Castle+API+Plugin", + "version" : "2.16.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "apache-httpcomponents-client-4-api", + "version" : "4.5.3-2.0" + }, + { + "optional" : false, + "shortName" : "credentials", + "version" : "2.1.13" + }, + { + "optional" : false, + "shortName" : "jsch", + "version" : "0.1.54.1" + }, + { + "optional" : false, + "shortName" : "ssh-credentials", + "version" : "1.13" + }, + { + "optional" : false, + "shortName" : "structs", + "version" : "1.9" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Jenkins Git client plugin", + "pinned" : false, + "requiredCoreVersion" : "1.625.3", + "shortName" : "git-client", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins.io/display/JENKINS/Git+Client+Plugin", + "version" : "2.7.1" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : true, + "shortName" : "workflow-step-api", + "version" : "1.7" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Timestamper", + "pinned" : false, + "requiredCoreVersion" : "1.608", + "shortName" : "timestamper", + "supportsDynamicLoad" : "YES", + "url" : "http://wiki.jenkins-ci.org/display/JENKINS/Timestamper", + "version" : "1.8.9" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "2.11" + }, + { + "optional" : false, + "shortName" : "durable-task", + "version" : "1.16" + }, + { + "optional" : false, + "shortName" : "variant", + "version" : "1.0" + }, + { + "optional" : false, + "shortName" : "kubernetes-credentials", + "version" : "0.3.0" + }, + { + "optional" : true, + "shortName" : "pipeline-model-extensions", + "version" : "1.1.2" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Kubernetes plugin", + "pinned" : false, + "requiredCoreVersion" : "2.32.1", + "shortName" : "kubernetes", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Kubernetes+Plugin", + "version" : "1.5.1" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "credentials", + "version" : "2.1.2" + }, + { + "optional" : false, + "shortName" : "ssh-credentials", + "version" : "1.6.1" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Jenkins SSH Slaves plugin", + "pinned" : false, + "requiredCoreVersion" : "1.625", + "shortName" : "ssh-slaves", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/SSH+Slaves+plugin", + "version" : "1.26" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-api", + "version" : "2.6" + }, + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "2.5" + }, + { + "optional" : false, + "shortName" : "workflow-support", + "version" : "2.10" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline: Input Step", + "pinned" : false, + "requiredCoreVersion" : "1.642.4", + "shortName" : "pipeline-input-step", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Input+Step+Plugin", + "version" : "2.8" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "blueocean-dashboard", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Personalization for Blue Ocean", + "pinned" : false, + "requiredCoreVersion" : "2.73.3", + "shortName" : "blueocean-personalization", + "supportsDynamicLoad" : "YES", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Blue+Ocean+Plugin", + "version" : "1.4.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "pipeline-input-step", + "version" : "2.5" + }, + { + "optional" : false, + "shortName" : "workflow-job", + "version" : "2.9" + }, + { + "optional" : false, + "shortName" : "workflow-basic-steps", + "version" : "2.3" + }, + { + "optional" : false, + "shortName" : "workflow-durable-task-step", + "version" : "2.8" + }, + { + "optional" : false, + "shortName" : "workflow-api", + "version" : "2.8" + }, + { + "optional" : false, + "shortName" : "workflow-cps", + "version" : "2.24" + }, + { + "optional" : false, + "shortName" : "workflow-support", + "version" : "2.12" + }, + { + "optional" : false, + "shortName" : "workflow-cps-global-lib", + "version" : "2.5" + }, + { + "optional" : false, + "shortName" : "workflow-multibranch", + "version" : "2.9.2" + }, + { + "optional" : false, + "shortName" : "pipeline-stage-view", + "version" : "2.4" + }, + { + "optional" : false, + "shortName" : "workflow-scm-step", + "version" : "2.3" + }, + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "2.7" + }, + { + "optional" : false, + "shortName" : "pipeline-model-definition", + "version" : "1.0" + }, + { + "optional" : false, + "shortName" : "pipeline-stage-step", + "version" : "2.2" + }, + { + "optional" : false, + "shortName" : "pipeline-build-step", + "version" : "2.4" + }, + { + "optional" : false, + "shortName" : "pipeline-milestone-step", + "version" : "1.3" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline", + "pinned" : false, + "requiredCoreVersion" : "2.7.3", + "shortName" : "workflow-aggregator", + "supportsDynamicLoad" : "YES", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Plugin", + "version" : "2.5" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "junit", + "version" : "1.2" + }, + { + "optional" : false, + "shortName" : "mailer", + "version" : "1.13" + }, + { + "optional" : false, + "shortName" : "matrix-project", + "version" : "1.4" + }, + { + "optional" : false, + "shortName" : "script-security", + "version" : "1.27" + }, + { + "optional" : false, + "shortName" : "structs", + "version" : "1.6" + }, + { + "optional" : false, + "shortName" : "token-macro", + "version" : "2.3" + }, + { + "optional" : true, + "shortName" : "workflow-job", + "version" : "2.11" + }, + { + "optional" : true, + "shortName" : "workflow-step-api", + "version" : "2.9" + }, + { + "optional" : true, + "shortName" : "config-file-provider", + "version" : "2.15.6" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Email Extension Plugin", + "pinned" : false, + "requiredCoreVersion" : "2.7.3", + "shortName" : "email-ext", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Email-ext+plugin", + "version" : "2.62" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "structs", + "version" : "1.7" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Credentials Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.625.3", + "shortName" : "credentials", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins.io/display/JENKINS/Credentials+Plugin", + "version" : "2.1.16" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "JavaScript GUI Lib: Handlebars bundle plugin", + "pinned" : false, + "requiredCoreVersion" : "1.580.1", + "shortName" : "handlebars", + "supportsDynamicLoad" : "YES", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Handlebars.js", + "version" : "1.1.1" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-api", + "version" : "2.25" + }, + { + "optional" : false, + "shortName" : "workflow-basic-steps", + "version" : "2.6" + }, + { + "optional" : false, + "shortName" : "workflow-cps-global-lib", + "version" : "2.9" + }, + { + "optional" : false, + "shortName" : "workflow-cps", + "version" : "2.46" + }, + { + "optional" : false, + "shortName" : "workflow-durable-task-step", + "version" : "2.15" + }, + { + "optional" : false, + "shortName" : "workflow-multibranch", + "version" : "2.16" + }, + { + "optional" : false, + "shortName" : "workflow-scm-step", + "version" : "2.5" + }, + { + "optional" : false, + "shortName" : "workflow-support", + "version" : "2.17" + }, + { + "optional" : false, + "shortName" : "credentials-binding", + "version" : "1.13" + }, + { + "optional" : false, + "shortName" : "credentials", + "version" : "2.1.16" + }, + { + "optional" : false, + "shortName" : "docker-workflow", + "version" : "1.14" + }, + { + "optional" : false, + "shortName" : "git-client", + "version" : "2.7.0" + }, + { + "optional" : false, + "shortName" : "mailer", + "version" : "1.20" + }, + { + "optional" : false, + "shortName" : "pipeline-input-step", + "version" : "2.8" + }, + { + "optional" : false, + "shortName" : "pipeline-stage-step", + "version" : "2.3" + }, + { + "optional" : false, + "shortName" : "scm-api", + "version" : "2.2.6" + }, + { + "optional" : false, + "shortName" : "pipeline-model-api", + "version" : "1.2.8" + }, + { + "optional" : false, + "shortName" : "pipeline-model-declarative-agent", + "version" : "1.1.1" + }, + { + "optional" : false, + "shortName" : "pipeline-model-extensions", + "version" : "1.2.8" + }, + { + "optional" : false, + "shortName" : "pipeline-stage-tags-metadata", + "version" : "1.2.8" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline: Declarative", + "pinned" : false, + "requiredCoreVersion" : "2.62", + "shortName" : "pipeline-model-definition", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Model+Definition+Plugin", + "version" : "1.2.8" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-api", + "version" : "2.22" + }, + { + "optional" : false, + "shortName" : "workflow-job", + "version" : "2.14.1" + }, + { + "optional" : false, + "shortName" : "branch-api", + "version" : "2.0.11" + }, + { + "optional" : false, + "shortName" : "git", + "version" : "3.6.0" + }, + { + "optional" : false, + "shortName" : "junit", + "version" : "1.21" + }, + { + "optional" : false, + "shortName" : "favorite", + "version" : "2.3.1" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Autofavorite for Blue Ocean", + "pinned" : false, + "requiredCoreVersion" : "2.73.3", + "shortName" : "blueocean-autofavorite", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Blue+Ocean+Autofavorite+Plugin", + "version" : "1.2.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-api", + "version" : "2.15" + }, + { + "optional" : false, + "shortName" : "workflow-job", + "version" : "2.0" + }, + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "2.10" + }, + { + "optional" : false, + "shortName" : "workflow-support", + "version" : "2.14" + }, + { + "optional" : false, + "shortName" : "jackson2-api", + "version" : "2.7.3" + }, + { + "optional" : false, + "shortName" : "pipeline-graph-analysis", + "version" : "1.1" + }, + { + "optional" : false, + "shortName" : "pipeline-input-step", + "version" : "2.0" + }, + { + "optional" : false, + "shortName" : "pipeline-stage-step", + "version" : "2.2" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline: REST API Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.642.3", + "shortName" : "pipeline-rest-api", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Stage+View+Plugin", + "version" : "2.10" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "junit", + "version" : "1.0" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "PAM Authentication plugin", + "pinned" : false, + "requiredCoreVersion" : "1.566", + "shortName" : "pam-auth", + "supportsDynamicLoad" : "MAYBE", + "url" : "http://wiki.jenkins-ci.org/display/JENKINS/PAM+Authentication+Plugin", + "version" : "1.3" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-api", + "version" : "2.22" + }, + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "2.12" + }, + { + "optional" : false, + "shortName" : "script-security", + "version" : "1.30" + }, + { + "optional" : false, + "shortName" : "structs", + "version" : "1.7" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "JUnit Plugin", + "pinned" : false, + "requiredCoreVersion" : "2.7.3", + "shortName" : "junit", + "supportsDynamicLoad" : "MAYBE", + "url" : "http://wiki.jenkins-ci.org/display/JENKINS/JUnit+Plugin", + "version" : "1.24" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "junit", + "version" : "1.0" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Resource Disposer Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.565", + "shortName" : "resource-disposer", + "supportsDynamicLoad" : "MAYBE", + "url" : "http://wiki.jenkins-ci.org/display/JENKINS/Resource+Disposer+Plugin", + "version" : "0.8" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-api", + "version" : "2.25" + }, + { + "optional" : false, + "shortName" : "workflow-cps", + "version" : "2.43" + }, + { + "optional" : false, + "shortName" : "workflow-job", + "version" : "2.17" + }, + { + "optional" : false, + "shortName" : "workflow-scm-step", + "version" : "2.4" + }, + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "2.13" + }, + { + "optional" : false, + "shortName" : "workflow-support", + "version" : "2.17" + }, + { + "optional" : false, + "shortName" : "branch-api", + "version" : "2.0.18" + }, + { + "optional" : false, + "shortName" : "cloudbees-folder", + "version" : "6.1.2" + }, + { + "optional" : false, + "shortName" : "scm-api", + "version" : "2.2.6" + }, + { + "optional" : false, + "shortName" : "script-security", + "version" : "1.39" + }, + { + "optional" : false, + "shortName" : "structs", + "version" : "1.10" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline: Multibranch", + "pinned" : false, + "requiredCoreVersion" : "2.62", + "shortName" : "workflow-multibranch", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Multibranch+Plugin", + "version" : "2.17" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-cps", + "version" : "2.46" + }, + { + "optional" : false, + "shortName" : "workflow-job", + "version" : "2.11" + }, + { + "optional" : false, + "shortName" : "credentials-binding", + "version" : "1.13" + }, + { + "optional" : false, + "shortName" : "credentials", + "version" : "2.1.16" + }, + { + "optional" : false, + "shortName" : "pipeline-model-api", + "version" : "1.2.8" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline: Declarative Extension Points API", + "pinned" : false, + "requiredCoreVersion" : "2.62", + "shortName" : "pipeline-model-extensions", + "supportsDynamicLoad" : "YES", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Model+Definition+Plugin", + "version" : "1.2.8" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "blueocean-commons", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-dashboard", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-pipeline-api-impl", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-rest", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "pipeline-model-definition", + "version" : "1.2.5" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Blue Ocean Pipeline Editor", + "pinned" : false, + "requiredCoreVersion" : "2.73.3", + "shortName" : "blueocean-pipeline-editor", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Blue+Ocean+Plugin", + "version" : "1.4.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "blueocean-rest", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "workflow-multibranch", + "version" : "2.16" + }, + { + "optional" : false, + "shortName" : "branch-api", + "version" : "2.0.11" + }, + { + "optional" : false, + "shortName" : "credentials", + "version" : "2.1.14" + }, + { + "optional" : false, + "shortName" : "pubsub-light", + "version" : "1.12" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline SCM API for Blue Ocean", + "pinned" : false, + "requiredCoreVersion" : "2.73.3", + "shortName" : "blueocean-pipeline-scm-api", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Blue+Ocean+Plugin", + "version" : "1.4.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-job", + "version" : "2.0" + }, + { + "optional" : false, + "shortName" : "branch-api", + "version" : "2.0.0" + }, + { + "optional" : false, + "shortName" : "junit", + "version" : "1.3" + }, + { + "optional" : false, + "shortName" : "mailer", + "version" : "1.20" + }, + { + "optional" : false, + "shortName" : "matrix-project", + "version" : "1.6" + }, + { + "optional" : false, + "shortName" : "script-security", + "version" : "1.16" + }, + { + "optional" : false, + "shortName" : "structs", + "version" : "1.4" + }, + { + "optional" : true, + "shortName" : "workflow-step-api", + "version" : "2.0" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Jenkins JIRA plugin", + "pinned" : false, + "requiredCoreVersion" : "1.642.3", + "shortName" : "jira", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/JIRA+Plugin", + "version" : "2.5" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "blueocean-pipeline-api-impl", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "cloudbees-bitbucket-branch-source", + "version" : "2.2.5" + }, + { + "optional" : false, + "shortName" : "pubsub-light", + "version" : "1.12" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Bitbucket Pipeline for Blue Ocean", + "pinned" : false, + "requiredCoreVersion" : "2.73.3", + "shortName" : "blueocean-bitbucket-pipeline", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Blue+Ocean+Plugin", + "version" : "1.4.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "credentials", + "version" : "2.1.8" + }, + { + "optional" : false, + "shortName" : "display-url-api", + "version" : "2.0" + }, + { + "optional" : false, + "shortName" : "git", + "version" : "3.4.0" + }, + { + "optional" : false, + "shortName" : "github-api", + "version" : "1.90" + }, + { + "optional" : false, + "shortName" : "plain-credentials", + "version" : "1.1" + }, + { + "optional" : false, + "shortName" : "scm-api", + "version" : "2.2.0" + }, + { + "optional" : false, + "shortName" : "structs", + "version" : "1.10" + }, + { + "optional" : false, + "shortName" : "token-macro", + "version" : "1.11" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "GitHub plugin", + "pinned" : false, + "requiredCoreVersion" : "1.625.3", + "shortName" : "github", + "supportsDynamicLoad" : "MAYBE", + "url" : "http://wiki.jenkins-ci.org/display/JENKINS/Github+Plugin", + "version" : "1.29.0" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Handy Uri Templates 2.x API Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.625.3", + "shortName" : "handy-uri-templates-2-api", + "supportsDynamicLoad" : "YES", + "url" : "https://wiki.jenkins.io/display/JENKINS/Handy+Uri+Templates+2+API+Plugin", + "version" : "2.1.6-1.0" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "blueocean-pipeline-api-impl", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "pubsub-light", + "version" : "1.12" + }, + { + "optional" : false, + "shortName" : "sse-gateway", + "version" : "1.15" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Events API for Blue Ocean", + "pinned" : false, + "requiredCoreVersion" : "2.73.3", + "shortName" : "blueocean-events", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Blue+Ocean+Plugin", + "version" : "1.4.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "blueocean-commons", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "mailer", + "version" : "1.20" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "JWT for Blue Ocean", + "pinned" : false, + "requiredCoreVersion" : "2.73.3", + "shortName" : "blueocean-jwt", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Blue+Ocean+Plugin", + "version" : "1.4.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "blueocean-bitbucket-pipeline", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-commons", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-config", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-core-js", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-dashboard", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-events", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-git-pipeline", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-github-pipeline", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-i18n", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-jira", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-jwt", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-personalization", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-pipeline-api-impl", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-pipeline-editor", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-rest-impl", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-rest", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-web", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "jenkins-design-language", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-autofavorite", + "version" : "1.2.0" + }, + { + "optional" : false, + "shortName" : "blueocean-display-url", + "version" : "2.1.1" + }, + { + "optional" : false, + "shortName" : "pipeline-build-step", + "version" : "2.5.1" + }, + { + "optional" : false, + "shortName" : "pipeline-milestone-step", + "version" : "1.3.1" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Blue Ocean", + "pinned" : false, + "requiredCoreVersion" : "2.73.3", + "shortName" : "blueocean", + "supportsDynamicLoad" : "YES", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Blue+Ocean+Plugin", + "version" : "1.4.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "blueocean-web", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Dashboard for Blue Ocean", + "pinned" : false, + "requiredCoreVersion" : "2.73.3", + "shortName" : "blueocean-dashboard", + "supportsDynamicLoad" : "YES", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Blue+Ocean+Plugin", + "version" : "1.4.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "1.14.2" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "1.0.2" + }, + { + "optional" : false, + "shortName" : "credentials", + "version" : "2.1.1" + }, + { + "optional" : false, + "shortName" : "ssh-credentials", + "version" : "1.11" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "SSH Agent Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.609.3", + "shortName" : "ssh-agent", + "supportsDynamicLoad" : "MAYBE", + "url" : "http://wiki.jenkins-ci.org/display/JENKINS/SSH+Agent+Plugin", + "version" : "1.15" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "credentials", + "version" : "2.1.7" + }, + { + "optional" : false, + "shortName" : "plain-credentials", + "version" : "1.3" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Kubernetes Credentials Plugin", + "pinned" : false, + "requiredCoreVersion" : "2.32.1", + "shortName" : "kubernetes-credentials", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://plugins.jenkins.io/kubernetes-credentials", + "version" : "0.3.1" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "script-security", + "version" : "1.36" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Command Agent Launcher Plugin", + "pinned" : false, + "requiredCoreVersion" : "2.86", + "shortName" : "command-launcher", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins.io/display/JENKINS/Command+Agent+Launcher+Plugin", + "version" : "1.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "JavaScript GUI Lib: jQuery bundles (jQuery and jQuery UI) plugin", + "pinned" : false, + "requiredCoreVersion" : "1.580.1", + "shortName" : "jquery-detached", + "supportsDynamicLoad" : "YES", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/jQuery+Detached+Plugin", + "version" : "1.2.1" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "credentials", + "version" : "2.1.4" + }, + { + "optional" : false, + "shortName" : "ssh-credentials", + "version" : "1.12" + }, + { + "optional" : false, + "shortName" : "structs", + "version" : "1.7" + }, + { + "optional" : false, + "shortName" : "token-macro", + "version" : "2.0" + }, + { + "optional" : true, + "shortName" : "cloudbees-folder", + "version" : "5.12" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Config File Provider Plugin", + "pinned" : false, + "requiredCoreVersion" : "2.7.3", + "shortName" : "config-file-provider", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Config+File+Provider+Plugin", + "version" : "2.18" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Structs Plugin", + "pinned" : false, + "requiredCoreVersion" : "2.7.3", + "shortName" : "structs", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Structs+plugin", + "version" : "1.14" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "blueocean-rest", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "jira", + "version" : "2.4.2" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "JIRA Integration for Blue Ocean", + "pinned" : false, + "requiredCoreVersion" : "2.73.3", + "shortName" : "blueocean-jira", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Blue+Ocean+Plugin", + "version" : "1.4.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "structs", + "version" : "1.9" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "SCM API Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.609.3", + "shortName" : "scm-api", + "supportsDynamicLoad" : "MAYBE", + "url" : "http://wiki.jenkins-ci.org/display/JENKINS/SCM+API+Plugin", + "version" : "2.2.6" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline: Stage Tags Metadata", + "pinned" : false, + "requiredCoreVersion" : "2.62", + "shortName" : "pipeline-stage-tags-metadata", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Model+Definition+Plugin", + "version" : "1.2.8" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Script Security Plugin", + "pinned" : false, + "requiredCoreVersion" : "2.7.3", + "shortName" : "script-security", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins.io/display/JENKINS/Script+Security+Plugin", + "version" : "1.43" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "authentication-tokens", + "version" : "1.1" + }, + { + "optional" : false, + "shortName" : "credentials-binding", + "version" : "1.12" + }, + { + "optional" : false, + "shortName" : "credentials", + "version" : "2.1.11" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Docker Commons Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.642.4", + "shortName" : "docker-commons", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Docker+Commons+Plugin", + "version" : "1.11" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "pipeline-rest-api", + "version" : "2.10" + }, + { + "optional" : false, + "shortName" : "workflow-job", + "version" : "2.0" + }, + { + "optional" : false, + "shortName" : "handlebars", + "version" : "1.1" + }, + { + "optional" : false, + "shortName" : "jquery-detached", + "version" : "1.2.1" + }, + { + "optional" : false, + "shortName" : "momentjs", + "version" : "1.1" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline: Stage View Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.642.3", + "shortName" : "pipeline-stage-view", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Stage+View+Plugin", + "version" : "2.10" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "blueocean-pipeline-api-impl", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-pipeline-scm-api", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "git", + "version" : "3.6.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Git Pipeline for Blue Ocean", + "pinned" : false, + "requiredCoreVersion" : "2.73.3", + "shortName" : "blueocean-git-pipeline", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Blue+Ocean+Plugin", + "version" : "1.4.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Common API for Blue Ocean", + "pinned" : false, + "requiredCoreVersion" : "2.73.3", + "shortName" : "blueocean-commons", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Blue+Ocean+Plugin", + "version" : "1.4.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-api", + "version" : "2.11" + }, + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "2.9" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline: Milestone Step", + "pinned" : false, + "requiredCoreVersion" : "1.642.3", + "shortName" : "pipeline-milestone-step", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Milestone+Step+Plugin", + "version" : "1.3.1" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-api", + "version" : "2.25" + }, + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "2.13" + }, + { + "optional" : false, + "shortName" : "workflow-support", + "version" : "2.17" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline: Job", + "pinned" : false, + "requiredCoreVersion" : "2.62", + "shortName" : "workflow-job", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Job+Plugin", + "version" : "2.18" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "1.14.2" + }, + { + "optional" : false, + "shortName" : "matrix-project", + "version" : "1.0" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "HTML Publisher plugin", + "pinned" : false, + "requiredCoreVersion" : "1.609.3", + "shortName" : "htmlpublisher", + "supportsDynamicLoad" : "MAYBE", + "url" : "http://wiki.jenkins-ci.org/display/JENKINS/HTML+Publisher+Plugin", + "version" : "1.15" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "junit", + "version" : "1.0" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "OWASP Markup Formatter Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.565.3", + "shortName" : "antisamy-markup-formatter", + "supportsDynamicLoad" : "MAYBE", + "url" : "http://wiki.jenkins-ci.org/display/JENKINS/OWASP+Markup+Formatter+Plugin", + "version" : "1.5" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "display-url-api", + "version" : "1.0" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Jenkins Mailer Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.625.3", + "shortName" : "mailer", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Mailer", + "version" : "1.21" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "git-client", + "version" : "1.11.0" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Jenkins GIT server Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.580.1", + "shortName" : "git-server", + "supportsDynamicLoad" : "MAYBE", + "url" : "http://wiki.jenkins-ci.org/display/JENKINS/Git+Server+Plugin", + "version" : "1.7" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "2.9" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline: SCM Step", + "pinned" : false, + "requiredCoreVersion" : "2.60", + "shortName" : "workflow-scm-step", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+SCM+Step+Plugin", + "version" : "2.6" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "blueocean-commons", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "REST API for Blue Ocean", + "pinned" : false, + "requiredCoreVersion" : "2.73.3", + "shortName" : "blueocean-rest", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Blue+Ocean+Plugin", + "version" : "1.4.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-cps-global-lib", + "version" : "2.5" + }, + { + "optional" : false, + "shortName" : "git", + "version" : "3.0.2" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline: GitHub Groovy Libraries", + "pinned" : false, + "requiredCoreVersion" : "1.642.3", + "shortName" : "pipeline-github-lib", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+GitHub+Library+Plugin", + "version" : "1.0" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Jenkins Apache HttpComponents Client 4.x API Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.625.3", + "shortName" : "apache-httpcomponents-client-4-api", + "supportsDynamicLoad" : "YES", + "url" : "https://wiki.jenkins.io/display/JENKINS/Apache+HttpComponents+Client+4.x+API+Plugin", + "version" : "4.5.3-2.1" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "ssh-credentials", + "version" : "1.13" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Jenkins JSch dependency plugin", + "pinned" : false, + "requiredCoreVersion" : "1.625.3", + "shortName" : "jsch", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins.io/display/JENKINS/JSch+plugin", + "version" : "0.1.54.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Display URL API", + "pinned" : false, + "requiredCoreVersion" : "1.609.3", + "shortName" : "display-url-api", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Display+URL+API+Plugin", + "version" : "2.2.0" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-cps", + "version" : "2.25" + }, + { + "optional" : false, + "shortName" : "workflow-durable-task-step", + "version" : "2.8" + }, + { + "optional" : false, + "shortName" : "docker-commons", + "version" : "1.5" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Docker Pipeline", + "pinned" : false, + "requiredCoreVersion" : "1.642.3", + "shortName" : "docker-workflow", + "supportsDynamicLoad" : "MAYBE", + "url" : "http://wiki.jenkins-ci.org/display/JENKINS/Docker+Pipeline+Plugin", + "version" : "1.15.1" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-api", + "version" : "2.15" + }, + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "2.11" + }, + { + "optional" : false, + "shortName" : "scm-api", + "version" : "2.0.7" + }, + { + "optional" : false, + "shortName" : "structs", + "version" : "1.6" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline: Stage Step", + "pinned" : false, + "requiredCoreVersion" : "1.642.3", + "shortName" : "pipeline-stage-step", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Stage+Step+Plugin", + "version" : "2.3" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "github", + "version" : "1.26.0" + }, + { + "optional" : false, + "shortName" : "credentials", + "version" : "2.1.15" + }, + { + "optional" : false, + "shortName" : "display-url-api", + "version" : "0.2" + }, + { + "optional" : false, + "shortName" : "git", + "version" : "3.6.0" + }, + { + "optional" : false, + "shortName" : "github-api", + "version" : "1.90" + }, + { + "optional" : false, + "shortName" : "scm-api", + "version" : "2.2.3" + }, + { + "optional" : false, + "shortName" : "structs", + "version" : "1.10" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "GitHub Branch Source Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.642.3", + "shortName" : "github-branch-source", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/GitHub+Branch+Source+Plugin", + "version" : "2.3.3" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "External Monitor Job Type Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.609.3", + "shortName" : "external-monitor-job", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Monitoring+external+jobs", + "version" : "1.7" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "cloudbees-folder", + "version" : "6.1.0" + }, + { + "optional" : false, + "shortName" : "scm-api", + "version" : "2.2.6" + }, + { + "optional" : false, + "shortName" : "structs", + "version" : "1.9" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Branch API Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.642.3", + "shortName" : "branch-api", + "supportsDynamicLoad" : "MAYBE", + "url" : "http://wiki.jenkins-ci.org/display/JENKINS/Branch+API+Plugin", + "version" : "2.0.19" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "blueocean-jwt", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-rest", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-web", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "cloudbees-folder", + "version" : "6.1.2" + }, + { + "optional" : false, + "shortName" : "credentials", + "version" : "2.1.14" + }, + { + "optional" : false, + "shortName" : "display-url-api", + "version" : "2.1.0" + }, + { + "optional" : false, + "shortName" : "junit", + "version" : "1.23" + }, + { + "optional" : false, + "shortName" : "mailer", + "version" : "1.20" + }, + { + "optional" : false, + "shortName" : "favorite", + "version" : "2.3.1" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "REST Implementation for Blue Ocean", + "pinned" : false, + "requiredCoreVersion" : "2.73.3", + "shortName" : "blueocean-rest-impl", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Blue+Ocean+Plugin", + "version" : "1.4.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "jenkins-design-language", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Blue Ocean Core JS", + "pinned" : false, + "requiredCoreVersion" : "2.73.3", + "shortName" : "blueocean-core-js", + "supportsDynamicLoad" : "YES", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Blue+Ocean+Core+JS", + "version" : "1.4.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "blueocean-rest", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "i18n for Blue Ocean", + "pinned" : false, + "requiredCoreVersion" : "2.73.3", + "shortName" : "blueocean-i18n", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Blue+Ocean+Plugin", + "version" : "1.4.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "credentials", + "version" : "2.1.10" + }, + { + "optional" : false, + "shortName" : "jsch", + "version" : "0.1.54.1" + }, + { + "optional" : false, + "shortName" : "matrix-project", + "version" : "1.2" + }, + { + "optional" : false, + "shortName" : "scm-api", + "version" : "2.2.0" + }, + { + "optional" : false, + "shortName" : "ssh-credentials", + "version" : "1.12" + }, + { + "optional" : false, + "shortName" : "structs", + "version" : "1.9" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Jenkins Mercurial plugin", + "pinned" : false, + "requiredCoreVersion" : "2.7.3", + "shortName" : "mercurial", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins.io/display/JENKINS/Mercurial+Plugin", + "version" : "2.3" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "blueocean-commons", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-jwt", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-rest", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-web", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Config API for Blue Ocean", + "pinned" : false, + "requiredCoreVersion" : "2.73.3", + "shortName" : "blueocean-config", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Blue+Ocean+Plugin", + "version" : "1.4.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Variant Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.580.1", + "shortName" : "variant", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Variant+Plugin", + "version" : "1.1" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-api", + "version" : "2.16" + }, + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "2.12" + }, + { + "optional" : false, + "shortName" : "mailer", + "version" : "1.18" + }, + { + "optional" : false, + "shortName" : "structs", + "version" : "1.6" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline: Basic Steps", + "pinned" : false, + "requiredCoreVersion" : "1.642.3", + "shortName" : "workflow-basic-steps", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Basic+Steps+Plugin", + "version" : "2.6" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Jenkins Design Language", + "pinned" : false, + "requiredCoreVersion" : "2.73.3", + "shortName" : "jenkins-design-language", + "supportsDynamicLoad" : "YES", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Jenkins+Design+Language", + "version" : "1.4.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-api", + "version" : "2.22" + }, + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "2.13" + }, + { + "optional" : false, + "shortName" : "workflow-support", + "version" : "2.16" + }, + { + "optional" : false, + "shortName" : "durable-task", + "version" : "1.18" + }, + { + "optional" : false, + "shortName" : "script-security", + "version" : "1.27" + }, + { + "optional" : false, + "shortName" : "structs", + "version" : "1.7" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline: Nodes and Processes", + "pinned" : false, + "requiredCoreVersion" : "2.60.3", + "shortName" : "workflow-durable-task-step", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins.io/display/JENKINS/Pipeline+Nodes+and+Processes+Plugin", + "version" : "2.19" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "2.10" + }, + { + "optional" : false, + "shortName" : "scm-api", + "version" : "2.0.8" + }, + { + "optional" : false, + "shortName" : "structs", + "version" : "1.7" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline: API", + "pinned" : false, + "requiredCoreVersion" : "2.60.3", + "shortName" : "workflow-api", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins.io/display/JENKINS/Pipeline+API+Plugin", + "version" : "2.26" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "2.7" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Token Macro Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.642.3", + "shortName" : "token-macro", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Token+Macro+Plugin", + "version" : "2.4" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : true, + "shortName" : "credentials", + "version" : "2.1.11" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Folders Plugin", + "pinned" : false, + "requiredCoreVersion" : "2.60.3", + "shortName" : "cloudbees-folder", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins.io/display/JENKINS/CloudBees+Folders+Plugin", + "version" : "6.4" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "blueocean-pipeline-api-impl", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "github-api", + "version" : "1.86" + }, + { + "optional" : false, + "shortName" : "github-branch-source", + "version" : "2.2.3" + }, + { + "optional" : false, + "shortName" : "jackson2-api", + "version" : "2.7.3" + }, + { + "optional" : false, + "shortName" : "pubsub-light", + "version" : "1.12" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "GitHub Pipeline for Blue Ocean", + "pinned" : false, + "requiredCoreVersion" : "2.73.3", + "shortName" : "blueocean-github-pipeline", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Blue+Ocean+Plugin", + "version" : "1.4.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Durable Task Plugin", + "pinned" : false, + "requiredCoreVersion" : "2.7.3", + "shortName" : "durable-task", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins.io/display/JENKINS/Durable+Task+Plugin", + "version" : "1.22" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "jackson2-api", + "version" : "2.7.3" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "GitHub API Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.615", + "shortName" : "github-api", + "supportsDynamicLoad" : "YES", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/GitHub+API+Plugin", + "version" : "1.90" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "JavaScript GUI Lib: ACE Editor bundle plugin", + "pinned" : false, + "requiredCoreVersion" : "1.580.1", + "shortName" : "ace-editor", + "supportsDynamicLoad" : "YES", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/ACE+Editor+Plugin", + "version" : "1.1" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-api", + "version" : "2.25" + }, + { + "optional" : false, + "shortName" : "workflow-scm-step", + "version" : "2.4" + }, + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "2.13" + }, + { + "optional" : false, + "shortName" : "workflow-support", + "version" : "2.17" + }, + { + "optional" : false, + "shortName" : "scm-api", + "version" : "2.0.8" + }, + { + "optional" : false, + "shortName" : "script-security", + "version" : "1.42" + }, + { + "optional" : false, + "shortName" : "structs", + "version" : "1.14" + }, + { + "optional" : false, + "shortName" : "ace-editor", + "version" : "1.0.1" + }, + { + "optional" : false, + "shortName" : "jquery-detached", + "version" : "1.2.1" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline: Groovy", + "pinned" : false, + "requiredCoreVersion" : "2.62", + "shortName" : "workflow-cps", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins.io/display/JENKINS/Pipeline+Groovy+Plugin", + "version" : "2.47" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : true, + "shortName" : "cloudbees-folder", + "version" : "6.1.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Matrix Authorization Strategy Plugin", + "pinned" : false, + "requiredCoreVersion" : "2.60.1", + "shortName" : "matrix-auth", + "supportsDynamicLoad" : "MAYBE", + "url" : "http://wiki.jenkins-ci.org/display/JENKINS/Matrix+Authorization+Strategy+Plugin", + "version" : "2.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-scm-step", + "version" : "1.14.2" + }, + { + "optional" : false, + "shortName" : "credentials", + "version" : "2.1.15" + }, + { + "optional" : false, + "shortName" : "mapdb-api", + "version" : "1.0.1.0" + }, + { + "optional" : false, + "shortName" : "scm-api", + "version" : "2.0.8" + }, + { + "optional" : false, + "shortName" : "ssh-credentials", + "version" : "1.11" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Jenkins Subversion Plug-in", + "pinned" : false, + "requiredCoreVersion" : "2.7.3", + "shortName" : "subversion", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins.io/display/JENKINS/Subversion+Plugin", + "version" : "2.10.5" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-cps", + "version" : "2.30" + }, + { + "optional" : false, + "shortName" : "workflow-scm-step", + "version" : "2.4" + }, + { + "optional" : false, + "shortName" : "cloudbees-folder", + "version" : "5.12" + }, + { + "optional" : false, + "shortName" : "git-client", + "version" : "2.3.0" + }, + { + "optional" : false, + "shortName" : "git-server", + "version" : "1.7" + }, + { + "optional" : false, + "shortName" : "scm-api", + "version" : "2.1.1" + }, + { + "optional" : false, + "shortName" : "script-security", + "version" : "1.27" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline: Shared Groovy Libraries", + "pinned" : false, + "requiredCoreVersion" : "1.642.3", + "shortName" : "workflow-cps-global-lib", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Shared+Groovy+Libraries+Plugin", + "version" : "2.9" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-api", + "version" : "2.25" + }, + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "2.13" + }, + { + "optional" : false, + "shortName" : "scm-api", + "version" : "2.2.6" + }, + { + "optional" : false, + "shortName" : "script-security", + "version" : "1.39" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline: Supporting APIs", + "pinned" : false, + "requiredCoreVersion" : "2.60.3", + "shortName" : "workflow-support", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins.io/display/JENKINS/Pipeline+Supporting+APIs+Plugin", + "version" : "2.18" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Jenkins Pub-Sub \"light\" Bus", + "pinned" : false, + "requiredCoreVersion" : "2.0", + "shortName" : "pubsub-light", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/PubSub+Light+Plugin", + "version" : "1.12" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "1.14" + }, + { + "optional" : false, + "shortName" : "workflow-support", + "version" : "1.14" + }, + { + "optional" : false, + "shortName" : "mailer", + "version" : "1.5" + }, + { + "optional" : false, + "shortName" : "matrix-project", + "version" : "1.4" + }, + { + "optional" : false, + "shortName" : "script-security", + "version" : "1.26" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Lockable Resources plugin", + "pinned" : false, + "requiredCoreVersion" : "1.609.1", + "shortName" : "lockable-resources", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Lockable+Resources+Plugin", + "version" : "2.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "blueocean-pipeline-scm-api", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "blueocean-rest-impl", + "version" : "1.4.2" + }, + { + "optional" : false, + "shortName" : "workflow-api", + "version" : "2.22" + }, + { + "optional" : false, + "shortName" : "workflow-cps", + "version" : "2.42" + }, + { + "optional" : false, + "shortName" : "workflow-durable-task-step", + "version" : "2.13" + }, + { + "optional" : false, + "shortName" : "workflow-job", + "version" : "2.14.1" + }, + { + "optional" : false, + "shortName" : "workflow-multibranch", + "version" : "2.16" + }, + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "2.14" + }, + { + "optional" : false, + "shortName" : "workflow-support", + "version" : "2.14" + }, + { + "optional" : false, + "shortName" : "branch-api", + "version" : "2.0.11" + }, + { + "optional" : false, + "shortName" : "credentials", + "version" : "2.1.14" + }, + { + "optional" : false, + "shortName" : "git", + "version" : "3.6.0" + }, + { + "optional" : false, + "shortName" : "github-branch-source", + "version" : "2.2.3" + }, + { + "optional" : false, + "shortName" : "htmlpublisher", + "version" : "1.14" + }, + { + "optional" : false, + "shortName" : "pipeline-graph-analysis", + "version" : "1.6" + }, + { + "optional" : false, + "shortName" : "pipeline-input-step", + "version" : "2.8" + }, + { + "optional" : false, + "shortName" : "pipeline-stage-step", + "version" : "2.2" + }, + { + "optional" : false, + "shortName" : "plain-credentials", + "version" : "1.3" + }, + { + "optional" : false, + "shortName" : "scm-api", + "version" : "2.2.2" + }, + { + "optional" : false, + "shortName" : "pipeline-model-definition", + "version" : "1.2.5" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline implementation for Blue Ocean", + "pinned" : false, + "requiredCoreVersion" : "2.73.3", + "shortName" : "blueocean-pipeline-api-impl", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Blue+Ocean+Plugin", + "version" : "1.4.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "mailer", + "version" : "1.18" + }, + { + "optional" : false, + "shortName" : "matrix-project", + "version" : "1.7.1" + }, + { + "optional" : false, + "shortName" : "token-macro", + "version" : "2.0" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Favorite", + "pinned" : false, + "requiredCoreVersion" : "1.625.3", + "shortName" : "favorite", + "supportsDynamicLoad" : "MAYBE", + "url" : "http://wiki.jenkins-ci.org/display/JENKINS/Favorite+Plugin", + "version" : "2.3.1" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "JavaScript GUI Lib: Moment.js bundle plugin", + "pinned" : false, + "requiredCoreVersion" : "1.580.1", + "shortName" : "momentjs", + "supportsDynamicLoad" : "YES", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Moment.js", + "version" : "1.1.1" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "apache-httpcomponents-client-4-api", + "version" : "4.5.3-2.0" + }, + { + "optional" : false, + "shortName" : "display-url-api", + "version" : "0.2" + }, + { + "optional" : false, + "shortName" : "git", + "version" : "3.5.0" + }, + { + "optional" : false, + "shortName" : "handy-uri-templates-2-api", + "version" : "2.1.6-1.0" + }, + { + "optional" : false, + "shortName" : "mercurial", + "version" : "2.0" + }, + { + "optional" : false, + "shortName" : "scm-api", + "version" : "2.2.0" + }, + { + "optional" : false, + "shortName" : "structs", + "version" : "1.9" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Bitbucket Branch Source Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.642.3", + "shortName" : "cloudbees-bitbucket-branch-source", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins.io/display/JENKINS/Bitbucket+Branch+Source+Plugin", + "version" : "2.2.10" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-api", + "version" : "2.20" + }, + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "2.14" + }, + { + "optional" : false, + "shortName" : "scm-api", + "version" : "2.1.1" + }, + { + "optional" : false, + "shortName" : "script-security", + "version" : "1.40" + }, + { + "optional" : false, + "shortName" : "structs", + "version" : "1.10" + }, + { + "optional" : true, + "shortName" : "workflow-cps", + "version" : "2.41" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline Utility Steps", + "pinned" : false, + "requiredCoreVersion" : "2.7.3", + "shortName" : "pipeline-utility-steps", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins.io/display/JENKINS/Pipeline+Utility+Steps+Plugin", + "version" : "2.0.2" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "structs", + "version" : "1.13" + }, + { + "optional" : false, + "shortName" : "script-security", + "version" : "1.25" + }, + { + "optional" : true, + "shortName" : "config-file-provider", + "version" : "2.15.4" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Job DSL", + "pinned" : false, + "requiredCoreVersion" : "2.73", + "shortName" : "job-dsl", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Job+DSL+Plugin", + "version" : "1.68" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "credentials", + "version" : "2.1.0" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "SSH Credentials Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.609", + "shortName" : "ssh-credentials", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/SSH+Credentials+Plugin", + "version" : "1.13" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-scm-step", + "version" : "1.14.2" + }, + { + "optional" : false, + "shortName" : "credentials", + "version" : "2.1.14" + }, + { + "optional" : false, + "shortName" : "git-client", + "version" : "2.7.0" + }, + { + "optional" : false, + "shortName" : "mailer", + "version" : "1.18" + }, + { + "optional" : false, + "shortName" : "matrix-project", + "version" : "1.7.1" + }, + { + "optional" : false, + "shortName" : "scm-api", + "version" : "2.2.0" + }, + { + "optional" : false, + "shortName" : "ssh-credentials", + "version" : "1.13" + }, + { + "optional" : false, + "shortName" : "structs", + "version" : "1.10" + }, + { + "optional" : true, + "shortName" : "token-macro", + "version" : "1.12.1" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Jenkins Git plugin", + "pinned" : false, + "requiredCoreVersion" : "1.625.3", + "shortName" : "git", + "supportsDynamicLoad" : "MAYBE", + "url" : "http://wiki.jenkins-ci.org/display/JENKINS/Git+Plugin", + "version" : "3.8.0" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "pubsub-light", + "version" : "1.6" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Server Sent Events (SSE) Gateway Plugin", + "pinned" : false, + "requiredCoreVersion" : "2.2", + "shortName" : "sse-gateway", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/SSE+Gateway+Plugin", + "version" : "1.15" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "credentials", + "version" : "2.1.5" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Plain Credentials Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.609", + "shortName" : "plain-credentials", + "supportsDynamicLoad" : "MAYBE", + "url" : "http://wiki.jenkins-ci.org/display/JENKINS/Plain+Credentials+Plugin", + "version" : "1.4" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "token-macro", + "version" : "1.5.1" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Build Timeout", + "pinned" : false, + "requiredCoreVersion" : "1.625.1", + "shortName" : "build-timeout", + "supportsDynamicLoad" : "MAYBE", + "url" : "http://wiki.jenkins-ci.org/display/JENKINS/Build-timeout+Plugin", + "version" : "1.19" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-durable-task-step", + "version" : "2.4" + }, + { + "optional" : false, + "shortName" : "matrix-project", + "version" : "1.7.1" + }, + { + "optional" : false, + "shortName" : "resource-disposer", + "version" : "0.3" + }, + { + "optional" : false, + "shortName" : "structs", + "version" : "1.5" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Jenkins Workspace Cleanup Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.642.1", + "shortName" : "ws-cleanup", + "supportsDynamicLoad" : "MAYBE", + "url" : "http://wiki.jenkins-ci.org/display/JENKINS/Workspace+Cleanup+Plugin", + "version" : "0.34" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "junit", + "version" : "1.20" + }, + { + "optional" : false, + "shortName" : "script-security", + "version" : "1.13" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Matrix Project Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.609", + "shortName" : "matrix-project", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Matrix+Project+Plugin", + "version" : "1.13" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "mailer", + "version" : "1.20" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "LDAP Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.651.3", + "shortName" : "ldap", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/LDAP+Plugin", + "version" : "1.20" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "credentials", + "version" : "1.22" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Authentication Tokens API Plugin", + "pinned" : false, + "requiredCoreVersion" : "1.580.1", + "shortName" : "authentication-tokens", + "supportsDynamicLoad" : "YES", + "url" : "http://wiki.jenkins-ci.org/display/JENKINS/Authentication+Tokens+API+Plugin", + "version" : "1.3" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Jackson 2 API Plugin", + "pinned" : false, + "requiredCoreVersion" : "2.60.3", + "shortName" : "jackson2-api", + "supportsDynamicLoad" : "YES", + "url" : "https://wiki.jenkins.io/display/JENKINS/Jackson2+API+Plugin", + "version" : "2.8.11.1" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "pipeline-model-extensions", + "version" : "1.1.1" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Pipeline: Declarative Agent API", + "pinned" : false, + "requiredCoreVersion" : "2.7.1", + "shortName" : "pipeline-model-declarative-agent", + "supportsDynamicLoad" : "YES", + "url" : "https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Model+Definition+Plugin", + "version" : "1.1.1" + }, + { + "active" : true, + "backupVersion" : null, + "bundled" : false, + "deleted" : false, + "dependencies" : [ + { + "optional" : false, + "shortName" : "workflow-step-api", + "version" : "2.10" + }, + { + "optional" : false, + "shortName" : "credentials", + "version" : "2.1.7" + }, + { + "optional" : false, + "shortName" : "plain-credentials", + "version" : "1.3" + }, + { + "optional" : false, + "shortName" : "ssh-credentials", + "version" : "1.11" + }, + { + "optional" : false, + "shortName" : "structs", + "version" : "1.7" + }, + { + "optional" : false, + "shortName" : "bouncycastle-api", + "version" : "2.16.0" + }, + { + "optional" : false, + "shortName" : "command-launcher", + "version" : "1.0" + } + ], + "downgradable" : false, + "enabled" : true, + "hasUpdate" : false, + "longName" : "Credentials Binding Plugin", + "pinned" : false, + "requiredCoreVersion" : "2.7.3", + "shortName" : "credentials-binding", + "supportsDynamicLoad" : "MAYBE", + "url" : "https://wiki.jenkins.io/display/JENKINS/Credentials+Binding+Plugin", + "version" : "1.16" + } + ] +} \ No newline at end of file diff --git a/test/integration/groovy/uk/org/floop/jenkins_pmd/DrafterTests.groovy b/test/integration/groovy/uk/org/floop/jenkins_pmd/DrafterTests.groovy new file mode 100644 index 0000000..d45330e --- /dev/null +++ b/test/integration/groovy/uk/org/floop/jenkins_pmd/DrafterTests.groovy @@ -0,0 +1,43 @@ +package uk.org.floop.jenkins_pmd + +import com.github.tomakehurst.wiremock.junit.WireMockRule +import static com.github.tomakehurst.wiremock.client.WireMock.* +import static com.github.tomakehurst.wiremock.core.WireMockConfiguration.wireMockConfig + +import org.jenkinsci.plugins.workflow.cps.CpsFlowDefinition +import org.jenkinsci.plugins.workflow.job.WorkflowJob +import org.jenkinsci.plugins.workflow.job.WorkflowRun +import org.junit.Before +import org.junit.Rule +import org.junit.Test +import org.jvnet.hudson.test.JenkinsRule + +class DrafterTests { + + @Rule + public JenkinsRule rule = new JenkinsRule() + + @Rule + public WireMockRule wireMockRule = new WireMockRule(8123) + + @Before + void configureGlobalGitLibraries() { + RuleBootstrapper.setup(rule) + } + + @Test + void "testing library that uses declarative pipeline libraries"() { + stubFor(get(urlMatching("/v1/draftsets.*")) + .willReturn(okJson('{"blah"}'))) + final CpsFlowDefinition flow = new CpsFlowDefinition(''' + + echo drafter.listDraftsets('http://localhost:8123', null, 'true') + '''.stripIndent(), true) + final WorkflowJob workflowJob = rule.createProject(WorkflowJob, 'project') + workflowJob.definition = flow + + final WorkflowRun firstResult = rule.buildAndAssertSuccess(workflowJob) + rule.assertLogContains('Listing draftsets...', firstResult) + } + +} diff --git a/test/integration/groovy/uk/org/floop/jenkins_pmd/RuleBootstrapper.groovy b/test/integration/groovy/uk/org/floop/jenkins_pmd/RuleBootstrapper.groovy new file mode 100644 index 0000000..65cd4b2 --- /dev/null +++ b/test/integration/groovy/uk/org/floop/jenkins_pmd/RuleBootstrapper.groovy @@ -0,0 +1,27 @@ +package uk.org.floop.jenkins_pmd + +import com.mkobit.jenkins.pipelines.codegen.LocalLibraryRetriever +import org.jenkinsci.plugins.workflow.libs.GlobalLibraries +import org.jenkinsci.plugins.workflow.libs.LibraryConfiguration +import org.jenkinsci.plugins.workflow.libs.LibraryRetriever +import org.jvnet.hudson.test.JenkinsRule + +final class RuleBootstrapper { + private RuleBootstrapper() { + } + + /** + * This demonstrates how you can can configure the {@link JenkinsRule} to use the local source code + * as a {@link LibraryConfiguration}. In this example we are making it implicitly loaded. + */ + static void setup(JenkinsRule rule) { + rule.timeout = 30 + final LibraryRetriever retriever = new LocalLibraryRetriever() + final LibraryConfiguration localLibrary = + new LibraryConfiguration('testLibrary', retriever) + localLibrary.implicit = true + localLibrary.defaultVersion = 'unused' + localLibrary.allowVersionOverride = false + GlobalLibraries.get().libraries = [localLibrary] + } +}