Skip to content

Commit 2b23e95

Browse files
committed
Upgrade pipeline to use new Concourse features.
1 parent e4cf0f2 commit 2b23e95

File tree

3 files changed

+203
-81
lines changed

3 files changed

+203
-81
lines changed

README.adoc

+7-7
Original file line numberDiff line numberDiff line change
@@ -22,37 +22,37 @@ Check the matrix below to see the status of supported versions:
2222
| Job | `master` branch (`2.2`) | `2.1.x` | `2.0.x`
2323

2424
| Test - JDK 8
25-
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb/jobs/Test%20-%20JDK%208/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb"]
25+
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb/jobs/spring-session-data-mongodb-test-jdk8/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb"]
2626
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb-2.1.x/jobs/Test%20-%20JDK%208/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb-2.1.x"]
2727
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb-2.0.x/jobs/Test%20-%20JDK%208/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb-2.0.x"]
2828

2929
| Test - JDK 8 and Spring.NEXT (snapshots)
30-
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb/jobs/Test%20-%20JDK%208%20and%20Spring.NEXT/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb"]
30+
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb/jobs/spring-session-data-mongodb-test-jdk8-spring-next/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb"]
3131
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb-2.1.x/jobs/Test%20-%20JDK%208%20and%20Spring.NEXT/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb-2.1.x"]
3232
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb-2.0.x/jobs/Test%20-%20JDK%208%20and%20Spring.NEXT/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb-2.0.x"]
3333

3434
| Test - JDK 11
35-
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb/jobs/Test%20-%20JDK%2011/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb"]
35+
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb/jobs/spring-session-data-mongodb-test-jdk11/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb"]
3636
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb-2.1.x/jobs/Test%20-%20JDK%2011/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb-2.1.x"]
3737
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb-2.0.x/jobs/Test%20-%20JDK%2011/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb-2.0.x"] *
3838

3939
| Test - JDK 11 and Spring.NEXT (snapshots)
40-
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb/jobs/Test%20-%20JDK%2011%20and%20Spring.NEXT/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb"]
40+
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb/jobs/spring-session-data-mongodb-test-jdk11-spring-next/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb"]
4141
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb-2.1.x/jobs/Test%20-%20JDK%2011%20and%20Spring.NEXT/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb-2.1.x"]
4242
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb-2.0.x/jobs/Test%20-%20JDK%2011%20and%20Spring.NEXT/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb-2.0.x"] *
4343

4444
| Test - JDK 13*
45-
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb/jobs/Test%20-%20JDK%2013/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb"] *
45+
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb/jobs/spring-session-data-mongodb-test-jdk13/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb"] *
4646
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb-2.1.x/jobs/Test%20-%20JDK%2013/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb-2.1.x"] *
4747
|
4848

4949
| Test - JDK 13* and Spring.NEXT (snapshots)
50-
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb/jobs/Test%20-%20JDK%2013%20and%20Spring.NEXT/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb"] *
50+
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb/jobs/spring-session-data-mongodb-test-jdk13-spring-next/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb"] *
5151
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb-2.1.x/jobs/Test%20-%20JDK%2013%20and%20Spring.NEXT/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb-2.1.x"] *
5252
|
5353

5454
| Build - Release to repo.spring.io
55-
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb/jobs/Build/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb"]
55+
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb/jobs/build/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb"]
5656
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb-2.1.x/jobs/Build/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb-2.1.x"]
5757
| image:https://ci.spring.io/api/v1/teams/spring-team/pipelines/spring-session-data-mongodb-2.0.x/jobs/Build/badge[link="https://ci.spring.io/teams/spring-team/pipelines/spring-session-data-mongodb-2.0.x"]
5858

ci/README.adoc

+45-6
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ WARNING: Do NOT check this file into source control! If you'll check, `credentia
2828
With this in place, run the following `fly` commands to create pipelines:
2929

3030
----
31-
% fly -t spring-team sp -p spring-session-data-mongodb -c ci/pipeline-template.yml -l credentials.yml -v branch=master -v release-branch=release
31+
% fly -t spring-team sp -p spring-session-data-mongodb -c ci/pipeline-template.yml -l credentials.yml -v branch=master
3232
----
3333

3434
With this pipeline in place, you can now activate and expose it:
@@ -45,11 +45,50 @@ With this pipeline in place, you can now activate and expose it:
4545
% ci/create-release.sh <release version> <next snapshot version>
4646
----
4747

48-
2. With the release tagged, push the tagged version to the release branch.
48+
2. With the release officially tagged, just push it to master.
4949
----
50-
% git checkout -b release
51-
% git reset --hard <tag>
52-
% git push -f origin release
50+
% git push
5351
----
5452

55-
NOTE: You can chain the previous set of commands together using `&&`.
53+
The pipeline will pick up the next tag and release it. It will also build a new snapshot and stage it on artifactory.
54+
55+
56+
=== Running CI tasks locally
57+
58+
Since Concourse is built on top of Docker, it's easy to:
59+
60+
* Debug what went wrong on your local machine.
61+
* Test out a a tweak to your `test.sh` script before sending it out.
62+
* Experiment against a new image before submitting your pull request.
63+
64+
All of these use cases are great reasons to essentially run what Concourse does on your local machine.
65+
66+
IMPORTANT: To do this you must have Docker installed on your machine.
67+
68+
1. `docker run -it --mount type=bind,source="$(pwd)",target=/spring-session-data-mongodb-github openjdk:8-jdk /bin/bash`
69+
+
70+
This will launch the Docker image and mount your source code at `spring-session-data-mongodb-github`.
71+
+
72+
Next, run the `test.sh` script from inside the container:
73+
+
74+
2. `PROFILE=none spring-session-data-mongodb-github/ci/test.sh`
75+
76+
Since the container is binding to your source, you can make edits from your IDE and continue to run build jobs.
77+
78+
If you need to test the `build.sh` script, then do this:
79+
80+
1. `mkdir /tmp/spring-session-data-mongodb-artifactory`
81+
2. `docker run -it --mount type=bind,source="$(pwd)",target=/spring-session-data-mongodb-github --mount type=bind,source="/tmp/spring-session-data-mongodb-artifactory",target=/spring-session-data-mongodb-artifactory openjdk:8-jdk /bin/bash`
82+
+
83+
This will launch the Docker image and mount your source code at `spring-session-data-mongodb-github` and the temporary
84+
artifactory output directory at `spring-session-data-mongodb-artifactory`.
85+
+
86+
Next, run the `build.sh` script from inside the container:
87+
+
88+
3. `spring-session-data-mongodb-github/ci/build.sh`
89+
90+
IMPORTANT: `build.sh` doesn't actually push to Artifactory so don't worry about accidentally deploying anything.
91+
It just deploys to a local folder. That way, the `artifactory-resource` later in the pipeline can pick up these artifacts
92+
and deliver them to artifactory.
93+
94+
NOTE: Docker containers can eat up disk space fast! From time to time, run `docker system prune` to clean out old images.

0 commit comments

Comments
 (0)