我有一个JSON文件payload.json
:
{
"text":"Deployment started :rocket:",
"blocks":[
{
"type":"header",
"text":{
"type":"plain_text",
"text":":computer: Deployment release :computer:"
}
},
{
"type":"context",
"elements":[
{
"type":"mrkdwn",
"text":"*${{ steps.date.outputs.date }} | STAGING*"
}
]
},
{
"type":"divider"
},
{
"type":"section",
"text":{
"type":"mrkdwn",
"text":"PR_DESCRIPTION"
}
},
{
"type":"divider"
},
{
"type":"actions",
"elements":[
{
"type":"button",
"text":{
"type":"plain_text",
"text":"🚰 Pipeline"
},
"url":"${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}"
}
]
}
],
"attachments":[
{
"color":"warning",
"fields":[
{
"title":"Statut",
"short":true,
"value":"Deploying ..."
}
]
}
]
}
和一个txt文件pr_body.txt
:
### TITLE
**bold text**
- qsqds
- qsdqds
- qsdqsd
- qsdqsd
1. qsdqsd
2. qsdqsd
3. qsdqsd
4. qsdqsd
`some code here`
我的目标是将payload.json
中的PR_DESCRIPTION
替换为pr_body.txt
中的格式化文本
使用jq
是否可以做到这一点?
我尝试使用jq
来更新我的JSON,但是由于数组对象,我很难找到正确的方法来完成它。
我当然可以用Python来做,但是使用Shell命令来做对我来说是很有前途的。
先谢谢你!
1条答案
按热度按时间5rgfhyps1#
可以使用
-R
选项将markdown文件作为文本读入,使用--argfile
选项读入JSON文件,然后,使用select
将路径为.blocks[].text.text
、内容为"PR_DESCRIPTION"
的节点设置为markdown输入,该值之前存储在一个变量中: