Skip to content

Latest commit

 

History

History
43 lines (32 loc) · 2.16 KB

CI.adoc

File metadata and controls

43 lines (32 loc) · 2.16 KB

Continuous Integration

icon?job=spring data elasticsearch%2Fmain&subject=2020.0 icon?job=spring data elasticsearch%2F4.0.x&subject=Neumann%20(4.0 icon?job=spring data elasticsearch%2F3.2.x&subject=Moore%20(3.2

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 verify.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-elasticsearch-github adoptopenjdk/openjdk8:latest /bin/bash

    This will launch the Docker image and mount your source code at spring-data-elasticsearch-github.

  2. cd spring-data-elasticsearch-github

    Next, run your tests from inside the container:

  3. ./mvnw clean dependency:list test -Dsort (or 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 -v /var/run/docker.sock:/var/run/docker.sock --mount type=bind,source="$(pwd)",target=/spring-data-elasticsearch-github adoptopenjdk/openjdk8:latest /bin/bash

    This will launch the Docker image and mount your source code at spring-data-elasticsearch-github.

  2. cd spring-data-elasticsearch-github

    Next, try to package everything up from inside the container:

  3. ./mvnw -Pci,snapshot -Dmaven.test.skip=true clean package

Note
Docker containers can eat up disk space fast! From time to time, run docker system prune to clean out old images.