Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding 2.190.x line #110

Merged
merged 43 commits into from
Apr 8, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
1da7a95
Adding 2.190.x line.
jglick Sep 27, 2019
2079ea6
Pending https://github.com/jenkinsci/plugin-pom/pull/229 (or rejected…
jglick Sep 27, 2019
dd6fa80
Updated description of LTS lines.
jglick Sep 27, 2019
38dcd8e
Merge branch 'master' into 2.190.x
jglick Sep 30, 2019
94ce1ce
Merge branch 'master' into 2.190.x
jglick Oct 1, 2019
dcb18ca
Incorporating suggestion from https://github.com/jenkinsci/bom/pull/1…
jglick Oct 1, 2019
f9fbd0c
Merge branch 'bom-latest-amendment' into 2.190.x
jglick Oct 2, 2019
1c09193
Adjusting PCT exclusions:
jglick Oct 2, 2019
7114da5
No straightforward workaround for https://github.com/jenkinsci/ssh-cr…
jglick Oct 2, 2019
e17d94a
Merge branch 'master' into 2.190.x
jglick Oct 2, 2019
456dfd0
Another idea.
jglick Oct 4, 2019
c7c80eb
And another.
jglick Oct 4, 2019
30de2af
Merge branch 'master' into 2.190.x
timja Jan 18, 2020
c7323e7
Bump plain-credentials
timja Jan 28, 2020
1830e49
Merge branch 'master' into 2.190.x
timja Jan 28, 2020
be412d5
Fail slow
timja Jan 28, 2020
d0bfddf
Bump LTS version
timja Jan 29, 2020
88e908e
Bump jsch plugin version
timja Jan 29, 2020
33d1cd6
Add trilead to managed plugins
timja Jan 29, 2020
e455645
Fiddle with some plugin versions and remove unneeded ignores
timja Jan 29, 2020
b9a8c60
Add trilead to test cp
timja Jan 29, 2020
e422c06
Finally managed to manage trilead and prep passes locally
timja Jan 29, 2020
4f6bfba
Rerun CI
timja Jan 30, 2020
d90fbeb
Merge branch 'master' into 2.190.x
timja Jan 31, 2020
1acd85c
Bump timestamper
timja Feb 24, 2020
51727e2
Test if moving structs to the top helps
timja Mar 3, 2020
b9ad693
Merge branch '2.190.x' of github.com:jglick/bom into 2.190.x
timja Mar 3, 2020
6946de1
Restore sorted check
timja Mar 3, 2020
a070a33
Revert "Restore sorted check"
timja Mar 3, 2020
58c30df
Revert "Test if moving structs to the top helps"
timja Mar 3, 2020
19625c3
Disable trilead-api test
timja Mar 3, 2020
1f7d064
Don't fail the ls
timja Mar 3, 2020
5ac438f
Skip trilead failure
timja Mar 4, 2020
ea9fc4d
Ignore flakey tests
timja Mar 4, 2020
081f24d
Fix typo
timja Mar 4, 2020
c721643
Update failFast
timja Mar 5, 2020
5bc859d
Merge branch 'master' into 2.190.x
timja Apr 8, 2020
302506f
Merge branch '2.190.x' of github.com:jglick/bom into 2.190.x
timja Apr 8, 2020
37e2b4f
Rerun CI
timja Apr 8, 2020
ba27634
https://github.com/jenkinsci/workflow-basic-steps-plugin/pull/110#iss…
jglick Apr 8, 2020
5bc5fba
https://github.com/jenkinsci/workflow-durable-task-step-plugin/pull/1…
jglick Apr 8, 2020
77183ce
Use 4.x parent for sample-plugin
jglick Apr 8, 2020
b304806
Revert "Use 4.x parent for sample-plugin"
jglick Apr 8, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 8 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -126,17 +126,21 @@ It is unusual but possible for cross-component incompatibilities to only be visi

## LTS lines

A separate BOM artifact if available for the current LTS line and a few historical lines.
A separate BOM artifact is available for the current LTS line and a few historical lines.
When a new LTS line is released (`jenkins-2.nnn.1`),
the main definition should be moved into its BOM,
the main definition should be moved into its BOM (added to the aggregator POM),
and the the previous BOM made to inherit from it.
Older BOMs should only specify plugin version overrides compared to the next-newer BOM.
`sample-plugin` also needs a POM profile for each supported line.
`sample-plugin` should be updated to use the latest line by default,
and get a new POM profile for the penultimate.
To get ahead of problems, prepare the draft PR for a line as soon as its baseline is announced.

The CI build (or just `mvn test -P2.nnn.x`) will fail if some managed plugins are too new for the LTS line.
[This script](https://gist.github.com/jglick/0a85759ea65f60e107ac5a85a5032cae)
is a handy way to find the most recently released plugin version compatible with a given line,
according to the `jenkins-infra/update-center2` (which currently maintains releases for the past five lines).
according to the `jenkins-infra/update-center2`.
The UC currently maintains releases for the past five lines,
so it is reasonable to retire BOMs for lines older than that.

## Releasing

Expand Down
37 changes: 37 additions & 0 deletions bom-2.176.x/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>io.jenkins.tools.bom</groupId>
<artifactId>parent</artifactId>
<version>${revision}${changelist}</version>
</parent>
<artifactId>bom-2.176.x</artifactId>
<packaging>pom</packaging>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>bom-2.190.x</artifactId>
<version>${project.version}</version>
<scope>import</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.jenkins-ci.plugins</groupId>
<artifactId>jsch</artifactId>
<version>0.1.55.1</version>
</dependency>
<dependency>
<groupId>org.jenkins-ci.plugins</groupId>
<artifactId>ssh-credentials</artifactId>
<version>1.17.3</version>
</dependency>
<dependency>
<groupId>org.jenkins-ci.plugins</groupId>
<artifactId>trilead-api</artifactId>
<version>1.0.3</version>
</dependency>
</dependencies>
</dependencyManagement>
</project>
11 changes: 8 additions & 3 deletions bom-latest/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<artifactId>parent</artifactId>
<version>${revision}${changelist}</version>
</parent>
<artifactId>bom-2.176.x</artifactId>
<artifactId>bom-2.190.x</artifactId>
<packaging>pom</packaging>
<properties>
<configuration-as-code-plugin.version>1.35</configuration-as-code-plugin.version>
Expand Down Expand Up @@ -179,7 +179,7 @@
<dependency>
<groupId>org.jenkins-ci.plugins</groupId>
<artifactId>jsch</artifactId>
<version>0.1.55.1</version>
<version>0.1.55.2</version>
</dependency>
<dependency>
<groupId>org.jenkins-ci.plugins</groupId>
Expand Down Expand Up @@ -235,7 +235,7 @@
<dependency>
<groupId>org.jenkins-ci.plugins</groupId>
<artifactId>ssh-credentials</artifactId>
<version>1.17.4</version>
<version>1.18.1</version>
</dependency>
<dependency>
<groupId>org.jenkins-ci.plugins</groupId>
Expand All @@ -257,6 +257,11 @@
<artifactId>token-macro</artifactId>
<version>2.12</version>
</dependency>
<dependency>
<groupId>org.jenkins-ci.plugins</groupId>
<artifactId>trilead-api</artifactId>
<version>1.0.5</version>
</dependency>
<dependency>
<groupId>org.jenkins-ci.plugins</groupId>
<artifactId>variant</artifactId>
Expand Down
50 changes: 37 additions & 13 deletions pct.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/bash
set -euxo pipefail
cd $(dirname $0)
cd "$(dirname "$0")"

# expects: megawar.war, pct.war, $PLUGINS, $LINE

Expand All @@ -21,12 +21,12 @@ then
fi

java -jar pct.jar \
-war $(pwd)/megawar.war \
-includePlugins $PLUGINS \
-workDirectory $(pwd)/pct-work \
-reportFile $(pwd)/pct-report.xml \
-war "$(pwd)/megawar.war" \
-includePlugins "${PLUGINS}" \
-workDirectory "$(pwd)/pct-work" \
-reportFile "$(pwd)/pct-report.xml" \
$PCT_S_ARG \
-mavenProperties "$MAVEN_PROPERTIES" \
-mavenProperties "${MAVEN_PROPERTIES}" \
-skipTestCache true

if grep -q -F -e '<status>INTERNAL_ERROR</status>' pct-report.xml
Expand All @@ -37,23 +37,47 @@ then
fi

# TODO rather than removing all these, have a text file of known failures and just convert them to “skipped”
if [ "$LINE" != 2.190.x ]
then
# TODO https://github.com/jenkinsci/jenkins/pull/4120 problems with workflow-cps → jquery-detached:
rm -fv pct-work/structs-plugin/plugin/target/surefire-reports/TEST-InjectedTest.xml
rm -fv pct-work/apache-httpcomponents-client-4-api/target/surefire-reports/TEST-InjectedTest.xml
rm -fv pct-work/ssh-slaves/target/surefire-reports/TEST-InjectedTest.xml
rm -fv pct-work/plain-credentials/target/surefire-reports/TEST-InjectedTest.xml
# TODO https://github.com/jenkinsci/jenkins/pull/4099
rm -fv pct-work/command-launcher/target/surefire-reports/TEST-hudson.slaves.CommandLauncher2Test.xml

# TODO wrong detached plugin is being picked up
# JavaScript GUI Lib: jQuery bundles (jQuery and jQuery UI) plugin v1.2 is older than required. To fix, install v1.2.1 or later.
# we have 1.12.4-1 managed currently
rm -fv pct-work/trilead-api/target/surefire-reports/TEST-InjectedTest.xml
fi

# TODO wrong detached plugin is being picked up
# Structs Plugin version 1.7 is older than required. To fix, install version 1.20 or later.
# we have 1.20 managed currently
rm -fv pct-work/cloudbees-folder/target/surefire-reports/TEST-InjectedTest.xml

# TODO https://github.com/jenkinsci/jenkins/pull/4120 problems with workflow-cps → jquery-detached:
rm -fv pct-work/structs-plugin/plugin/target/surefire-reports/TEST-InjectedTest.xml
rm -fv pct-work/apache-httpcomponents-client-4-api/target/surefire-reports/TEST-InjectedTest.xml
rm -fv pct-work/ssh-slaves/target/surefire-reports/TEST-InjectedTest.xml
rm -fv pct-work/plain-credentials/target/surefire-reports/TEST-InjectedTest.xml
# TODO flakey tests related to workflow-job saying it's finished but it still hasn't finished updating the log
# ref: https://github.com/jenkinsci/workflow-job-plugin/pull/131/files#r291657569
# https://github.com/jenkinsci/workflow-support-plugin/pull/105
# https://github.com/jenkinsci/workflow-durable-task-step-plugin/pull/130
# https://github.com/jenkinsci/workflow-basic-steps-plugin/pull/110
rm -fv pct-work/workflow-basic-steps/target/surefire-reports/TEST-org.jenkinsci.plugins.workflow.steps.CatchErrorStepTest.xml
rm -fv pct-work/workflow-basic-steps/target/surefire-reports/TEST-org.jenkinsci.plugins.workflow.steps.WaitForConditionStepTest.xml
rm -fv pct-work/workflow-basic-steps/target/surefire-reports/TEST-org.jenkinsci.plugins.workflow.support.steps.stash.StashTest.xml
rm -fv pct-work/workflow-support/target/surefire-reports/TEST-org.jenkinsci.plugins.workflow.support.pickles.serialization.SerializationSecurityTest.xml
rm -fv pct-work/workflow-durable-task-step/target/surefire-reports/TEST-org.jenkinsci.plugins.workflow.steps.durable_task.ShellStepTest.xml
rm -fv pct-work/workflow-durable-task-step/target/surefire-reports/TEST-org.jenkinsci.plugins.workflow.support.steps.ExecutorStepTest.xml
rm -fv pct-work/workflow-cps/target/surefire-reports/TEST-org.jenkinsci.plugins.workflow.cps.FlowDurabilityTest.xml
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@timja I do see flakes here but did you try to track this down?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

FlowDurabilityTest.testCompleteAndLoadBuilds expected:<...ne] End of Pipeline
[]> but was:<...ne] End of Pipeline
[Finished: SUCCESS
]>

specifically

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure it’s been a long time since I looked at these flakes

rm -fv pct-work/junit/target/surefire-reports/TEST-hudson.tasks.junit.pipeline.JUnitResultsStepTest.xml

# TODO pending https://github.com/jenkinsci/ansicolor-plugin/pull/164
rm -fv pct-work/ansicolor/target/surefire-reports/TEST-hudson.plugins.ansicolor.AnsiColorBuildWrapperTest.xml
# TODO https://github.com/jenkinsci/matrix-project-plugin/pull/59
rm -fv pct-work/matrix-project/target/surefire-reports/TEST-InjectedTest.xml
# TODO https://github.com/jenkinsci/jenkins/pull/4099 pending backport to 2.176.3
rm -fv pct-work/command-launcher/target/surefire-reports/TEST-hudson.slaves.CommandLauncher2Test.xml
# TODO https://github.com/jenkinsci/durable-task-plugin/pull/101
rm -fv pct-work/durable-task/target/surefire-reports/TEST-org.jenkinsci.plugins.durabletask.BourneShellScriptTest.xml
# TODO https://github.com/jenkinsci/git-client-plugin/pull/440
rm -fv pct-work/git-client/target/surefire-reports/TEST-hudson.plugins.git.GitExceptionTest.xml
# TODO fails for one reason in (non-PCT) official sources, run locally; and for another reason in PCT in Docker; passes in official sources in Docker, or locally in PCT
Expand Down
1 change: 1 addition & 0 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
</scm>
<modules>
<module>bom-latest</module>
<module>bom-2.176.x</module>
<module>bom-2.164.x</module>
<module>bom-2.150.x</module>
<module>sample-plugin</module>
Expand Down
1 change: 1 addition & 0 deletions prep.sh
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ do
fi
pushd sample-plugin/target
mkdir jenkins
# TODO keep managed splits, overriding version with the managed one
echo '# nothing' > jenkins/split-plugins.txt
cp -r jenkins-for-test megawar-$LINE
jar uvf megawar-$LINE/WEB-INF/lib/jenkins-core-*.jar jenkins/split-plugins.txt
Expand Down
17 changes: 15 additions & 2 deletions sample-plugin/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,10 @@
<properties>
<revision>7</revision>
<changelist>-SNAPSHOT</changelist>
<bom>2.176.x</bom>
<jenkins.version>2.176.3</jenkins.version>
<bom>2.190.x</bom>
<jenkins.version>2.190.3</jenkins.version>
<java.level>8</java.level>
<slf4jVersion>1.7.26</slf4jVersion> <!-- TODO when dropping 2.150.x, reapply 77183ce09cce0e75e5509b211e7cd8ae2774a292 to get 4.x parent -->
</properties>
<repositories>
<repository>
Expand Down Expand Up @@ -175,6 +176,11 @@
<artifactId>timestamper</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jenkins-ci.plugins</groupId>
<artifactId>trilead-api</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jenkins-ci.plugins</groupId>
<artifactId>token-macro</artifactId>
Expand Down Expand Up @@ -228,6 +234,13 @@
</plugins>
</build>
<profiles>
<profile>
<id>2.176.x</id>
<properties>
<bom>2.176.x</bom>
<jenkins.version>2.176.4</jenkins.version>
</properties>
</profile>
<profile>
<id>2.164.x</id>
<properties>
Expand Down