Files
spring-data-couchbase/CI.adoc
Greg L. Turnquist d75273c0f7 Migrate to main branch.
See #1117.
2021-04-15 12:49:20 -05:00

35 lines
1.8 KiB
Plaintext

= Continuous Integration
image:https://jenkins.spring.io/buildStatus/icon?job=spring-data-couchbase%2Fmain&subject=Moore%20(main)["Spring Data Couchbase", link="https://jenkins.spring
.io/view/SpringData/job/spring-data-couchbase/"]
image:https://jenkins.spring.io/buildStatus/icon?job=spring-data-couchbase%2F3.1.x&subject=Lovelace%20(3.1.x)["Spring Data Couchbase", link="https://jenkins.spring
.io/view/SpringData/job/spring-data-couchbase/"]
image:https://jenkins.spring.io/buildStatus/icon?job=spring-data-couchbase%2F2.2.x&subject=Ingalls%20(2.2.x)["Spring Data Couchbase", link="https://jenkins.spring
.io/view/SpringData/job/spring-data-couchbase/"]
== 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.sh` script 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-couchbase-github -v /usr/bin/docker:/usr/bin/docker -v /var/run/docker.sock:/var/run/docker.sock adoptopenjdk/openjdk8:latest /bin/bash`
+
This will launch the Docker image and mount your source code at `spring-data-couchbase-github`.
+
2. `cd spring-data-couchbase-github`
+
Next, test everything from inside the container:
+
3. `./mvnw -Pci clean dependency:list test -Dsort -B` (or whatever test configuration you must use)
Since the container is binding to your source, you can make edits from your IDE and continue to run build jobs.
NOTE: Docker containers can eat up disk space fast! From time to time, run `docker system prune` to clean out old images.