通过 rest api 向Jira 发送复制附件的指令。也可以使用Jira Data Center 内置的 Automation 功能自动触发。
Rest API
{ "jira":{ "url": "目标Jira主页地址", "authorization":"目标Jira用户登录授权信息," // 方法参见下面 Jira用户登录授权信息 部分的说明 }, "issues":[ { "source":{ "key": "当前Jira实例的问题Key" }, "target":{ "key": "目标Jira实例的问题Key", "force_copy": true 或 false, 默认为false。 如果目标Jira问题中含有同名文件是否继续复制 } }, { "source":{ "key": "当前Jira实例的问题Key" }, "target":{ "customfield":"customfield_10001", //从 自定义字段 customfield_10001 中读取目标Jira 问题键值。 "comment": true 或 false。 默认为 false。 是否向目标 Jira 问题中添加备注,显示此次成功复制的附件。 "force_copy": true 或 false 默认为false。 如果目标Jira问题中含有同名文件是否继续复制 } } ] }
Rest API 字段说明
必填 | ||||
---|---|---|---|---|
jira | url | 是 | 目标Jira的主页地址 | |
authorization | 目标 Jira 的用户验证信息,以 Basic 或 Bearer 开头。 如果留空,则必须在插件中事先登记目标 Jira 主页地址及对应的 用户身份验证信息 | |||
issues | source | key | 是 | 当前Jira 实例的问题键值 Automation中可以使用 {{issue.key}} |
target | key | 目标 Jira 问题键值 | ||
customfield | 当前Jira实例中,保存有 目标 Jira 问题键值的自定义字段id | |||
comment | true 将向目标Jira 问题中添加备注,以说明复制了哪些附件 false(默认) | |||
force_copy | true 即使目标Jira 问题中已经有同名附件,也会以追加方式复制附件 false(默认) 如果目标Jira 问题中已经有同名附件,将不会复制 |
Jira用户登录授权信息
- 用户名密码
如果采用用户名密码,或者 Jira Cloud 个人访问令牌,需要通过base64编码,生成身份验证信息
-
echo -n "用户名:密码(或Cloud个人令牌)" |base64 例如目标 Jira 的用户账号为admin,密码为admin 输入echo -n "admin:admin" |base64 返回 YWRtaW46YWRtaW4= 目标Jira的用户身份验证信息为: "Basic YWRtaW46YWRtaW4="
Server/DC 个人访问令牌
返回结果
返回结果
{ "attachments": [ { "copied": [g.png], //已复制的附件 "from": "http://dc.unlimax.cn:30070/browse/SCRUM-55", "to": "https://unlimax-sandbox-568.atlassian.net/browse/DJSP-1", "failed": [ //无法复制的附件 { "error_message": "目标问题中已经有同名附件", "name": "4f16aef186d655c6eda3948f44fec9a6bba067a9_Pre-migration_SpaceAnonymousPermissions_Confluence_2023-33-21_16-33-32.csv" }, { "error_message": "目标问题中已经有同名附件", "name": "import_issue_status.csv" }, { "error_message": "目标问题中已经有同名附件", "name": "register_windows.bat" } ] } ], "author": "suadmin(suadmin)", //执行人 "time": "2023-10-07 03:41:03" //执行时间 }