6.4.3. 已知问题

  • 如果您要从 Red Hat OpenShift Pipelines 的旧版本升级,则必须删除您现有的部署,然后再升级到 Red Hat OpenShift Pipelines 版本 1.0。要删除现有的部署,您必须首先删除自定义资源,然后卸载 Red Hat OpenShift Pipelines Operator。如需了解更多详细信息,请参阅卸载 Red Hat OpenShift Pipelines 部分。
  • 提交相同的 v1alpha1 任务多次会导致错误。在重新提交一个 v1alpha1 任务时,使用 oc replace 而不是使用 oc apply
  • 当向一个容器添加一个新用户时,buildah ClusterTask 并不会工作。

    当安装 Operator 时,buildah ClusterTask 的 --storage-driver 标志没有指定,因此它会被设置为默认值。在某些情况下,这会导致存储驱动程序设置不正确。当添加一个新用户时,错误的 storage-driver 会造成 buildah ClusterTask 失败并带有以下错误:

    useradd: /etc/passwd.8: lock file already used
    useradd: cannot lock /etc/passwd; try again later.

    作为临时解决方案,在 buildah-task.yaml 文件中手工把 --storage-driver 标识的值设置为 overlay

    1. cluster-admin 身份登录到集群:

      $ oc login -u <login> -p <password> https://openshift.example.com:6443
    2. 使用 oc edit 命令编辑 buildah ClusterTask:

      $ oc edit clustertask buildah

      buildah clustertask YAML 文件的最新版本会在由 EDITOR 环境变量指定的编辑器中打开。

    3. steps 字段中找到以下 command 字段:

       command: ['buildah', 'bud', '--format=$(params.FORMAT)', '--tls-verify=$(params.TLSVERIFY)', '--layers', '-f', '$(params.DOCKERFILE)', '-t', '$(resources.outputs.image.url)', '$(params.CONTEXT)']
    4. 使用以下内容替换 command 字段:

       command: ['buildah', '--storage-driver=overlay', 'bud', '--format=$(params.FORMAT)', '--tls-verify=$(params.TLSVERIFY)', '--no-cache', '-f', '$(params.DOCKERFILE)', '-t', '$(params.IMAGE)', '$(params.CONTEXT)']
    5. 保存文件并退出。

    另外,您还可以直接在 web 控制台中直接修改 buildah ClusterTask YAML 文件。导航到 PipelinesCluster Tasksbuildah。从 Actions 菜单中选择 Edit Cluster Task,如前所示替换 command 项。