问题标签 [tekton]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
40 浏览

github - 如何将特定参数从 github webhook 传递到 tekton 管道?

我正在研究 tekton 管道。我想从源代码中检索特定字段,例如在 helm manifests 中配置的图像版本和图像存储库,并将其传递给 tekton 任务。

Chart.yaml 应用版本:1.1.37

values.yaml 源代码图片:images/gsample

关于如何从 values.yaml 中检索图像 repo 的值和从 chart.yaml 中检索图像标签并将其传递给 tekton 管道的任何想法?

0 投票
0 回答
48 浏览

kubernetes - 如何验证 tekton 管道中的 helm manifest?

我正在研究 tekton 管道。我的存储库包含掌舵图。我想在 tekton 管道中进行验证,以检查 kubernetes yaml 文件中的特定字段。如何通过检查 values.yaml 和 values-uat.yaml 和 values-prod.yaml 中的资源 cpu 限制和请求来验证源代码?

例子:

谢谢

0 投票
3 回答
249 浏览

kubernetes - 如何重新启动 Tekton PipelineRun,在 git 中定义了 pipeline-run.yml(例如使用 Cloud Native Buildpacks)?

我们想使用来自 Tekton Hub的官方 Tekton buildpacks 任务来使用 Cloud Native Buildpacks 运行我们的构建。Tekton的buildpacks 文档告诉我们从 Tekton Hub安装buildpacks&任务、 create 、和Tektongit-cloneSecretServiceAccountPersistentVolumeClaimPipeline

由于配置是参数化的,我们不想使用一个巨大的 kubectl 命令来启动我们的 Tekton 管道,而是PipelineRun使用一个单独的pipeline-run.ymlYAML 文件(也如文档中所述)来配置,其中包含对ServiceAccount、工作区、图像名称等的引用上:

现在使用 . 运行一次 Tekton 管道没有问题kubectl apply -f pipeline-run.yml。但是我们如何重新启动或重用这个基于 YAML 的配置来运行所有其他管道呢?

0 投票
1 回答
432 浏览

kubernetes - 如何使用预定义的 GitLab CI 变量和流式传输到 GitLab Pipeline 日志的 Tekton 日志直接从 GitLab CI 触发 Tekton Pipeline

我们有一个 AWS EKS 正在运行(使用 Pulumi 设置),我们在其中安装了 Tekton,如Cloud Native Buildpacks Tekton 文档中所述。示例项目可用

我们的 Tekton 管道配置如下(也源自Cloud Native Buildpacks Tekton 文档):

我们已经添加了SOURCE_URLSOURCE_REVISION作为参数。

问题是:我们如何PipelineRun从 GitLab CI(在我们的内部.gitlab-ci.yml)触发 Tekton,并遵守以下要求:

  • 最简单的方法
  • 不要使用Tekton Triggers引入的额外复杂性(包括commit-status-tracker),但仍将 GitLab 作为事实来源(例如,查看提交时运行的绿色/红色管道等)
  • 报告成功将 Tekton Pipelines 运行为绿色 GitLab CI Pipelines 并将失败的 Tekton Pipelines 运行为红色 GitLab CI Pipelines
  • 将 Tekton Pipeline 日志保存/流式传输到 GitLab CI Pipeline 日志中 - 无论是在 Tekton Pipelines 内发生错误还是成功的情况下
  • GitLab CI 预定义变量用于通用方法
0 投票
0 回答
115 浏览

tekton - Tekton 如何处理访问同一工作区的并行任务?

在 Tekton 中,可以设置一个包含多个任务的管道,这些任务可以(可能)并行运行并访问同一个工作区。但是,文档并不完全清楚在这种情况下会发生什么。它是“锁定”工作区并强制一个任务等到另一个任务完成使用它,还是两个任务都可以同时访问和修改它(可能会干扰彼此的执行)?

0 投票
1 回答
84 浏览

tekton - Tekton 任务失败,“绑定了多个 PersistentVolumeClaim”

我正在尝试使用需要访问多个PersistentVolumeClaim工作区的任务运行 Tekton 管道。当我运行管道时,任务失败并显示消息"more than one PersistentVolumeClaim is bound"。据我所知,没有什么可以禁止在同一个任务中绑定多个 PersistentVolumeClaim,那么为什么我会收到这个错误,我该如何解决呢?

0 投票
1 回答
228 浏览

kubernetes - 无论管道是失败还是成功,都向 GitLab 报告 Tekton 管道状态(使用 gitlab-set-status 任务)

我们已经在使用来自 Tekton Hubgitlab-set-status任务将 Tekton Pipeline 的状态报告回我们的 GitLab 实例(这是我们的 EKS 设置和 Tekton 安装以及gitlab.com 上的示例项目)。我们pipeline.yml看起来像这样,当前STATE每次 Tekton Pipeline 运行时都会报告成功:

我们如何增强我们的 Tekton Pipeline 以正确地报告状态,而不管 GitLab 的任何失败或成功?

0 投票
1 回答
212 浏览

kubernetes - 在 OpenShift 上安装 Tekton Triggers EventListener(用于 GitLab)会导致:错误配置映射被禁止:无法在 API 中获取资源配置映射

我们正在通过 Webhooks 和 Tekton Triggers 集成 GitLab 和 Tekton / OpenShift Pipelines。我们遵循这个示例项目,并制作了我们EventListener所需的InterceptorTriggerBinding并且TriggerTemplate作为gitlab-push-listener.yml

示例中所述(以及Tekton 文档中),我们还创建并kubectl apply编辑了一个ServiceAccount命名的tekton-triggers-example-sa,RoleBindingClusterRoleBinding

现在通过 安装我们的 EventListener kubectl apply -f gitlab-push-listener.yml,没有从 GitLab 触发,甚至没有curl按预期触发 PipelineRun。查看 Deployment 和 Pod 的日志el-gitlab-listener,我们看到以下错误:

0 投票
1 回答
53 浏览

docker - 如何创建 tekton 任务以构建 docker slim?

有没有人尝试在构建 docker slim 时创建 tekton 任务?

0 投票
1 回答
214 浏览

java - 在 Tekton Hub 的 Tekton Maven 任务中缓存 Maven 依赖项

我们想使用 Maven 构建一个基于 Spring Boot 的项目。我们在 Tekton Hub 上找到了 Maven 任务,并且已经有一个正在运行的管道。在一个缩短的版本中,我们pipeline.yml看起来像这样:

PipelineRun 定义为:

source-pvcPersistentVolumeClaim 定义为:

我们的项目正在构建中,但是当我们启动另一个 PipelineRun 时,任务会一遍又一遍地下载项目的所有 Maven 依赖项:

在此处输入图像描述

Tekton Hub 的 Maven 任务https://hub.tekton.dev/tekton/task/maven似乎不支持使用缓存。尽管如此,我们如何缓存?