Skip to content

Commit e194cf7

Browse files
add check csv-header to github CI (#130)
1 parent cac45ab commit e194cf7

File tree

1 file changed

+42
-0
lines changed

1 file changed

+42
-0
lines changed

.github/workflows/smoke-tests.yml

+42
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ on:
99
jobs:
1010
smoke-test:
1111
strategy:
12+
fail-fast: false
1213
matrix:
1314
args:
1415
- "--invites"
@@ -51,3 +52,44 @@ jobs:
5152

5253
- name: Show out.csv
5354
run: cat out.csv
55+
56+
- name: Check header in first line
57+
run: |
58+
case "${{ matrix.args }}" in
59+
--invites)
60+
HEADER="repository name,invited login,invite creation date,invitation url"
61+
;;
62+
--commits)
63+
HEADER="repository name,author name,author login,author email,date and time,changed files,commit id,branch"
64+
;;
65+
--pull_requests)
66+
HEADER="repository name,title,id,state,commit into,commit from,created at,creator name,creator login,creator email,changed files,comment body,comment created at,comment author name,comment author login,comment author email,merger name,merger login,merger email,source branch,target branch,assignee story,related issues,labels,milestone"
67+
;;
68+
--issues)
69+
HEADER="repository name,number,title,state,task,created at,creator name,creator login,creator email,closer name,closer login,closer email,closed at,comment body,comment created at,comment author name,comment author login,comment author email,assignee story,connected pull requests,labels,milestone"
70+
;;
71+
--wikis)
72+
HEADER="repository name,author name,author login,datetime,page,action,revision id,added lines,deleted lines"
73+
;;
74+
--contributors)
75+
HEADER="repository_name,login,name,email,url,permissions,total_commits,node_id,type,bio,site_admin"
76+
;;
77+
--workflow_runs)
78+
HEADER="repository_name,display_title,event,head_branch,head_sha,name,path,started_at,total_duration,conclusion,status,url"
79+
;;
80+
*)
81+
echo "Unknown ARG: '${{ matrix.args }}'"
82+
exit 1
83+
;;
84+
esac
85+
86+
FIRST_LINE=$(head -n 1 out.csv)
87+
88+
if [[ "$FIRST_LINE" == "$HEADER"* ]]; then
89+
echo "Header is valid for ${{ matrix.args }}"
90+
else
91+
echo "::error::Header is invalid for ${{ matrix.args }}"
92+
echo "Expected: $HEADER"
93+
echo "Actual: $FIRST_LINE"
94+
exit 1
95+
fi

0 commit comments

Comments
 (0)