You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
2.1 KiB
43 lines
2.1 KiB
= Continuous Integration |
|
|
|
image:https://jenkins.spring.io/buildStatus/icon?job=spring-data-mongodb%2Fmain&subject=Moore%20(main)[link=https://jenkins.spring.io/view/SpringData/job/spring-data-mongodb/] |
|
image:https://jenkins.spring.io/buildStatus/icon?job=spring-data-mongodb%2F2.1.x&subject=Lovelace%20(2.1.x)[link=https://jenkins.spring.io/view/SpringData/job/spring-data-mongodb/] |
|
image:https://jenkins.spring.io/buildStatus/icon?job=spring-data-mongodb%2F1.10.x&subject=Ingalls%20(1.10.x)[link=https://jenkins.spring.io/view/SpringData/job/spring-data-mongodb/] |
|
|
|
== Running CI tasks locally |
|
|
|
Since this pipeline is purely Docker-based, it's easy to: |
|
|
|
* Debug what went wrong on your local machine. |
|
* Test out a a tweak to your test routine before sending it out. |
|
* Experiment against a new image before submitting your pull request. |
|
|
|
All of these use cases are great reasons to essentially run what the CI server does on your local machine. |
|
|
|
IMPORTANT: To do this you must have Docker installed on your machine. |
|
|
|
1. `docker run -it --mount type=bind,source="$(pwd)",target=/spring-data-mongodb-github springci/spring-data-openjdk17-with-mongodb-5.0.3:latest /bin/bash` |
|
+ |
|
This will launch the Docker image and mount your source code at `spring-data-mongodb-github`. |
|
+ |
|
2. `cd spring-data-mongodb-github` |
|
+ |
|
Next, run the tests from inside the container: |
|
+ |
|
3. `./mvnw clean dependency:list test -Dsort -Dbundlor.enabled=false -B` (or with whatever profile you need to test out) |
|
|
|
Since the container is binding to your source, you can make edits from your IDE and continue to run build jobs. |
|
|
|
If you need to package things up, do this: |
|
|
|
1. `docker run -it --mount type=bind,source="$(pwd)",target=/spring-data-mongodb-github springci/spring-data-openjdk8-with-mongodb-4.0:latest /bin/bash` |
|
+ |
|
This will launch the Docker image and mount your source code at `spring-data-mongodb-github`. |
|
+ |
|
2. `cd spring-data-mongodb-github` |
|
+ |
|
Next, package things from inside the container doing this: |
|
+ |
|
3. `./mvnw clean dependency:list package -Dsort -Dbundlor.enabled=false -B` |
|
|
|
NOTE: Docker containers can eat up disk space fast! From time to time, run `docker system prune` to clean out old images.
|
|
|