@@ -32,21 +32,57 @@ teamwork::add_comment() {
3232 log::message " $response "
3333}
3434
35+ teamwork::add_tag () {
36+ local -r tag_name=$1
37+
38+ if [ " $ENV " == " test" ]; then
39+ log::message " Test - Simulate request. Task ID: $TEAMWORK_TASK_ID - Tag: ${tag_name// \" / } "
40+ return
41+ fi
42+
43+ response=$( curl -X " PUT" " $TEAMWORK_URI /projects/api/v1/tasks/$TEAMWORK_TASK_ID /tags.json" \
44+ -u " $TEAMWORK_API_TOKEN " ' :' \
45+ -H ' Content-Type: application/json; charset=utf-8' \
46+ -d " { \" tags\" : { \" content\" : \" ${tag_name// \" / } \" } }" )
47+
48+ log::message " $response "
49+ }
50+
51+ teamwork::remove_tag () {
52+ local -r tag_name=$1
53+
54+ if [ " $ENV " == " test" ]; then
55+ log::message " Test - Simulate request. Task ID: $TEAMWORK_TASK_ID - Tag: ${tag_name// \" / } "
56+ return
57+ fi
58+
59+ response=$( curl -X " PUT" " $TEAMWORK_URI /projects/api/v1/tasks/$TEAMWORK_TASK_ID /tags.json" \
60+ -u " $TEAMWORK_API_TOKEN " ' :' \
61+ -H ' Content-Type: application/json; charset=utf-8' \
62+ -d " { \" tags\" : { \" content\" : \" ${tag_name// \" / } \" },\" removeProvidedTags\" :\" true\" }" )
63+
64+ log::message " $response "
65+ }
66+
3567teamwork::pull_request_opened () {
3668 local -r pr_url=$( github::get_pr_url)
3769 local -r pr_title=$( github::get_pr_title)
3870 local -r user=$( github::get_sender_user)
3971 local -r pr_stats=$( github::get_pr_patch_stats)
72+ local -r pr_body=$( github::get_pr_body)
4073 IFS=" " read -r -a pr_stats_array <<< " $pr_stats"
4174
4275 teamwork::add_comment "
4376**$user ** opened a PR: **$pr_title **
4477[$pr_url ]($pr_url )
45-
78+ ---
79+ ${pr_body//###/#### }
4680---
4781
4882🔢 ${pr_stats_array[0]} commits / 📝 ${pr_stats_array[1]} files updated / ${pr_stats_array[2]} additions / ${pr_stats_array[3]} deletions
4983 "
84+
85+ teamwork::add_tag " PR Open"
5086}
5187
5288teamwork::pull_request_closed () {
@@ -60,11 +96,14 @@ teamwork::pull_request_closed() {
6096**$user ** merged a PR: **$pr_title **
6197[$pr_url ]($pr_url )
6298"
99+ teamwork::add_tag " PR Merged"
100+ teamwork::remove_tag " PR Open"
63101 else
64102 teamwork::add_comment "
65103**$user ** closed a PR without merging: **$pr_title **
66104[$pr_url ]($pr_url )
67105"
106+ teamwork::remove_tag " PR Open"
68107 fi
69108}
70109
0 commit comments