9
9
outputs :
10
10
labels : ${{ steps.output_label_data.outputs.value }}
11
11
steps :
12
- - name : Getting Labels data
13
- id : get_label_data
14
-
15
- with :
16
- route : GET /repos/yumemi-inc/android-engineer-codecheck/labels
17
- env :
18
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
19
- - id : output_label_data
20
- run : |
21
- result=$(echo '${{ steps.get_label_data.outputs.data }}' | sed -z 's/\n//g')
22
- echo "::set-output name= value:: ${result}"
12
+ - name : Getting Labels data
13
+ id : get_label_data
14
+
15
+ with :
16
+ route : GET /repos/yumemi-inc/android-engineer-codecheck/labels
17
+ env :
18
+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
19
+ - id : output_label_data
20
+ run : |
21
+ result=$(echo '${{ steps.get_label_data.outputs.data }}' | sed -z 's/\n//g')
22
+ echo "value= ${result}" >> $GITHUB_OUTPUT
23
23
24
24
create-issue-labels :
25
25
needs : get-issue-labels
26
26
runs-on : ubuntu-latest
27
27
permissions :
28
28
issues : write
29
29
strategy :
30
- matrix :
30
+ matrix :
31
31
label : ${{ fromJson(needs.get-issue-labels.outputs.labels) }}
32
32
steps :
33
- - name : Create a label
34
-
35
- with :
36
- route : POST /repos/${{ github.repository }}/labels
37
- name : ${{ matrix.label.name }}
38
- color : ${{ matrix.label.color }}
39
- description : ${{ matrix.label.description }}
40
- env :
41
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
42
-
33
+ - name : Create a label
34
+
35
+ with :
36
+ route : POST /repos/${{ github.repository }}/labels
37
+ name : ${{ matrix.label.name }}
38
+ color : ${{ matrix.label.color }}
39
+ description : ${{ matrix.label.description }}
40
+ env :
41
+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
42
+
43
43
get-milestones :
44
44
if : github.repository != 'yumemi-inc/android-engineer-codecheck'
45
45
runs-on : ubuntu-latest
46
46
outputs :
47
47
milestones : ${{ steps.output_milestones_data.outputs.value }}
48
48
steps :
49
- - name : Getting Milestones data
50
- id : get_milestones_data
51
-
52
- with :
53
- route : GET /repos/yumemi-inc/android-engineer-codecheck/milestones
54
- env :
55
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
56
- - id : output_milestones_data
57
- run : |
58
- result=$(echo '${{ steps.get_milestones_data.outputs.data }}' | sed -z 's/\n//g')
59
- echo "::set-output name= value:: ${result}"
49
+ - name : Getting Milestones data
50
+ id : get_milestones_data
51
+
52
+ with :
53
+ route : GET /repos/yumemi-inc/android-engineer-codecheck/milestones
54
+ env :
55
+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
56
+ - id : output_milestones_data
57
+ run : |
58
+ result=$(echo '${{ steps.get_milestones_data.outputs.data }}' | sed -z 's/\n//g')
59
+ echo "value= ${result}" >> $GITHUB_OUTPUT
60
60
61
61
create-milestones :
62
62
needs : get-milestones
63
63
runs-on : ubuntu-latest
64
64
permissions :
65
65
issues : write
66
66
strategy :
67
- matrix :
67
+ matrix :
68
68
milestone : ${{ fromJson(needs.get-milestones.outputs.milestones) }}
69
69
steps :
70
- - name : Create a milestone
71
-
72
- with :
73
- route : POST /repos/${{ github.repository }}/milestones
74
- title : ${{ matrix.milestone.title }}
75
- description : ${{ matrix.milestone.description }}
76
- env :
77
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
70
+ - name : Create a milestone
71
+
72
+ with :
73
+ route : POST /repos/${{ github.repository }}/milestones
74
+ title : ${{ matrix.milestone.title }}
75
+ description : ${{ matrix.milestone.description }}
76
+ env :
77
+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
78
78
79
79
get-myrepo-milestones :
80
80
needs : create-milestones
@@ -84,38 +84,36 @@ jobs:
84
84
outputs :
85
85
milestones : ${{ steps.output_milestones_data.outputs.value }}
86
86
steps :
87
- - name : Getting Milestones data
88
- id : get_milestones_data
89
-
90
- with :
91
- route : GET /repos/${{ github.repository }}/milestones
92
- env :
93
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
94
- - id : output_milestones_data
95
- run : |
96
- result=$(echo '${{ steps.get_milestones_data.outputs.data }}' | sed -z 's/\n/%0A/g' | sed -z 's/\r/%0D/g')
97
- echo "::set-output name=value::${result}"
98
-
87
+ - name : Getting Milestones data
88
+ id : get_milestones_data
89
+
90
+ with :
91
+ route : GET /repos/${{ github.repository }}/milestones
92
+ env :
93
+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
94
+ - id : output_milestones_data
95
+ run : |
96
+ result=$(echo '${{ steps.get_milestones_data.outputs.data }}' | sed -z 's/\n//g')
97
+ echo "value=${result}" >> $GITHUB_OUTPUT
99
98
get-issues :
100
99
if : github.repository != 'yumemi-inc/android-engineer-codecheck'
101
100
runs-on : ubuntu-latest
102
101
outputs :
103
102
issues : ${{ steps.output_issues_data.outputs.value }}
104
103
steps :
105
- - name : Getting issues data
106
- id : get_issues_data
107
-
108
- with :
109
- route : GET /repos/yumemi-inc/android-engineer-codecheck/issues
110
- sort : created
111
- direction : asc
112
- env :
113
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
114
- - id : output_issues_data
115
- run : |
116
- result=$(echo '${{ steps.get_issues_data.outputs.data }}' | sed -z 's/\n/%0A/g' | sed -z 's/\r/%0D/g')
117
- echo "::set-output name=value::${result}"
118
- - run : echo -e '${{ steps.output_issues_data.outputs.value }}'
104
+ - name : Getting issues data
105
+ id : get_issues_data
106
+
107
+ with :
108
+ route : GET /repos/yumemi-inc/android-engineer-codecheck/issues
109
+ sort : created
110
+ direction : asc
111
+ env :
112
+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
113
+ - id : output_issues_data
114
+ run : |
115
+ result=$(echo '${{ steps.get_issues_data.outputs.data }}' | jq -c '[.[] | select(has("milestone")) | select(.milestone != null)]')
116
+ echo "value=${result}" >> $GITHUB_OUTPUT
119
117
120
118
get-myrepo-issues :
121
119
if : github.repository != 'yumemi-inc/android-engineer-codecheck'
@@ -125,63 +123,61 @@ jobs:
125
123
outputs :
126
124
issues : ${{ steps.output_issues_data.outputs.value }}
127
125
steps :
128
- - name : Getting issues data
129
- id : get_issues_data
130
-
131
- with :
132
- route : GET /repos/${{ github.repository }}/issues
133
- state : all
134
- per_page : 100
135
- env :
136
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
137
- - id : output_issues_data
138
- run : |
139
- result=$(echo '${{ steps.get_issues_data.outputs.data }}' | sed -z 's/\n/%0A/g' | sed -z 's/\r/%0D/g')
140
- echo "::set-output name=value::${result}"
141
- - run : echo -e '${{ steps.output_issues_data.outputs.value }}'
126
+ - name : Getting issues data
127
+ id : get_issues_data
128
+
129
+ with :
130
+ route : GET /repos/${{ github.repository }}/issues
131
+ state : all
132
+ per_page : 100
133
+ env :
134
+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
135
+ - id : output_issues_data
136
+ run : |
137
+ result=$(echo '${{ steps.get_issues_data.outputs.data }}' | sed -z 's/\n//g')
138
+ echo "value=${result}" >> $GITHUB_OUTPUT
142
139
143
140
create-issues :
144
- needs : [create-issue-labels, get-myrepo-milestones, get-issues, get-myrepo-issues]
141
+ needs : [ create-issue-labels, get-myrepo-milestones, get-issues, get-myrepo-issues ]
145
142
runs-on : ubuntu-latest
146
143
permissions :
147
144
issues : write
148
145
strategy :
149
146
max-parallel : 1
150
- matrix :
147
+ matrix :
151
148
issue : ${{ fromJson(needs.get-issues.outputs.issues) }}
152
149
steps :
153
- - name : Find milestone
154
- id : find-milestone
155
- run : |
156
- milestones='${{ needs.get-myrepo-milestones.outputs.milestones }}'
157
- milestone_number=$(echo ${milestones} | jq '.[] | select (.title=="${{ matrix.issue.milestone.title }}") | .number' )
158
- echo "::set-output name=number::${milestone_number}"
159
- - name : Create a issue
160
- if : ${{ matrix.issue.pull_request == null }}
161
- run : |
162
- body=$(echo '${{ matrix.issue.body }}')
163
- body="${body//$'\n'/\\n}"
164
- body="${body//$'\r'/\\r}"
165
-
166
- if [[ "$body" =~ '#'[0-9] ]]; then
167
- link=$(echo "$body" | grep -o "#[0-9]")
168
- num=$(echo $link | tr -d '#')
169
-
170
- issues=$(echo '${{ needs.get-issues.outputs.issues }}' | jq '[ . as $d | keys[] | $d[.] + {index:.} ]')
171
- issue_index=$(echo "$issues" | jq ".[] | select (.number==${num}) | .index")
172
- my_issue_count=$(echo '${{ needs.get-myrepo-issues.outputs.issues }}' | jq '. | length')
173
-
174
- num=$(($issue_index+$my_issue_count+1))
175
- body=$(echo $body | sed "s/$link/#${num}/g")
176
- fi
177
-
178
- labels='${{ toJson(matrix.issue.labels.*.name) }}'
179
- curl -X POST -H "Accept: application/vnd.github.v3+json" \
180
- -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \
181
- https://api.github.com/repos/${{ github.repository }}/issues \
182
- -d "{
183
- \"title\" : \"${{ matrix.issue.title }}\",
184
- \"body\" : \"$body\",
185
- \"labels\" : ${labels},
186
- \"milestone\" : ${{ steps.find-milestone.outputs.number }}
187
- }"
150
+ - name : Find milestone
151
+ id : find-milestone
152
+ run : |
153
+ milestones='${{ needs.get-myrepo-milestones.outputs.milestones }}'
154
+ milestone_number=$(echo ${milestones} | jq '.[] | select (.title=="${{ matrix.issue.milestone.title }}") | .number' )
155
+ echo "number=${milestone_number}" >> $GITHUB_OUTPUT
156
+ - name : Create a issue
157
+ run : |
158
+ body=$(echo '${{ matrix.issue.body }}')
159
+ body="${body//$'\n'/\\n}"
160
+ body="${body//$'\r'/\\r}"
161
+
162
+ if [[ "$body" =~ '#'[0-9] ]]; then
163
+ link=$(echo "$body" | grep -o -E "#[0-9]+")
164
+ num=$(echo $link | tr -d '#')
165
+
166
+ issues=$(echo '${{ needs.get-issues.outputs.issues }}' | jq '[ . as $d | keys[] | $d[.] + {index:.} ]')
167
+ issue_index=$(echo "$issues" | jq ".[] | select (.number==${num}) | .index")
168
+ my_issue_count=$(echo '${{ needs.get-myrepo-issues.outputs.issues }}' | jq '. | length')
169
+
170
+ num=$(($issue_index+$my_issue_count+1))
171
+ body=$(echo $body | sed "s/$link/#${num}/g")
172
+ fi
173
+
174
+ labels='${{ toJson(matrix.issue.labels.*.name) }}'
175
+ curl -X POST -H "Accept: application/vnd.github.v3+json" \
176
+ -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" \
177
+ https://api.github.com/repos/${{ github.repository }}/issues \
178
+ -d "{
179
+ \"title\" : \"${{ matrix.issue.title }}\",
180
+ \"body\" : \"$body\",
181
+ \"labels\" : ${labels},
182
+ \"milestone\" : ${{ steps.find-milestone.outputs.number }}
183
+ }"
0 commit comments