云客户?
免费开始>
在MyJFrog >中升级
云有什么新>





概述

一个管道来源代表一个源代码控制存储库(如GitHub或BitBucket),其中可以找到管道定义文件。管道源通过控件连接到存储库集成添加管道源后,管道会自动从匹配指定文件名筛选器的存储库加载所有配置文件。

管理员用户可以创建、查看、编辑和同步管道源。非管理员用户只能查看和同步管道源。
页面内容


管理管道源

仅限具有管理员特权可以管理管道源

需求

要成功添加管道源,请确保以下条件:

添加管道源

添加一个源代码控制存储库作为Pipeline source:

  1. 管理|管道|管道源
  2. 结果是管道来源显示,点击添加管道来源然后单击以下其中一个:
    • 从YAML从YAML配置文件中添加管道源,该文件包含所有资源和工作流步骤的声明。2022世界杯阿根廷预选赛赛程
    • 从模板:通过提供值文件从预定义模板中添加管道源。有关更多信息,请参见管道的模板


从YAML

  1. 添加YAML Pipeline Source页中,单击下列之一:
    • 单分支
    • 多分支

  2. 单击以选择在同步管道源时用于克隆存储库的协议类型:
    • SSH
    • HTTPS

  3. 完成单/多分支形式:

    描述

    的名字

    为管道源输入唯一的名称。

    SCM提供者集成

    单击SCM提供者集成字段并选择您的源代码控制集成从下拉列表中。下拉列表中只包括兼容作为Pipeline Source使用的集成。

    存储库全名

    基于您为所选集成提供的信息,例如API令牌,所有相关的存储库都列在存储库全名字段。选择存储管道文件的存储库的路径。如果存储库的名称不是自动获取的,请输入存储管道文件的存储库的全名。

    分支机构(仅限单个分支机构)

    B根据您提供的SCM提供者和存储库全名,a所有可用的分支都会自动获取(例如,主要).选择所需的分支。如果分支的名称不是自动获取的,请输入分支的名称。

    排除(仅限多分支)

    指定排除分支模式作为要排除的匹配分支名称的正则表达式。

    包括(仅限多分支机构)

    指定包括分支模式作为要包含的匹配分支名称的正则表达式。

    同步所有分支切换

    (只适用于多科)

    当添加一个新的多分支管道源时,只同步默认的分支。要根据Exclude/Include模式同步所有分支,请单击同步所有分支切换。如果不提供Exclude/Include模式,则同步所有分支。

    此外,当一个新的提交被推送到匹配的分支,该特定的分支是同步的。

    文件夹名称(管线1.27.0及更高版本)

    提供YAML配置可用的目录名。

    • 使用文件夹名称,在SCM存储库中,将您的YAML文件放在一个名为。jfrog-pipelines.这个目录可以是根目录,也可以是根目录下一层的目录。不支持超过该级别的目录。
    • 以下是monorepos可能的目录结构:
      ——根
      ——.jfrog-pipelines



      ——根
      ——.jfrog-pipelines
      ——service1
      生成——service2



      ——根
      ——service1
      --------- . jfrog-pipelines
      生成——service2
      --------- . jfrog-pipelines
    • 的。jfrog-pipelines目录可以包含任意数量的YAML文件。
    • 要解析根目录下的所有YAML文件,输入“。”。但是,其他管道源不能指向这个存储库。
    • 您可以创建指向相同SCM存储库的多个管道源,只要目录名称不同(并且没有一个指向根目录)。

    使用“文件夹名称”时推荐的目录结构

    下面是一些支持的目录结构示例:

    YAML文件位置 文件夹名称
    YAML文件在.jfrog-pipelines根目录

    输入(点)或.jfrog-pipelines文件夹名称字段获取所有YAML文件

    YAML文件在.jfrog-pipelines / project1目录

    输入.jfrog-pipelines / project1文件夹名称字段中获取YAML文件.jfrog-pipelines / project1目录

    YAML文件在以下目录:

    • .jfrog-pipelines
    • .jfrog-pipelines / project1
    • .jfrog-pipelines / project2

    输入(点)或.jfrog-pipelines文件夹名称字段获取所有目录下的所有YAML文件

    输入.jfrog-pipelines / project1文件夹名称字段中获取YAML文件.jfrog-pipelines / project1目录

    输入.jfrog-pipelines / project2文件夹名称字段中获取YAML文件.jfrog-pipelines / project2目录

    YAML文件在以下目录:

    • .jfrog-pipelines
    • service1/ .jfrog-pipelines
    • service2/ .jfrog-pipelines

    输入(点)或.jfrog-pipelines文件夹名称字段中获取YAML文件.jfrog-pipelines目录下的YAML文件service1/ .jfrog-pipelines而且service2/ .jfrog-pipelines目录将不包括在内。

    输入service1/ .jfrog-pipelines文件夹名称字段中获取特定的YAML文件service1/ .jfrog-pipelines目录

    输入service2/ .jfrog-pipelines文件夹名称字段中获取特定的YAML文件service2/ .jfrog-pipelines目录

    如果你有一个在一个repo中包含多个服务的monorepo,建议使用如下目录结构:

    现有目录结构 推荐目录结构


    构建/ ci

    -Service1

    -建立/ ci / pipe.yaml

    -Service2

    -建立/ ci / pipe.yaml


    .jfrog-pipelines

    -Service1/ pipe.yaml


    -Service2/ pipe.yaml

    从配置文件过滤器迁移到新的文件夹结构

    在管线1.27.0版本中,配置文件过滤器已替换为一个名为文件夹名称用于添加管道源。虽然配置文件过滤器在编辑管道源代码时仍然受支持并可用。

    • 此更改不影响1.26.0之前添加的管道源.但是,强烈建议您对新的管道源使用推荐的文件夹结构,并将现有源移动到推荐的文件夹结构中。使用文件夹结构可以显著提高管道同步的性能。
    • 你可以利用文件夹名称通过编辑管道源文件,然后提供新的目录路径来实现。在本例中,中的条目配置文件过滤器忽略,并使用目录路径中的管道源。
    • 如果两个字段都有值,则文件夹名称字段优先。然而,如果没有.jfrog-pipelines目录是在目录路径中找到的,则信息在配置文件过滤器字段用于查找YAML文件。
    配置文件过滤器(管线1.26.0及以下版本)

    输入正则表达式。任何与表达式匹配的文件名都将被加载。
    例子:

      • 如果您计划在一个名为2022世界杯阿根廷预选赛赛程pipelines.2022世界杯阿根廷预选赛赛程resources.yml还有你的管道pipelines.workflows.yml,然后你可以进入管道。* .yml
      • 如果您有多个yaml配置文件,则输入. * yml

      • 除了pipelines.yml,如果你正在使用values.yml,确保两个文件都被添加到过滤器,使用(管道|值).yml


从模板

  1. 完成模板属性形式:



    • 单击选择模板命名空间字段并选择名称空间。
    • 单击选择模板名称字段并选择模板。
    • 单击选择模板版本字段,并选择模板的版本。

  2. 点击下一个
    结果是指定值文件页中,单击下列之一读取YAML值下拉:
    • 源代码控制存储库:当你想获取值时使用这个。yml文件。
    • 手动输入:当您想手动定义管道源的值时使用此选项。

  3. 源代码控制存储库
    请按下列其中一项:
    • 单分支
    • 多分支

  4. 单击以选择在同步管道源时用于克隆存储库的协议类型:
    • SSH
    • HTTPS

  5. 完成单/多分支形式:

    描述

    的名字

    为管道源输入唯一的名称。

    SCM提供者集成

    单击SCM提供者集成字段并选择您的源代码控制集成从下拉列表中。下拉列表中只包括兼容作为Pipeline Source使用的集成。

    存储库全名

    基于您为所选集成提供的信息,例如API令牌,所有相关的存储库都列在存储库全名字段。选择存储管道文件的存储库的路径。如果存储库的名称不是自动获取的,请输入存储管道文件的存储库的全名。

    分支机构(仅限单个分支机构)

    B根据您提供的SCM提供者和存储库全名,a所有可用的分支都会自动获取(例如,主要).选择所需的分支。如果分支的名称不是自动获取的,请输入分支的名称。

    排除(仅限多分支)

    指定排除分支模式作为要排除的匹配分支名称的正则表达式。

    包括(仅限多分支机构)

    指定包括分支模式作为要包含的匹配分支名称的正则表达式。

    同步所有分支切换

    (只适用于多科)

    当添加一个新的多分支管道源时,只同步默认的分支。要根据Exclude/Include模式同步所有分支,请单击同步所有分支切换。如果不提供Exclude/Include模式,则同步所有分支。

    此外,当一个新的提交被推送到匹配的分支,该特定的分支是同步的。

    文件路径 的路径.values.yml文件,其中包含模板的值。

  6. 手动输入
    • 的名字:不能重复标识从模板创建的管道源定义。
    • Values.yml:手动输入或粘贴Values定义。

  7. 点击创建源完成管道源的添加。

如果JFrog管线成功地与存储库同步,则状态字段显示Success。否则,显示“Failed”。

提交到存储库的所有管道配置文件将自动加载到JFrog管道中,并且该源中定义的所有管道都列在管道列表中。


验证YAML

在添加管道源之前,您可以选择验证YAML,然后将其提交给SCM。这使您能够获得关于管道同步错误的即时反馈。YAML验证器将对语义和语法错误进行YAML验证。

验证YAML:

  1. 点击验证YAML
  2. 输入YAML并将YAML内容粘贴到管线和资源字段中。2022世界杯阿根廷预选赛赛程有关管道DSL的更多信息,请参见定义管道
    在输入YAML内容时,对其进行验证,并显示语法错误(如果有的话)。
  3. 修复所有语法错误后,单击验证来验证YAML的语义错误。


查看管道源

若要查看已添加到管道的管道源列表,请转到管理|管道|管道源应用|管道|管道源

该页显示管道源的列表根据JFrog平台中定义的权限目标提供给您。您的用户帐户必须是授予权限用于显示它的管道源。

管道源列表的每一行都包括以下内容:

的名字
  • 对于新的管道资源:这是您在创建管道源时提供的名称
  • 对于现有的管道源默认为repositoryName /分支对于单个分支和repositoryName对于多分支
Git存储库
管道源的源存储库路径
项目
管道源所属的项目
最新状态
上次同步成功/失败的状态
配置文件过滤器
管道配置文件的筛选器字符串
最后一次同步
上次同步的时间和日期
改变了
对管道源进行最后一次更新的用户名
上下文
触发上次同步的提交SHA
日志
单击日志链接查看上次同步的日志。使用它可以诊断同步管道源的失败。

如果管道源是一个多分支源,那么该行将显示所有分支的聚合信息,并且可以展开/折叠以显示每个分支的同步状态。

同步管道源

当管道配置文件发生变化时,你需要同步管道源来重新加载:

  1. 管理|管道|管道源和c舔的行动位于最右边的按钮。
  2. 点击同步

查看同步日志

查询所有已同步配置文件的日志。

  1. 管理|管道|管道源和c舔的行动位于最右边的按钮。
  2. 点击日志

管道源同步恢复

管道提供了一个选项,可以为不同步的管道源启用自动同步。有关更多信息,请参见管道源同步恢复

删除管道源

当一个管道源被删除时,它会删除与该源关联的所有管道。

删除一个管道源。

  1. 管理|管道|管道源和c舔的行动位于最右边的按钮。
  2. 点击删除
  3. 点击确认在出现的确认窗口中。

如果与其关联的任何管道仍在运行,则不能删除管道源。您可以取消运行,也可以等待运行完成,然后删除管道源。

获取分支

当为Multibranch管道源创建一个或多个分支时,webhook可能不会被正确处理,导致这些分支没有被添加到管道源。

管道可以基于所选择的SCM集成和存储库的全名,自动获取和同步多分支管道源中缺失的分支。

这样做:

  1. 单击行动按钮为多分支管道,然后单击获取分支


    获取分支窗口出现。

  2. 分支字段,您可以:
    • 输入要获取和同步的分支的名称。
    • 单击获取分支按钮,尝试根据配置的SCM集成和存储库自动获取所有分支。
      如果找到一个或多个分支,则在下拉菜单中列出它们。
  3. 单击,选择相应的分支。


  4. 点击确认同步管道源。
    新发现的分支现在列出在Pipeline Sources页面上。

  • 没有标签
版权所有©2022 JFrog Ltd.