Personal VSCode project fork including the Jenkinsfile can be found here.
Installed Kubernetes (kubectl command line). Installed Kubernetes Helm and Minikube via Chocolatey. VirtualBox was used as the Virtual Machine provider of choice.
-
Create Minikube Kubernetes cluster
minikube start โ vm-driver=virtualbox
-
Deploy Jenkins to Minikube Kubernetes cluster
Config files under jenkins/ was used. The Jenkins Kubernetes namespace was created with
kubectl apply -f jenkins/jenkins-namespace.yaml
. -
Create and deploy the JCasC Config Map
kubectl create configmap jenkins-casc-config --from-file jenkins/jenkins-casc-config.yaml --dry-run -o yaml > jenkins/jenkins-casc-config-configmap.yaml
kubectl apply -f jenkins/jenkins-casc-config-configmap.yaml --namespace jenkins
. -
Install the Jenkins Helm Chart
Sincehelm init
and Tiller was removed at Helm v3.0,
Addedstable
repo withhelm repo add stable https://kubernetes-charts.storage.googleapis.com
.
Jenkins Helm Chart was installed withhelm install jenkins -f jenkins/jenkins-values.yaml stable/jenkins --namespace jenkins
.
The Jenkins instance could be opened at http://192.168.99.104:32000/login.
The pipeline project pointed at the forked repository was initialized to read and execute from the Jenkinsfile from the root of the project directory. However, the pipeline seems to fail at building and times out upon reaching git fetch
.