在部署时向构件动态添加属性
您可以为部署(PUT)请求添加键值矩阵参数,这些参数将自动转换为部署工件上的属性。
由于矩阵参数可以添加到URL的任何部分,而不仅仅是在末尾,因此可以将它们添加到目标部署基URL。在部署时,工件路径被添加到矩阵参数之后,最终部署的工件将被分配定义好的属性。
您甚至可以使用动态属性,这取决于我们的部署框架。
例如,当使用Maven时,您可以向部署URL添加两个参数:buildNumber
而且修订
, Maven在部署时用项目属性中的动态值替换它(例如,通过使用Maven build-number插件)。
因此,如果你将分发URL定义为:
http://myserver: 8081 / artifactory / qa-releases; buildNumber = $ {buildNumber};修订= ${修订}
并部署到qa-releases
用下面的路径存储一个jar:
/ org/jfrog/build-info-api/1.3.1/build-info-api-1.3.1.jar
在部署时,URL被转换为:
http://myserver:8081/artifactory/qa-releases;buildNumber=249;revision=1052/org/jfrog/build-info-api/1.3.1/build-info-api-1.3.1.jar
以及部署build-info-api-1.3.1.jar
有两个新属性:
buildNumber = 1052 = 249修订
附加属性的权限
为了向部署的工件添加属性,您必须拥有“注解”权限。
用矩阵参数查询控制工件分辨率
矩阵参数也可以在工件解析中使用,以控制如何发现和服务工件。
目前支持两种类型的查询:
- 非冲突性的价值观
- 强制性的值。
非强制性属性
已解析的工件可能没有指定键的属性,或者具有指定键的属性和指定的确切值(即,如果工件具有具有不冲突值的属性,则工件将被解析)。
非强制属性由简单的键=值
参数。
例如:
当前工件属性 |
矩阵参数 |
解析结果 |
---|---|---|
颜色=黑色 |
颜色=黑色 |
好(200) |
None或height=50 |
颜色=黑色 |
好(200) |
颜色=红色 |
颜色=黑色 |
NOT_FOUND (404) |
强制性的属性
已解析工件必须具有指定键和指定确切值的属性。
强制属性在属性键后用加号(+)标识:键+ =值
.
例如:
当前工件属性 |
矩阵参数 |
解析结果 |
---|---|---|
颜色=黑色 |
+ =黑色 |
好(200) |
None或height=50 |
+ =黑色 |
NOT_FOUND (404) |
颜色=红色 |
+ =黑色 |
NOT_FOUND (404) |