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





概述

CreateReleaseBundle是产生的原生步骤发布包分发给Artifactory边缘节点该步骤可用于创建已签名或未签名版本.当标志标签设置为真正的在yaml中,此步骤保存工件信息以支持签名管道。

页面内容


YAML模式

DockerBuild原生步骤的YAML模式如下:

CreateReleaseBundle
- name:  steps: - name:  type: CreateReleaseBundle configuration: #继承所有的标签从bash;//www.si-fil.com/confluence/display/JFROG/Bash releaseBundleName:  releaseBundleVersion:  dryRun:  # default true sign:  # default false description:  # optional failOnValidate:  # optional (Signed Pipelines must enabled) releaseNotes: # optional content:  # "markdown|asciidoc|plain_text" syntax:  # required in releaseNotes inputRes2022世界杯阿根廷预选赛赛程ources: - name:  # one or more BuildInfo, or - name: # one Aql outputResourc2022世界杯阿根廷预选赛赛程es: - name:  execution: onStart: - echo "Preparing for work…" onSuccess: - echo "Job well done!" onFailure: - echo "uh oh, something went wrong" onComplete: #always - echo " cleanup up some stuff"

标签

的名字

一个字母数字标识步骤的字符串(允许使用下划线)。

类型

必须CreateReleaseBundle对于此步骤类型。

配置

指定步骤执行环境的所有配置选择。该步骤继承Bash/PowerShell步骤配置标记,包括这些相关的标签:

标签

用途说明

必需的/可选

input2022世界杯阿根廷预选赛赛程Resources

必须指定要么一个命名BuildInfo资源(年代)一个Aql资源。CreateReleaseBundle步骤不接受其他输入资源。2022世界杯阿根廷预选赛赛程

如果BuildInfoinput2022世界杯阿根廷预选赛赛程Resources时,对发布包的查询是使用buildNamebuildNumber,targetRepo的每个BuildInfo输入。

要求
output2022世界杯阿根廷预选赛赛程Resources

必须指定一个ReleaseBundle资源。

的名字版本,isSigned在输出ReleaseBundle中的设置被更新为步骤的releaseBundleNamereleaseBundleVersion,标志值(或取代这些值的环境变量占位符的任何环境变量值)。

要求


此外,可以定义这些标记来支持步骤的本机操作:

的所有本机步骤都派生自Bash的一步。这意味着所有步骤共享来自Bash的相同的基本标记集,而本机步骤也有自己的附加标记来支持该步骤的特定功能。所以熟悉这个很重要Bash步骤定义,因为它是所有其他步骤定义的核心。

标签

用途说明

必需的/可选
releaseBundleName 发布包的字母数字名称 要求
releaseBundleVersion 版本包的版本字符串 要求
dryRun

当设置为真正的解析和验证仅用于测试是否可以创建发布包版本。

默认是真实的。

可选
标志

指定作为此步骤的一部分是否对发布包版本进行签名。

默认值为false。

GPG签名密钥密码

当配置符号= true,以及当您的发行版发布包时GPG签名密钥passsphrase受保护,请记得在创建/更新您的分布的集成

可选
描述 发布包的描述 可选
releaseNotes

描述发布包版本的发布说明。

语法指定发布说明的格式:plain_text减价,或asciidoc.默认是plain_text

内容是指定语法格式的发行说明字符串。使用|字符,表示保留换行符的字符串。

可选
failOnValidate

的签名之一,则该步骤失败BuildInfo无法验证输入资源工件。

默认是

可选的(签署了管道必须启用)

执行

声明要在执行前和执行后阶段执行的shell命令序列集合:

标签 用途说明 必需的/可选
onStart 要在本机操作之前执行的命令 可选
调用onSuccess 在成功完成时执行的命令 可选
onFailure 在完成失败时执行的命令 可选
onComplete 在任何补全过程中执行的命令 可选


对象执行的操作onExecute阶段是此步骤类型固有的,不能被重写。


例子

下面的示例展示了为几个不同的发布包配置哪些设置。

使用BuildInfo资源创建的未签名发布包

使用BuildInfo资源创建的一个简单的、未签名的发布包。在这种情况下,发布包版本将是运行号,没有描述或发布说明。

CreateReleaseBundle
模板:true #需要本地模板valuesFilePath: ./values。yml资2022世界杯阿根廷预选赛赛程源:#第一次构建到bundle的构建信息-名称:gosvc_promoted_build_info类型:BuildInfo配置:sourceArtifactory: {{. values。myArtifactoryIntegration}} buildName: svc_build buildNumber: 1 #第二次构建到包的构建信息- name: appl_promoted_build_info类型:BuildInfo配置:sourceArtifactory: {{. values . demoartifactoryintegration}} buildName: backend_build buildNumber: 1 #发布包- name: release_bundle类型:ReleaseBundle配置:sourceDistribution: {{. values。distributionIntegration}}名称:demo_rb版本:v1.0.0 #相同发布包的签名版本-名称:signed_bundle类型:ReleaseBundle配置:sourceDistribution: {{. values . name:#分发规则- name: distribution_rules type: DistributionRule configuration: sourceDistribution: {{. values . name:分配规则。distributionIntegration}} serviceName: "*" siteName: "*" cityName: "*" countryCodes: - "CN" - "GB" pipeline: - name: demo_release_mgmt steps: - name: bundle type: CreateReleaseBundle configuration: releaseBundleName: demo_rb releaseBundleVersion: v1.0. .${run_number} dryRun: false sign: false description: "some random test description" input2022世界杯阿根廷预选赛赛程Resources: - name: gosvc_promoted_build_info trigger: true - name: appl_promoted_build_info trigger: true outputResources: - name: release_bundle releaseNotes: syntax: markdown content: | ## Heading * Bullet * Points - name: sign type: SignReleaseBundle configuration: inputResources: - name: release_bundle outputResources: - name: signed_bundle - name:分发类型:DistributeReleaseBundle configuration:- name: signed_bund2022世界杯阿根廷预选赛赛程le - name: distribution_rules . dryRun: false inputResources

创建并签署发布包

创建并立即签署一个发布包,并将描述和发布说明添加到发布包中。

CreateReleaseBundle
—name: createReleaseBundlePipeline steps:—name: createReleaseBundleStep类型:CreateReleaseBundle配置:releaseBundleName: myReleaseBundle releaseBundleVersion: "${run_number}" dryRun: false sign: true description: "My release bundle" releaseNotes:语法:plain text content: " release of ${run_number} by ${step_name}" inputResources: - name: myBuildInfo outpu2022世界杯阿根廷预选赛赛程tResources: - name: myReleaseBundle

触发干跑

触发发布包创建的一次演练。不会创建任何发布包。

CreateReleaseBundle
—name: createReleaseBundlePipeline steps:—name: createReleaseBundleStep type: CreateReleaseBundle configuration: releaseBundleName: myReleaseBundle releaseBundleVersion: "${run_number}" dryRun: true inputResources: - n2022世界杯阿根廷预选赛赛程ame: myBuildInfo outputResources: - name: myReleaseBundle . txt

它是如何工作的

当您使用CreateReleaseBundle管道中的原生步骤,它在后台执行以下功能:

  • Jfrog rt配置(通过输入资源中的集成来配置cli)
  • jfrog rt curl(获取Artifactory service_id)
  • validate_artifact(使用签名管道特性来验证传入的BuildInfo)
  • 创建发布包创建有效负载(将位于分发请求中的JSON对象)
  • curl(将发布包创建有效负载发送到分发版)
  • write_output(更新输出ReleaseBundle资源)
  • Save_artifact_info(如果包已签名,则保存数据以便与已签名的管道一起使用)
  • 没有标签
版权所有©2022 JFrog有限公司