Updated plugins from experimental UC.

This commit is contained in:
Jesse Glick 2018-10-08 15:24:32 -04:00
parent 2ba6c478eb
commit 069eb8691d
No known key found for this signature in database
GPG Key ID: 1DDA69D94B624311
7 changed files with 113 additions and 36 deletions

1
.gitignore vendored
View File

@ -1,4 +1,3 @@
*.sw*
build/
update-center.json
shunit2

2
services/.gitignore vendored
View File

@ -113,4 +113,6 @@ $RECYCLE.BIN/
lib/
data/
ingest.json
update-center.json
update-center-experimental.json
commit.txt

View File

@ -127,8 +127,14 @@ publish: container
update-center.json:
wget -O update-center.json https://updates.jenkins.io/update-center.actual.json
update-center-experimental.json:
wget -O update-center-experimental.json https://updates.jenkins.io/experimental/update-center.actual.json
propose-updates: update-center.json
node ./prepare-essentials propose-updates
node ./prepare-essentials propose-updates --uc ./update-center.json
propose-experimental-updates: update-center-experimental.json
node ./prepare-essentials propose-updates --uc ./update-center-experimental.json
generate-essentials: essentials.yaml prepare-essentials update-center.json
node ./prepare-essentials save

View File

@ -85,8 +85,15 @@ class ManifestResolver {
plugin.optional = false;
}
var ok;
try {
ok = compareVersions(needed[artifactId].version, plugin.version) == 1;
} catch (x) {
logger.warn(`Cannot compare ${artifactId}:${needed[artifactId].version} to ${plugin.version}: ${x}`);
ok = true;
}
// The plugin version requested is lower than one we already have.
if (compareVersions(needed[artifactId].version, plugin.version) == 1) {
if (ok) {
if (!plugin.optional) {
/*
* If version of the plugin which is already present is considered
@ -204,6 +211,7 @@ class ManifestResolver {
return false;
}).forEach((dep) => {
envNeeds[dep] = deps[dep];
// TODO this is printing bogus messages like: The docker-cloud environment also needs docker-plugin
logger.info(`The ${environment} environment also needs ${dep}`);
});
this.environmentNeeded[environment] = envNeeds;

View File

@ -38,6 +38,10 @@ class Manifest {
return this.data.spec.plugins;
}
getActualPlugins() {
return this.data.status.plugins;
}
getCore() {
return this.data.spec.core;
}

View File

@ -8,7 +8,7 @@ spec:
plugins:
- groupId: io.jenkins
artifactId: configuration-as-code
version: '1.0'
version: '1.1'
- groupId: io.jenkins.plugins
artifactId: evergreen
version: 1.0-rc58.a9ecd200b39a
@ -18,12 +18,18 @@ spec:
- groupId: io.jenkins.blueocean
artifactId: blueocean
version: 1.8.4
- groupId: org.jenkins-ci.plugins
artifactId: cloudbees-bitbucket-branch-source
version: 2.2.12
- groupId: org.jenkins-ci.plugins
artifactId: config-file-provider
version: '3.2'
- groupId: org.jenkins-ci.plugins
artifactId: credentials-binding
version: '1.16'
- groupId: org.jenkins-ci.plugins
artifactId: docker-workflow
version: '1.17'
- groupId: org.jenkins-ci.plugins
artifactId: git
version: 4.0.0-rc2892.70634f157021
@ -39,27 +45,57 @@ spec:
- groupId: org.jenkins-ci.plugins
artifactId: junit
version: 1.26.1
- groupId: org.jvnet.hudson.plugins
artifactId: favorite
version: 2.3.2
- groupId: com.coravy.hudson.plugins.github
artifactId: github
version: 1.29.2
version: 1.29.3
- groupId: org.jenkins-ci.plugins
artifactId: github-api
version: '1.92'
- groupId: org.jenkins-ci.plugins
artifactId: github-branch-source
version: 2.3.6
version: 2.4.0
- groupId: org.jenkins-ci.plugins
artifactId: htmlpublisher
version: '1.16'
version: '1.17'
- groupId: org.jenkins-ci.plugins
artifactId: jackson2-api
version: 2.9.7.0-beta
- groupId: org.jenkins-ci.plugins
artifactId: mailer
version: '1.21'
- groupId: org.jenkins-ci.plugins
artifactId: matrix-project
version: '1.13'
- groupId: org.jenkins-ci.plugins
artifactId: mercurial
version: '2.4'
- groupId: org.jenkins-ci.plugins
artifactId: ssh-agent
version: '1.16'
version: '1.17'
- groupId: org.jenkins-ci.plugins.workflow
artifactId: workflow-aggregator
version: '2.6'
- groupId: org.jenkins-ci.plugins.workflow
artifactId: workflow-api
version: 2.30-beta-1
- groupId: org.jenkins-ci.plugins.workflow
artifactId: workflow-cps
version: 2.58-beta-1
- groupId: org.jenkins-ci.plugins.workflow
artifactId: workflow-cps-global-lib
version: '2.12'
- groupId: org.jenkins-ci.plugins.workflow
artifactId: workflow-job
version: 2.26-beta-1
- groupId: org.jenkins-ci.plugins.workflow
artifactId: workflow-scm-step
version: '2.7'
- groupId: org.jenkins-ci.plugins.workflow
artifactId: workflow-support
version: 2.21-beta-1
- groupId: org.jenkins-ci.plugins
artifactId: metrics
version: 4.0.2.2
@ -78,6 +114,12 @@ spec:
- groupId: org.jenkins-ci.plugins
artifactId: script-security
version: '1.46'
- groupId: org.jenkins-ci.plugins
artifactId: sse-gateway
version: '1.16'
- groupId: org.jenkins-ci.plugins
artifactId: structs
version: '1.17'
- groupId: org.jenkins-ci.plugins
artifactId: docker-commons
version: '1.13'
@ -87,6 +129,15 @@ spec:
- groupId: org.jenkins-ci.plugins
artifactId: jira
version: 3.0.2
- groupId: org.jenkins-ci.ui
artifactId: ace-editor
version: '1.1'
- groupId: org.jenkins-ci.ui
artifactId: handlebars
version: 1.1.1
- groupId: org.jenkins-ci.ui
artifactId: momentjs
version: 1.1.1
environments:
- name: docker-cloud
plugins:
@ -113,7 +164,7 @@ status:
plugins:
- groupId: org.jenkins-ci.ui
artifactId: ace-editor
version: 1.0.1
version: '1.1'
- groupId: org.jenkins-ci.plugins
artifactId: apache-httpcomponents-client-4-api
version: 4.5.5-3.0
@ -194,7 +245,7 @@ status:
version: '2.9'
- groupId: org.jenkins-ci.plugins
artifactId: cloudbees-bitbucket-branch-source
version: 2.2.9
version: 2.2.12
- groupId: org.jenkins-ci.plugins
artifactId: cloudbees-folder
version: '6.6'
@ -203,7 +254,7 @@ status:
version: '3.2'
- groupId: io.jenkins
artifactId: configuration-as-code
version: '1.0'
version: '1.1'
- groupId: org.jenkins-ci.plugins
artifactId: credentials
version: 2.1.18
@ -218,7 +269,7 @@ status:
version: '1.13'
- groupId: org.jenkins-ci.plugins
artifactId: docker-workflow
version: '1.14'
version: '1.17'
- groupId: org.jenkins-ci.plugins
artifactId: durable-task
version: '1.26'
@ -230,7 +281,7 @@ status:
version: 1.0-rc58.a9ecd200b39a
- groupId: org.jvnet.hudson.plugins
artifactId: favorite
version: 2.3.1
version: 2.3.2
- groupId: org.jenkins-ci.plugins
artifactId: git
version: 4.0.0-rc2892.70634f157021
@ -242,28 +293,28 @@ status:
version: '1.7'
- groupId: com.coravy.hudson.plugins.github
artifactId: github
version: 1.29.2
version: 1.29.3
- groupId: org.jenkins-ci.plugins
artifactId: github-api
version: '1.90'
version: '1.92'
- groupId: org.jenkins-ci.plugins
artifactId: github-branch-source
version: 2.3.6
version: 2.4.0
- groupId: org.jenkins-ci.ui
artifactId: handlebars
version: '1.1'
version: 1.1.1
- groupId: org.jenkins-ci.plugins
artifactId: handy-uri-templates-2-api
version: 2.1.6-1.0
- groupId: org.jenkins-ci.plugins
artifactId: htmlpublisher
version: '1.16'
version: '1.17'
- groupId: org.jenkins-ci.plugins.icon-shim
artifactId: icon-shim
version: 2.0.3
- groupId: org.jenkins-ci.plugins
artifactId: jackson2-api
version: 2.8.11.3
version: 2.9.7.0-beta
- groupId: org.jenkins-ci.plugins
artifactId: jdk-tool
version: '1.1'
@ -290,7 +341,7 @@ status:
version: '1.21'
- groupId: org.jenkins-ci.plugins
artifactId: matrix-project
version: '1.12'
version: '1.13'
- groupId: org.jenkins-ci.plugins
artifactId: mercurial
version: '2.4'
@ -299,7 +350,7 @@ status:
version: 4.0.2.2
- groupId: org.jenkins-ci.ui
artifactId: momentjs
version: '1.1'
version: 1.1.1
- groupId: org.jenkins-ci.plugins
artifactId: pipeline-build-step
version: '2.7'
@ -350,16 +401,16 @@ status:
version: '1.46'
- groupId: org.jenkins-ci.plugins
artifactId: sse-gateway
version: '1.15'
version: '1.16'
- groupId: org.jenkins-ci.plugins
artifactId: ssh-agent
version: '1.16'
version: '1.17'
- groupId: org.jenkins-ci.plugins
artifactId: ssh-credentials
version: '1.14'
- groupId: org.jenkins-ci.plugins
artifactId: structs
version: '1.15'
version: '1.17'
- groupId: org.jenkins-ci.plugins
artifactId: token-macro
version: '2.5'
@ -371,34 +422,34 @@ status:
version: '2.6'
- groupId: org.jenkins-ci.plugins.workflow
artifactId: workflow-api
version: '2.29'
version: 2.30-beta-1
- groupId: org.jenkins-ci.plugins.workflow
artifactId: workflow-basic-steps
version: '2.11'
- groupId: org.jenkins-ci.plugins.workflow
artifactId: workflow-cps
version: '2.56'
version: 2.58-beta-1
- groupId: org.jenkins-ci.plugins.workflow
artifactId: workflow-cps-global-lib
version: '2.11'
version: '2.12'
- groupId: org.jenkins-ci.plugins.workflow
artifactId: workflow-durable-task-step
version: '2.22'
- groupId: org.jenkins-ci.plugins.workflow
artifactId: workflow-job
version: '2.25'
version: 2.26-beta-1
- groupId: org.jenkins-ci.plugins.workflow
artifactId: workflow-multibranch
version: '2.20'
- groupId: org.jenkins-ci.plugins.workflow
artifactId: workflow-scm-step
version: '2.6'
version: '2.7'
- groupId: org.jenkins-ci.plugins.workflow
artifactId: workflow-step-api
version: '2.16'
- groupId: org.jenkins-ci.plugins.workflow
artifactId: workflow-support
version: '2.20'
version: 2.21-beta-1
environments:
- name: docker-cloud
plugins:

View File

@ -13,15 +13,22 @@ logger.level = process.env.LOG_LEVEL || 'info';
yargs.command('propose-updates',
'Fetch the latest Update Center and propose updates',
() => {},
{uc: {}},
(argv) => {
const uc = UpdateCenter.fromFile('./update-center.json')
const uc = UpdateCenter.fromFile(argv.uc)
const manifest = Manifest.loadFile();
manifest.getPlugins().forEach((plugin) => {
manifest.getActualPlugins().forEach((plugin) => {
const updated = uc.plugins[plugin.artifactId]
if ((!plugin.version.match(/(.*?)-rc(\d+)\.(.*)?/)) &&
(compareVersions(updated.version, plugin.version) == 1)) {
logger.info(`The update center has a newer ${plugin.artifactId}: ${updated.version}`);
if (updated == null) {
logger.warn(`No such plugin ${plugin.artifactId}`);
} else if (!plugin.version.match(/(.*?)-rc(\d+)\.(.*)?/)) {
try {
if (compareVersions(updated.version, plugin.version) == 1) {
logger.info(`The update center has a newer ${plugin.artifactId}: ${updated.version}`);
}
} catch (x) {
logger.warn(`Could not compare ${plugin.artifactId}:${plugin.version} to ${updated.version}: ${x}`);
}
}
});
}