This repository contains a Terraform module that will install Jenkins and Helm on a Kubernetes cluster on AWS. The module also automatically sets up Jenkins to build a GitHub repository. The module executes these scripts from terraform-modules/aws/jenkins-helm/files/
in order:
- Wait for the Kubernetes master node to start up.
- Install Helm.
- Wait for Helm's Tiller pod to become available.
- Install Jenkins with values from
jenkins-values.yaml
. - Set environment variables for Jenkins URL, username, and password.
- Install the Java 8 runtime.
- Wait for Jenkins to become available.
- Download the Jenkins CLI.
- Set up security for Jenkins with
setup_jk_security.groovy
.
- Fill in secrets and other variables in Jenkins XML configuraiton files (in
terraform-modules/aws/jenkins-helm/jenkins_imports/
). - Add the credentials and build job to Jenkins.
- Tell Jenkins to scan the newly added repository.
- Add a webhook to the GitHub repo pointing it to Jenkins.