搜索

第 2 章 在 web 控制台中使用 Red Hat OpenShift Pipelines

download PDF

您可以使用 AdministratorDeveloper 视角,从 OpenShift Container Platform web 控制台的 Pipelines 页面创建和修改 PipelinePipelineRunRepository 对象。您还可以使用 web 控制台的 Developer 视角中的 +Add 页面为软件交付过程创建 CI/CD 管道。

2.1. 在 Developer 视角中使用 Red Hat OpenShift Pipelines

Developer 视角中,您可以从 +Add 页面访问创建管道的以下选项:

  • 使用 +Add Pipelines Pipeline builder 选项为您的应用程序创建自定义管道。
  • 在创建应用程序时,使用 +Add From Git 选项使用管道模板和资源创建管道。

在为应用程序创建管道后,可以在 Pipelines 视图中查看并以视觉化的形式与部署进行交互。您还可以使用 Topology 视图与使用 From Git 选项创建的管道交互。您需要将自定义标识应用到使用 Pipeline builder 创建的管道,以便在 Topology 视图中查看它。

先决条件

2.1.1. 使用 Pipeline 构建器构建管道

在控制台的 Developer 视角中,您可以使用 +Add Pipeline Pipeline Builder 选项:

  • 使用 Pipeline 构建器YAML 视图 配置管道。
  • 使用现有任务和集群任务构建管道流。安装 OpenShift Pipelines Operator 时,它会在集群中添加可重复使用的管道集群任务。
重要

在 Red Hat OpenShift Pipelines 1.10 中,ClusterTask 功能已弃用,计划在以后的发行版本中删除。

  • 指定管道运行所需的资源类型,如有必要,将额外参数添加到管道。
  • 引用管道中的每个任务中的这些管道资源作为输入和输出资源。
  • 如果需要,引用任务中添加至管道的任何额外参数。任务的参数会根据任务的规格预先填充。
  • 使用 Operator 安装的、可重复使用的片断和示例来创建详细的管道。
  • 搜索并添加您配置的本地 Tekton Hub 实例的任务。
重要

在 Developer 视角中,您可以使用自己的一组策展的任务创建自定义管道。要从开发人员控制台直接搜索、安装和升级任务,集群管理员需要安装和部署本地 Tekton Hub 实例,并将 hub 链接到 OpenShift Container Platform 集群。如需了解更多详细信息,请参阅附加资源部分中的将 Tekton Hub 与 OpenShift Pipelines 搭配使用。如果您没有部署任何本地 Tekton Hub 实例,则默认只能访问集群任务、命名空间任务和公共 Tekton Hub 任务。

流程

  1. Developer 视角的 Add 视图中,点 Pipeline 标题查看 Pipeline Builder 页面。
  2. 使用 Pipeline 构建器 视图或 YAML 视图配置管道。

    注意

    Pipeline 构建器 视图支持有限的字段,而 YAML 视图支持所有可用字段。另外,您还可以使用 Operator 安装的、可重复使用的片断和样本来创建详细的管道。

    图 2.1. YAML 视图

    op pipeline yaml
  3. 使用 Pipeline 构建器配置管道:

    1. Name 字段中输入管道的唯一名称。
    2. Tasks 部分:

      1. 单击 Add task
      2. 使用快速搜索字段搜索任务,然后从显示的列表中选择所需的任务。
      3. 点击 AddInstall and add。在本例中,使用 s2i-nodejs 任务。

        注意

        搜索列表包含集群中可用的所有 Tekton Hub 任务和任务。此外,如果某一任务已经安装,它将显示 Add 添加该任务,而它将显示 Install and add 以安装和添加该任务。当使用更新的版本添加相同的任务时,它将显示 Update and add

        • 在管道中添加后续任务:

          • 点击任务右侧或左侧的加号图标 Add task
          • 使用快速搜索字段搜索任务,然后从显示的列表中选择所需的任务。
          • 点击 AddInstall and add

            图 2.2. Pipeline 构建器

            op pipeline builder
        • 添加最后一项任务:

          • Add finally task Click Add task
          • 使用快速搜索字段搜索任务,然后从显示的列表中选择所需的任务。
          • 点击 AddInstall and add
    3. Resources 部分,点 Add Resources 指定管道运行的资源的名称和类型。这些资源然后会被管道中的任务使用作为输入和输出。在此例中:

      1. 添加一个输入资源。在 Name 字段中输入 Source,从 Resource Type 下拉列表中选择 Git
      2. 添加一个输出资源。在 Name 字段中输入 img,从 Resource Type 下拉列表中选择 Image

        注意

        如果缺少资源,任务旁边会出现一个红色图标。

    4. 可选:任务的 Parameters 部分会根据任务的规格预先填充。如果需要,使用 Parameters 部分中的 Add Parameters 链接来添加额外的参数。
    5. Workspaces 部分,点 Add workspace,并在 Name 字段中输入唯一工作区名称。您可以在管道中添加多个工作区。
    6. Tasks 部分中,点 s2i-nodejs 任务,以查看带任务详情的侧面板。在任务侧面板中,为 s2i-nodejs 任务指定资源和参数:

      1. 如果需要,在 Parameters 部分,使用 $(params.<param-name>)语法为默认参数添加更多参数。
      2. Image 部分中,按在 Resources 部分中的指定输入 Img
      3. Workspaces 部分下的 source 下拉菜单中选择一个工作区。
    7. 将资源、参数和工作空间添加到 openshift-client 任务。
  4. CreatePipeline Details 页面中创建并查看管道。
  5. Actions 下拉菜单,然后点 Start,查看 Start Pipeline 页面。
  6. Workspaces 部分列出了您之前创建的工作区。使用对应的下拉菜单为您的工作区指定卷源。您有以下选项: mpty DirectoryConfig MapSecretPersistentVolumeClaimVolumeClaimTemplate

2.1.2. 创建 OpenShift Pipelines 和应用程序

要与应用程序一同创建管道,使用 Developer 视角的 Add+ 视图中的 From Git 选项。您可以查看所有可用的管道,并在导入代码或部署镜像时选择用来创建应用程序的管道。

Tekton Hub 集成默认是启用的,您可以看到集群支持的 Tekton Hub 中的任务。管理员可以选择不使用 Tekton Hub 集成,将不会显示 Tekton Hub 任务。您还可以检查是否为生成的管道存在 webhook URL。为使用 +Add 流创建的管道添加默认 Webhook,URL 在 Topology 视图中所选资源侧面面板中可见。

如需更多信息,请参阅使用 Developer 视角创建应用程序

2.1.3. 添加包含管道的 GitHub 仓库

Developer 视角中,您可以将包含管道的 GitHub 存储库添加到 OpenShift Container Platform 集群中。当相关 Git 事件(如推送或拉取请求)被触发时,可以在集群中的 GitHub 存储库中运行管道和任务。

注意

您可以同时添加公共和私有 GitHub 仓库。

先决条件

  • 确保集群管理员已在管理员视角中配置了所需的 GitHub 应用程序。

流程

  1. Developer 视角中,选择要在其中添加 GitHub 仓库的命名空间或项目。
  2. 使用左侧导航窗格进入到 Pipelines
  3. Pipelines 页面右侧点 Create Repository
  4. 输入 Git Repo URL,控制台会自动获取仓库名称。
  5. Show configuration options。默认情况下,您只看到一个选项 Setup a webhook。如果您配置了 GitHub 应用程序,您会看到两个选项:

    • Use GitHub App: 选择这个选项在仓库中安装 GitHub 应用程序。
    • Setup a webhook :选择此选项,将 webhook 添加到您的 GitHub 应用程序。
  6. 使用 Secret 部分中的以下选项之一设置 webhook:

    • 使用 Git 访问令牌 设置 webhook:

      1. 输入您的个人访问令牌。
      2. 点与 Webhook secret 字段对应的 Generate 以生成新的 webhook secret。

        Git 访问令牌
        注意

        如果您没有个人访问令牌并且想要创建新令牌,可以点 Git access token 字段下的链接。

    • 使用 Git 访问令牌 secret 设置 webhook:

      • 从下拉列表中选择命名空间中的 secret。根据您选择的 secret,会自动生成 Webhook secret。

        Git 访问令牌 secret
  7. 在您的 GitHub 仓库中添加 webhook secret 详情:

    1. 复制 Webhook URL 并前往 GitHub 仓库设置。
    2. Webhooks Add webhook
    3. 从开发人员控制台复制 Webhook URL,并将它粘贴到 GitHub 仓库设置的 Payload URL 字段中。
    4. 选择内容类型
    5. 从开发人员控制台复制 Webhook secret,并将它粘贴到 GitHub 仓库设置的 Secret 字段中。
    6. 选择 SSL 验证选项之一。
    7. 选择要触发此 webhook 的事件。
    8. 点击 Add webhook
  8. 返回到开发人员控制台,然后点 Add
  9. 阅读执行步骤的详情,并点 Close
  10. 查看您刚才创建的仓库的详细信息。
注意

当使用 Import from Git 导入应用程序时,Git 存储库有一个 .tekton 目录,您可以为应用程序配置 pipelines-as-code

2.1.4. 使用 Developer 视角与管道交互

开发者视角中的 Pipelines 视图列出了项目中的所有管道,以及以下详细信息:

  • 创建管道的命名空间
  • 最后一次管道运行
  • 管道运行中的任务状态
  • 管道运行的状态
  • 最后一次管道运行的创建时间

流程

  1. Developer 视角的 Pipelines 视图中,从 Project 下拉列表中选择一个项目,以查看该项目中的管道。
  2. 点击所需管道查看 Pipeline 详情页面。

    默认情况下,Details 选项卡显示所有 serial 任务,parallel 任务、finally 任务以及管道中的 when 表达式的可视化表示。这些任务和 finally 的任务列在页面的右下角。

    要查看任务详情,请点列出的 TasksFinally 任务。另外,您可以执行以下操作:

    • 使用 Pipeline 详情 视觉化左下角显示的标准图标,使用 zoom in、zoom out 和 reset view 功能。
    • 使用鼠标轮改管道视觉化的缩放因素。
    • 将鼠标悬停在任务上,再查看任务详情。

      图 2.3. Pipeline 详情

      Pipeline 详情
  3. 可选: 在 Pipeline 详情页面中,点 Metrics 选项卡查看有关管道的以下信息:

    • Pipeline 成功率
    • Pipeline 运行数量
    • 管道运行持续时间
    • 任务运行持续时间

      您可以使用这些信息来改进管道工作流,并在管道生命周期的早期解决问题。

  4. 可选:点 YAML 选项卡编辑管道的 YAML 文件。
  5. 可选:点 Pipeline Runs 选项卡查看已完成、正在运行或运行失败的管道。

    Pipeline Runs 选项卡提供有关管道运行、任务状态以及调试失败管道运行的链接。您可以使用 Options 菜单 kebab 来停止正在运行的管道,使用与之前的管道执行相同的参数和资源重新运行管道,或删除管道运行。

    • 点所需的管道运行查看 Pipeline Run details 页面。默认情况下,Details 选项卡显示所有串行任务、并行任务、finally 任务以及管道中运行的 when 表达式的可视化表示。成功运行的结果会显示在页面底部的 Pipeline Run 结果窗格下。另外,您只能查看由集群支持的 Tekton Hub 中的任务。在查看某个任务时,您可以点击相关链接来跳至任务文档。

      注意

      Pipeline Run Details 页面的 Details 部分显示失败管道运行的日志片段日志片断 提供一般错误信息和日志片断。Logs 部分的链接可让您快速访问失败运行的详细信息。

    • Pipeline Run details 页面中,点 Task Runs 选项卡查看已完成、正在运行和运行失败的任务。

      Task Runs 选项卡提供有关任务运行的信息,以及任务和 pod 的链接,以及任务运行的状态和持续时间。使用 Options 菜单 kebab 来删除任务运行。

      注意

      TaskRuns 列表页面带有一个 Manage column 按钮,您还可以使用它来添加 Duration 列。

    • 点所需的任务运行查看 Task Run details 页面。成功运行的结果显示在页面底部的 Task Run 结果窗格下。

      注意

      Task Run details 页面的 Details 部分显示失败任务运行的日志片段日志片断 提供一般错误信息和日志片断。Logs 部分的链接可让您快速访问失败的任务运行的详细信息。

  6. Parameters 标签,查看管道中定义的参数。您还可以根据需要添加或者编辑附加参数。
  7. Resources 标签页,查看管道中定义的资源。您还可以根据需要添加或编辑附加资源。

2.1.5. 从 Pipelines 视图启动管道

创建管道后,您需要启动它以在定义的顺序中执行包含的任务。您可从 Pipelines 视图、Pipeline Details 页面或 Topology 视图启动管道。

流程

使用 Pipelines 视图启动管道:

  1. Developer 视角Pipelines 视图中,点附加到 Pipeline 的 Options kebab 菜单,然后选择 Start
  2. Start Pipeline 对话框显示 Git Resources 以及基于管道定义的 Image Resources

    注意

    对于使用 From Git 选项创建的管道,Start Pipeline 对话框也会在 Parameters 部分显示 APP_NAME 字段,对话框中的所有字段都由管道模板预先填充。

    1. 如果您在命名空间中有资源,Git ResourcesImage Resources 字段会预先填充这些资源。如果需要,使用下拉菜单选择或创建所需资源并自定义管道运行实例。
  3. 可选:修改 Advanced Options 以添加验证指定私有 Git 服务器或镜像 registry 的凭证。

    1. Advanced Options 下,点 Show Credentials Options 并选择 Add Secret
    2. Create Source Secret 部分,指定以下内容:

      1. secret 的唯一 Secret Name
      2. 要被验证的指定供应商 部分,在 Access to 字段中指定要验证的供应商,以及基本 服务器 URL
      3. 选择 Authentication Type 并提供凭证:

        • 对于 Authentication Type Image Registry Credentials,请指定您要进行身份验证的 Registry 服务器地址,并通过UsernamePasswordEmail 项中提供您的凭证。

          如果要指定额外的 Registry 服务器地址,选择 Add Credentials

        • 如果 Authentication Type Basic Authentication,在 UserNamePassword or Token 项中指定相关的值。
        • 如果 Authentication TypeSSH Keys 时,在 SSH Private Key 字段中指定相关的值。

          注意

          对于基本身份验证和 SSH 身份验证,您可以使用注解,例如:

      4. 选择要添加 secret 的检查标记。

    您可以根据频道中的资源数量添加多个 secret。

  4. Start 启动管道。
  5. PipelineRun 详情页面显示正在执行的管道。管道启动后,每个任务中的任务和步骤都会被执行。您可以:

    • 使用 PipelineRun 详情页面的左下角,使用 zoom in、zoom out、适用于屏幕和重置视图功能,它们位于 PipelineRun 详情页面的左下角。
    • 使用鼠标轮改管道运行视觉化的缩放因素。在特定的缩放条件中,任务更改的背景颜色表示错误或警告状态。
    • 将鼠标悬停在任务上,以查看详细信息,例如执行每个步骤、任务名称和任务状态所需的时间。
    • 将鼠标悬停在任务徽标上,以查看已完成的任务和任务总数。
    • 点一个任务来查看任务中每一步骤的日志。
    • Logs 选项卡查看与任务执行顺序相关的日志。您还可以使用相关按钮扩展窗格,单独或批量下载日志。
    • Events 选项卡查看管道运行生成的事件流。

      您可以使用 Task RunsLogsEvents 选项卡来帮助调试失败的管道运行或失败的任务运行。

      图 2.4. Pipeline 运行详情

      Pipeline 运行详情

2.1.6. 从 Topology 视图启动管道

对于使用 From Git 选项创建的管道,您可以在启动后使用 Topology 视图来与管道进行交互:

注意

要使用 Pipeline BuilderTopology 视图中查看创建的管道,自定义管道标识来把 Pipeline 与应用程序负载相连接。

流程

  1. 单击左侧导航面板中的 Topology
  2. 点应用程序在侧面面板中显示 Pipeline Runs
  3. Pipeline Runs 中,点 Start Last Run 来启动一个新的管道运行,使用与前一个相同的参数和资源。如果没有启动管道运行,这个选项会被禁用。您还可以在创建管道时启动管道运行。

    图 2.5. Topology 视图中的管道

    Topology 视图中的管道

Topology 页面中,把鼠标移到应用程序的左侧,以查看其管道运行的状态。添加管道后,底部左图标表示存在关联的管道。

2.1.7. 从 Topology 视图与管道交互

Topology 页面中的应用程序节点的侧面板显示管道运行的状态,并可与之交互。

  • 如果管道运行没有自动启动,则侧面板会显示管道无法自动启动的消息,因此需要手动启动。
  • 如果创建一个管道,但用户没有启动管道,则其状态不会启动。当用户点击 Not started status 图标时,Topology 视图中会打开启动对话框。
  • 如果管道没有构建或构建配置,则无法看到 Builds 部分。如果存在管道和构建配置,则 Builds 部分 可见。
  • 当管道运行在特定任务运行时,侧边面板会显示一个 日志片段。您可以在 Pipeline Runs 部分的 Resources 选项卡中查看日志片断。它提供常规错误消息和日志片断。Logs 部分的链接可让您快速访问失败运行的详细信息。

2.1.8. 编辑管道

您可以使用 web 控制台的 Developer 视角编辑集群中的管道:

流程

  1. Developer 视角的 Pipelines 视图中,选择您要编辑的管道来查看管道的详情。在 Pipeline Details 页中,点 Actions 并选择 Edit Pipeline
  2. Pipeline builder 页面中,您可以执行以下任务:

    • 在管道中添加其他任务、参数或资源。
    • 点要修改的任务来查看侧面面板中的任务详情,并修改所需的任务详情,如显示名称、参数和资源。
    • 或者,要删除任务,点任务,在侧面面板中点 Actions 并选择 Remove Task
  3. Save 保存修改后的管道。

2.1.9. 删除管道

您可以使用 web 控制台的 Developer 视角删除集群中的管道。

流程

  1. Developer 视角Pipelines 视图中,点 Pipeline 旁的 Options kebab 菜单,然后选择 Delete Pipeline
  2. Delete Pipeline 确认提示下,点 Delete 以确认删除。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.