6.4. 使用 Pipelines as Code 监控管道运行状态


根据上下文和支持的工具,您可以以不同的方式监控管道运行的状态。

GitHub 应用程序的状态

当管道运行完成后,在 Check 选项卡中添加状态,其中包含管道的每个任务以及 tkn pipelinerun describe 命令的输出的有限信息。

日志错误片断

当 Pipelines as Code 检测到管道其中一个任务中的错误时,会显示一段信息,它包括第一个失败的任务的任务详情中的最后 3 行信息。

注意

Pipelines as Code 通过查看管道运行并使用隐藏字符替换 secret 值来避免泄漏 secret。但是,Pipelines as Code 无法隐藏来自工作区和 envFrom 源的 secret。

日志错误片断的注解

TektonConfig 自定义资源中,在 pipelinesAsCode.settings spec 中,您可以将 error-detection-from-container-logs 参数设置为 true。在这种情况下,Pipelines as Code 会检测容器日志中的错误,并在发生错误的拉取请求中添加它们作为注解。

重要

为日志错误片断添加注解只是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。

有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围

目前,Pipelines as Code 只支持使用以下格式的 makefilegrep 输出的简单情况:

<filename>:<line>:<column>: <error message>

您可以使用 error-detection-simple-regexp 参数自定义用于检测错误的正则表达式。正则表达式使用命名组来授予如何指定匹配的灵活性。需要匹配的组是 filename, line, 和 error。您可以查看 Pipelines as Code 配置映射用于默认正则表达式。

注意

默认情况下,Pipelines as Code 只扫描容器日志的最后 50 行。您可以在 error-detection-max-number-of-lines 字段中增加这个值,或为无限数量的行设置 -1。但是,此类配置可能会增加监视器的内存用量。

Webhook 的状态

对于 Webhook,当事件是拉取请求时,状态将添加为拉取请求或合并请求的注释。

失败

如果命名空间与 Repository 自定义资源定义 (CRD) 匹配,Pipelines as Code 会在命名空间中的 Kubernetes 事件中发出其故障日志消息。

与 Repository CRD 关联的状态

管道运行的最后 5 个状态消息存储在 Repository 自定义资源中。

$ oc get repo -n <pipelines-as-code-ci>
NAME                  URL                                                        NAMESPACE             SUCCEEDED   REASON      STARTTIME   COMPLETIONTIME
pipelines-as-code-ci   https://github.com/openshift-pipelines/pipelines-as-code   pipelines-as-code-ci   True        Succeeded   59m         56m

使用 tkn pac describe 命令,您可以提取与存储库及其元数据关联的运行状态。

通知

Pipelines as Code 不管理通知。如果您需要通知,请使用管道的 finally 功能。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.