k8s--基础--30.2--Tekton--通过Tekton实现CICD

k8s–基础–30.2–Tekton–通过Tekton实现CICD


1、需求说明

  1. 是k8s原生CI/CD系统
  2. 是开源的

2、操作

2.1、创建一个task任务

2.1.1、脚本

vi /root/tekton/task-test.yaml

内容


apiVersion: tekton.dev/v1beta1
kind: Task
metadata:
  name: task-test
spec:
  # 定义输入源,这里是git仓库
  # Tekton 内置了一种 git 资源类型,它会自动将代码仓库 Clone 到 /workspace/$input_name 目录中,由于我们这里输入被命名成 repo,所以代码会被 Clone 到 /workspace/repo 目录下面
  resources:
    inputs:
    - name: repo
      type: git
  # 定义执行运行测试命令的步骤
  steps:
    # 步骤名称
  - name: run-test
    image: golang:1.14-alpine
    workingDir: /workspace/repo
    # 这里我们直接在代码的根目录中运行 go test 命令,需要注意的是命令和参数需要分别定义。
    command: ["go"]
    args: ["test"]
    
    

2.1.2、执行脚本

# 执行
kubectl apply -f /root/tekton/task-test.yaml

# 查看
kubectl get Task 

在这里插入图片描述

2.2、创建pipelineresource资源对象

  1. 刚刚我们定义完成了一个 Task 任务,但是该任务并不会立即执行,我们必须创建一个 TaskRun 引用它并提供所有必需输入的数据才行。
  2. 这里我们就需要将 git 代码库作为输入,我们必须先创建一个 PipelineResource 对象来定义输入信息。

2.2.1、脚本

vi /root/tekton/pipelineresource.yaml

内容

apiVersion: tekton.dev/v1alpha1
kind: PipelineResource
metadata:
  name: tekton-example
spec:
  type: git
  params:
    - name: url
      # 代码地址
      value: https://gitee.com/DanShenGuiZu/jenkins-sample
    - name: revision
      value: master

2.2.2、执行脚本

# 执行
kubectl apply -f /root/tekton/pipelineresource.yaml

# 查看
kubectl get PipelineResource 

在这里插入图片描述

2.3、创建一个TaskRun任务

2.3.1、脚本

vi /root/tekton/testrun.yaml

内容

apiVersion: tekton.dev/v1beta1
kind: TaskRun
metadata:
  name: testrun
spec:
  # 引用上面定义的Task和git仓库作为输入
  taskRef:
    name: task-test
  resources:
    inputs:
    - name: repo
      # 引用上面定义的PipelineResource资源对象
      resourceRef:
        name: tekton-example

2.3.2、执行脚本

# 执行
kubectl apply -f /root/tekton/testrun.yaml

# 查看
kubectl get TaskRun 

kubectl get pods

在这里插入图片描述

2.4、当任务执行完成后,Pod 就会变成 Completed 状态了

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值