Introduction to Continuous Integration as a Technical Practice (which you could also follow manually).
Examples with Jenkins as an enabling tool.
Continuous Integration > Jenkins
Code & Slides
https://github.com/carlobonamico/continuous-integration-quickstart
Java 11
Download Jenkins LTS WAR
With great power comes great responsibility
Jenkins is an extremely powerful tool, able to:
- access to source code
- execute potentially arbitrary commands
- generate binaries which get deployed in your environments
which open to both Supply Chain and command execution attacks.
Security must be a primary concern
- defaults have greatly improved, but are not enough
- see https://www.jenkins.io/doc/book/security/
https://martinfowler.com/articles/continuousIntegration.html
https://www.slideshare.net/carlo.bonamico/continuous-integration-with-hudson
Kohsuke Kawaguchi https://github.com/kohsuke
Not just Jenkins
- Stapler (great grandparent of JAXRS)
- myriad of libraries and tools
Jenkins Pipelines (& Blue Ocean UI) https://www.jenkins.io/doc/book/pipeline/
https://www.slideshare.net/carlo.bonamico/continuous-integration-with-hudson
https://maven.apache.org/download.cgi https://dlcdn.apache.org/maven/maven-3/3.8.6/binaries/apache-maven-3.8.6-bin.zip
docker pull jenkins/jenkins:lts-jdk11