With our project created in Jenkins, now it is time to test it. We never configured a triggered execution, so Jenkins is not monitoring the changes in the repository. For this example, launching the builds manually is more than enough, but in a real scenario we would like it to be triggered automatically on every change in the master branch:
The build has finished successfully; we can see in the summary that tests were executed but none has failed. We are ready to download the artifact and try to execute it locally:
$> chmod u+x thimblerig-service.jar
$> ./thimblerig-service.jar
At some point, the logs will display a message like Tomcat started on port(s): 8080 (http). This means our that service is ready and we can start using it. To make sure, we can always check the health of the service by running:
$> curl http://localhost:8080/health
{"status":"UP"}
This concludes the example of continuous delivery. Although this example is fully functional, Jenkins is not the best place to store releases of the service. For a real-world use case, there are much more powerful alternatives, such as Artifactory, or simply Dockerize the service and push new versions to a private Docker registry.