This project is example how to migrate from jenkins pipelines to the cloud native tekton CD using gradle
- GitOps
- Cloud native
- Industry Standard
- Task Encapsulation
- https://github.com/tektoncd/catalog
- https://github.com/open-toolchain/tekton-catalog
- https://cd.foundation/blog/2020/08/10/introducing-tekton-hub/
-
all tools as docker image
docker exec -it dev-tools zsh
-
gradle one click scripts to bootstrap local k8s cluster with Kind https://kind.sigs.k8s.io
-
latest Tekton pipelines and triggers with dashboard
-
Dashboard v0.8.2 http://localhost:8080/#/about
-
Pipelines v0.15.1
-
Triggers v0.7.0
All tools baked inside Docker image https://github.com/dimetron/kind-tekton-gradle-example/blob/master/tools/Dockerfile
- IDE VS Code or IntelliJ (alternative gradlew CLI)
- Docker Desktop with 6 GB RAM and shared drive
Gradle default task all-tasks
will do
- setup local cluster
- deploy tekton using kapp
- deploy tasks and pipelines
- execute pipeline using tekton pipeline-run
./gradlew
docker exec -it dev-tools k9s
docker exec -it dev-tools zsh
tkn task list
As part of demo repository dashboard installed with ingress
-
https://github.com/tektoncd/triggers/tree/master/examples/bitbucket
-
https://github.com/tektoncd/triggers/tree/master/examples/gitlab
Tutorials:
- https://cloud.ibm.com/docs/ContinuousDelivery?topic=ContinuousDelivery-tekton-pipelines
- https://developer.ibm.com/technologies/devops/tutorials/build-and-deploy-a-docker-image-on-kubernetes-using-tekton-pipelines/#create-a-task-to-build-an-image-and-push-it-to-a-container-registry
- https://developer.ibm.com/tutorials/tekton-triggers-101/
in case of issues delete docker container docker rm -f dev-tools
and run Gradle ./gradlew
again