tekton(个人笔记)
快速开始
部署
从https://github.com/tektoncd/cli/releases下载tkn工具,该工具为tekton的命令行工具。
执行如下命令安装dashboard
1 | kubectl apply --filename https://github.com/tektoncd/dashboard/releases/latest/download/tekton-dashboard-release.yaml |
dashboard安装完成后仅申请了ClusterIP类型的Service,可以在本地通过kubectl端口转发的方式来对外提供服务,既可以通过ip:9097的方式来对外提供服务了。
1 | kubectl --namespace tekton-pipelines port-forward svc/tekton-dashboard 9097:9097 --address 0.0.0.0 |
执行如下命令,在k8s中提交yaml
1 | kubectl apply --filename \ https://storage.googleapis.com/tekton-releases/pipeline/latest/release.yaml |
会在k8s中提交如下两个deployment,此时tekton即安装完毕。
1 | $ kubectl get deploy -n tekton-pipelines |
创建task
创建如下yaml,提交一个任务定义,提交完成后任务并不会被执行
1 | apiVersion: tekton.dev/v1beta1 |
继续提交如下的yaml,提交一次任务运行实例
1 | apiVersion: tekton.dev/v1beta1 |
查看任务执行情况
1 | $ kubectl get taskrun hello-task-run |
创建流水线任务pipeline
创建新的task goodye
1 | apiVersion: tekton.dev/v1beta1 |
提交如下yaml,创建pipeline定义
1 | apiVersion: tekton.dev/v1beta1 |
提交如下yaml,创建pipeline实例。
1 | apiVersion: tekton.dev/v1beta1 |
可以使用tkn来查看pipeline拉起的pod日志,该工具会将pod的日志合并到一起。
1 | $ tkn pipelinerun logs hello-goodbye-run -f -n default |