jenkins-stack-kubernetes
Stargaze if you find it useful.
Scripts and manifests to deploy Jenkins containers CI/CD stack on Kubernetes.
The Docker-compose version is also available.
Copyright 2021-2022 Saeid Bostandoust [email protected]
This stack contains:
- Jenkins (with a complete set of tools and plugins).
- Docker (on Kubernetes for building images and running Jenkins jobs).
- Docker registry (as a image repository).
- Gitea (as a version control system).
Installed tools and plugins:
- Installed tools in Jenkins:
- Git client (latest)
- Docker client (latest)
- Kubernetes client (latest)
- Ansible (latest) + set of useful collections
- Helm (latest)
- Terraform (latest)
- Pulumi (latest)
- MAASTA (latest)
- Tf2 (latest)
- Jenkins plugins:
- Ansible collections:
How to deploy the stack:
The stack is tested on Kubernetes 1.20+, should works on earlier versions.
Prerequisites:
- Kubernetes should supports LoadBalancer service type.
- Kubernetes should be configured to creating PVC dynamically.
- OpenSSL to creating self-signed certificates.
Get started:
./deploy
How to contribute:
Don't hesitate! all contributions are welcomed.
TODO:
- Update tools to the latest stable version
- SSL/TLS for Jenkins
- SSL/TLS for Gitea
- Expose Jenkins behind Ingress object
- Expose Docker registry behind Ingress object
- Expose Gitea behind Ingress object
Changelog:
01 Oct 2022:
- Jenkins updated to the latest LTS version.
- All tools updated to the latest stable version.
- Tf2
tf2project.io
was integrated.
15 May 2022:
- Jenkins updated to the latest LTS version.
- All tools updated to the latest stable version.
- Some new Jenkins plugins installed, See Dockerfile.
- Install Helm and Terraform via their package repositories.
- Pulumi was added to the Jenkins environment.
08 Feb 2022:
- Jenkins updated to the latest LTS version.
- All tools updated to the latest stable version.
- Some new Jenkins plugins installed, See Dockerfile.
- MAASTA to integrates MAAS, Terraform and Ansible.
13 Oct 2021:
- Jenkins updated to the latest LTS version.
- All tools updated to the latest stable version.
- Some new Jenkins plugins installed, See Dockerfile.
- Several new Ansible collections were installed.