/intern-project

intern-project

Primary LanguageShell

intern-project

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:

install_helm.sh
  1. Wait for the Kubernetes master node to start up.
  2. Install Helm.
install_jenkins.sh
  1. Wait for Helm's Tiller pod to become available.
  2. Install Jenkins with values from jenkins-values.yaml.
  3. Set environment variables for Jenkins URL, username, and password.
configure_jenkins.sh
  1. Install the Java 8 runtime.
  2. Wait for Jenkins to become available.
  3. Download the Jenkins CLI.
  4. Set up security for Jenkins with setup_jk_security.groovy.
bootstrap_jenkins.sh
  1. Fill in secrets and other variables in Jenkins XML configuraiton files (in terraform-modules/aws/jenkins-helm/jenkins_imports/).
  2. Add the credentials and build job to Jenkins.
  3. Tell Jenkins to scan the newly added repository.
github_hook.sh
  1. Add a webhook to the GitHub repo pointing it to Jenkins.