1
- #! /usr/ bin/env bash
1
+ #! /bin/sh
2
2
set +u
3
3
say () {
4
4
echo -e " $1 "
@@ -32,6 +32,8 @@ write_bool_args() {
32
32
echo " -$( lower $1 ) "
33
33
fi
34
34
}
35
+ add_cli_arg () { [ -n " $1 " ] && CODECOV_CLI_ARGS=" ${CODECOV_CLI_ARGS: +$CODECOV_CLI_ARGS } $1 " ; }
36
+ add_arg () { [ -n " $1 " ] && CODECOV_ARGS=" ${CODECOV_ARGS: +$CODECOV_ARGS } $1 " ; }
35
37
b=" \033[0;36m" # variables/constants
36
38
g=" \033[0;32m" # info/debug
37
39
r=" \033[0;31m" # errors
@@ -50,7 +52,7 @@ say " _____ _
50
52
\\ _____\\ ___/ \\ __,_|\\ ___|\\ ___\\ ___/ \\ _/
51
53
$r Wrapper-$CODECOV_WRAPPER_VERSION$x
52
54
"
53
- if [[ " $CODECOV_CLI_TYPE " != " codecov-cli" && " $CODECOV_CLI_TYPE " != " sentry-prevent-cli" ] ]; then
55
+ if [ " $CODECOV_CLI_TYPE " != " codecov-cli" ] && [ " $CODECOV_CLI_TYPE " != " sentry-prevent-cli" ]; then
54
56
echo " Invalid CODECOV_CLI_TYPE: '$CODECOV_CLI_TYPE '. Must be 'codecov-cli' or 'sentry-prevent-cli'"
55
57
exit 1
56
58
fi
63
65
else
64
66
exit_if_error " Could not find binary file $CODECOV_BINARY "
65
67
fi
66
- elif [ " $CODECOV_USE_PYPI " == " true" ];
68
+ elif [ " $CODECOV_USE_PYPI " = " true" ];
67
69
then
68
- if ! pip install " ${CODECOV_CLI_TYPE} $( [ " $CODECOV_VERSION " == " latest" ] && echo " " || echo " ==$CODECOV_VERSION " ) " ; then
70
+ if ! pip install " ${CODECOV_CLI_TYPE} $( [ " $CODECOV_VERSION " = " latest" ] && echo " " || echo " ==$CODECOV_VERSION " ) " ; then
69
71
exit_if_error " Could not install via pypi."
70
72
exit
71
73
fi
77
79
else
78
80
CODECOV_OS=" windows"
79
81
family=$( uname -s | tr ' [:upper:]' ' [:lower:]' )
80
- [[ $family == " darwin" ] ] && CODECOV_OS=" macos"
81
- [[ $family == " linux" ] ] && CODECOV_OS=" linux"
82
- [[ $CODECOV_OS == " linux" ] ] && \
82
+ [ " $family " = " darwin" ] && CODECOV_OS=" macos"
83
+ [ " $family " = " linux" ] && CODECOV_OS=" linux"
84
+ [ " $CODECOV_OS " = " linux" ] && \
83
85
osID=$( grep -e " ^ID=" /etc/os-release | cut -c4-)
84
- [[ $osID == " alpine" ] ] && CODECOV_OS=" alpine"
85
- [[ $( arch) == " aarch64" && $family == " linux" ]] && CODECOV_OS+= " -arm64"
86
+ [ " $osID " = " alpine" ] && CODECOV_OS=" alpine"
87
+ [ " $( arch) " = " aarch64" ] && [ " $family " = " linux" ] && CODECOV_OS= " ${CODECOV_OS} -arm64"
86
88
say " $g ==>$x Detected $b ${CODECOV_OS} $x "
87
89
fi
88
90
CODECOV_FILENAME=" ${CODECOV_CLI_TYPE% -cli} "
89
- [[ $CODECOV_OS == " windows" ]] && CODECOV_FILENAME+= " .exe"
91
+ [ " $CODECOV_OS " = " windows" ] && CODECOV_FILENAME= " ${CODECOV_FILENAME} .exe"
90
92
CODECOV_COMMAND=" ./$CODECOV_FILENAME "
91
- [[ $CODECOV_OS == " macos" ]] && \
93
+ [ " $CODECOV_OS " = " macos" ] && \
92
94
! command -v gpg 2>&1 > /dev/null && \
93
95
HOMEBREW_NO_AUTO_UPDATE=1 brew install gpg
94
96
CODECOV_URL=" ${CODECOV_CLI_URL:- https:// cli.codecov.io} "
@@ -140,98 +142,139 @@ if [ "$CODECOV_DOWNLOAD_ONLY" = "true" ];
140
142
then
141
143
say " $g ==>$x ${CODECOV_CLI_TYPE} download only called. Exiting..."
142
144
fi
143
- CODECOV_CLI_ARGS=()
144
- CODECOV_CLI_ARGS+=( $( k_arg AUTO_LOAD_PARAMS_FROM) $( v_arg AUTO_LOAD_PARAMS_FROM) )
145
- CODECOV_CLI_ARGS+=( $( k_arg ENTERPRISE_URL) $( v_arg ENTERPRISE_URL) )
145
+ CODECOV_CLI_ARGS=" "
146
+ add_cli_arg " $( k_arg AUTO_LOAD_PARAMS_FROM) "
147
+ add_cli_arg " $( v_arg AUTO_LOAD_PARAMS_FROM) "
148
+ add_cli_arg " $( k_arg ENTERPRISE_URL) "
149
+ add_cli_arg " $( v_arg ENTERPRISE_URL) "
146
150
if [ -n " $CODECOV_YML_PATH " ]
147
151
then
148
- CODECOV_CLI_ARGS+=( " --codecov-yml-path" )
149
- CODECOV_CLI_ARGS+=( " $CODECOV_YML_PATH " )
152
+ add_cli_arg " --codecov-yml-path"
153
+ add_cli_arg " $CODECOV_YML_PATH "
150
154
fi
151
- CODECOV_CLI_ARGS+=( $( write_bool_args CODECOV_DISABLE_TELEM) )
152
- CODECOV_CLI_ARGS+=( $( write_bool_args CODECOV_VERBOSE) )
153
- CODECOV_ARGS=()
154
- if [ " $CODECOV_RUN_CMD " == " upload-coverage" ]; then
155
+ add_cli_arg " $( write_bool_args CODECOV_DISABLE_TELEM) "
156
+ add_cli_arg " $( write_bool_args CODECOV_VERBOSE) "
157
+ CODECOV_ARGS=" "
158
+ if [ " $CODECOV_RUN_CMD " = " upload-coverage" ]; then
155
159
# Args for create commit
156
- CODECOV_ARGS+=( $( write_bool_args CODECOV_FAIL_ON_ERROR) )
157
- CODECOV_ARGS+=( $( k_arg GIT_SERVICE) $( v_arg GIT_SERVICE) )
158
- CODECOV_ARGS+=( $( k_arg PARENT_SHA) $( v_arg PARENT_SHA) )
159
- CODECOV_ARGS+=( $( k_arg PR) $( v_arg PR) )
160
- CODECOV_ARGS+=( $( k_arg SHA) $( v_arg SHA) )
161
- CODECOV_ARGS+=( $( k_arg SLUG) $( v_arg SLUG) )
160
+ add_arg " $( write_bool_args CODECOV_FAIL_ON_ERROR) "
161
+ add_arg " $( k_arg GIT_SERVICE) "
162
+ add_arg " $( v_arg GIT_SERVICE) "
163
+ add_arg " $( k_arg PARENT_SHA) "
164
+ add_arg " $( v_arg PARENT_SHA) "
165
+ add_arg " $( k_arg PR) "
166
+ add_arg " $( v_arg PR) "
167
+ add_arg " $( k_arg SHA) "
168
+ add_arg " $( v_arg SHA) "
169
+ add_arg " $( k_arg SLUG) "
170
+ add_arg " $( v_arg SLUG) "
162
171
# Args for create report
163
- CODECOV_ARGS+=( $( k_arg CODE) $( v_arg CODE) )
172
+ add_arg " $( k_arg CODE) "
173
+ add_arg " $( v_arg CODE) "
164
174
# Args for do upload
165
- CODECOV_ARGS+=( $( k_arg ENV) $( v_arg ENV) )
175
+ add_arg " $( k_arg ENV) "
176
+ add_arg " $( v_arg ENV) "
166
177
OLDIFS=$IFS ; IFS=,
167
- CODECOV_ARGS+=( $( k_arg BRANCH) $( v_arg BRANCH) )
168
- CODECOV_ARGS+=( $( k_arg BUILD) $( v_arg BUILD) )
169
- CODECOV_ARGS+=( $( k_arg BUILD_URL) $( v_arg BUILD_URL) )
170
- CODECOV_ARGS+=( $( k_arg DIR) $( v_arg DIR) )
171
- CODECOV_ARGS+=( $( write_bool_args CODECOV_DISABLE_FILE_FIXES) )
172
- CODECOV_ARGS+=( $( write_bool_args CODECOV_DISABLE_SEARCH) )
173
- CODECOV_ARGS+=( $( write_bool_args CODECOV_DRY_RUN) )
178
+ add_arg " $( k_arg BRANCH) "
179
+ add_arg " $( v_arg BRANCH) "
180
+ add_arg " $( k_arg BUILD) "
181
+ add_arg " $( v_arg BUILD) "
182
+ add_arg " $( k_arg BUILD_URL) "
183
+ add_arg " $( v_arg BUILD_URL) "
184
+ add_arg " $( k_arg DIR) "
185
+ add_arg " $( v_arg DIR) "
186
+ add_arg " $( write_bool_args CODECOV_DISABLE_FILE_FIXES) "
187
+ add_arg " $( write_bool_args CODECOV_DISABLE_SEARCH) "
188
+ add_arg " $( write_bool_args CODECOV_DRY_RUN) "
174
189
if [ -n " $CODECOV_EXCLUDES " ];
175
190
then
176
191
for directory in $CODECOV_EXCLUDES ; do
177
- CODECOV_ARGS+=( " --exclude" " $directory " )
192
+ add_arg " --exclude"
193
+ add_arg " $directory "
178
194
done
179
195
fi
180
196
if [ -n " $CODECOV_FILES " ];
181
197
then
182
198
for file in $CODECOV_FILES ; do
183
- CODECOV_ARGS+=( " --file" " $file " )
199
+ add_arg " --file"
200
+ add_arg " $file "
184
201
done
185
202
fi
186
203
if [ -n " $CODECOV_FLAGS " ];
187
204
then
188
205
for flag in $CODECOV_FLAGS ; do
189
- CODECOV_ARGS+=( " --flag" " $flag " )
206
+ add_arg " --flag"
207
+ add_arg " $flag "
190
208
done
191
209
fi
192
- CODECOV_ARGS+=( $( k_arg GCOV_ARGS) $( v_arg GCOV_ARGS) )
193
- CODECOV_ARGS+=( $( k_arg GCOV_EXECUTABLE) $( v_arg GCOV_EXECUTABLE) )
194
- CODECOV_ARGS+=( $( k_arg GCOV_IGNORE) $( v_arg GCOV_IGNORE) )
195
- CODECOV_ARGS+=( $( k_arg GCOV_INCLUDE) $( v_arg GCOV_INCLUDE) )
196
- CODECOV_ARGS+=( $( write_bool_args CODECOV_HANDLE_NO_REPORTS_FOUND) )
197
- CODECOV_ARGS+=( $( write_bool_args CODECOV_RECURSE_SUBMODULES) )
198
- CODECOV_ARGS+=( $( k_arg JOB_CODE) $( v_arg JOB_CODE) )
199
- CODECOV_ARGS+=( $( write_bool_args CODECOV_LEGACY) )
210
+ add_arg " $( k_arg GCOV_ARGS) "
211
+ add_arg " $( v_arg GCOV_ARGS) "
212
+ add_arg " $( k_arg GCOV_EXECUTABLE) "
213
+ add_arg " $( v_arg GCOV_EXECUTABLE) "
214
+ add_arg " $( k_arg GCOV_IGNORE) "
215
+ add_arg " $( v_arg GCOV_IGNORE) "
216
+ add_arg " $( k_arg GCOV_INCLUDE) "
217
+ add_arg " $( v_arg GCOV_INCLUDE) "
218
+ add_arg " $( write_bool_args CODECOV_HANDLE_NO_REPORTS_FOUND) "
219
+ add_arg " $( write_bool_args CODECOV_RECURSE_SUBMODULES) "
220
+ add_arg " $( k_arg JOB_CODE) "
221
+ add_arg " $( v_arg JOB_CODE) "
222
+ add_arg " $( write_bool_args CODECOV_LEGACY) "
200
223
if [ -n " $CODECOV_NAME " ];
201
224
then
202
- CODECOV_ARGS+=( " --name" " $CODECOV_NAME " )
225
+ add_arg " --name"
226
+ add_arg " $CODECOV_NAME "
203
227
fi
204
- CODECOV_ARGS+=( $( k_arg NETWORK_FILTER) $( v_arg NETWORK_FILTER) )
205
- CODECOV_ARGS+=( $( k_arg NETWORK_PREFIX) $( v_arg NETWORK_PREFIX) )
206
- CODECOV_ARGS+=( $( k_arg NETWORK_ROOT_FOLDER) $( v_arg NETWORK_ROOT_FOLDER) )
228
+ add_arg " $( k_arg NETWORK_FILTER) "
229
+ add_arg " $( v_arg NETWORK_FILTER) "
230
+ add_arg " $( k_arg NETWORK_PREFIX) "
231
+ add_arg " $( v_arg NETWORK_PREFIX) "
232
+ add_arg " $( k_arg NETWORK_ROOT_FOLDER) "
233
+ add_arg " $( v_arg NETWORK_ROOT_FOLDER) "
207
234
if [ -n " $CODECOV_PLUGINS " ];
208
235
then
209
236
for plugin in $CODECOV_PLUGINS ; do
210
- CODECOV_ARGS+=( " --plugin" " $plugin " )
237
+ add_arg " --plugin"
238
+ add_arg " $plugin "
211
239
done
212
240
fi
213
- CODECOV_ARGS+=( $( k_arg REPORT_TYPE) $( v_arg REPORT_TYPE) )
214
- CODECOV_ARGS+=( $( k_arg SWIFT_PROJECT) $( v_arg SWIFT_PROJECT) )
241
+ add_arg " $( k_arg REPORT_TYPE) "
242
+ add_arg " $( v_arg REPORT_TYPE) "
243
+ add_arg " $( k_arg SWIFT_PROJECT) "
244
+ add_arg " $( v_arg SWIFT_PROJECT) "
215
245
IFS=$OLDIFS
216
- elif [ " $CODECOV_RUN_CMD " == " empty-upload" ]; then
217
- CODECOV_ARGS+=( $( k_arg BRANCH) $( v_arg BRANCH) )
218
- CODECOV_ARGS+=( $( write_bool_args CODECOV_FAIL_ON_ERROR) )
219
- CODECOV_ARGS+=( $( write_bool_args CODECOV_FORCE) )
220
- CODECOV_ARGS+=( $( k_arg GIT_SERVICE) $( v_arg GIT_SERVICE) )
221
- CODECOV_ARGS+=( $( k_arg PARENT_SHA) $( v_arg PARENT_SHA) )
222
- CODECOV_ARGS+=( $( k_arg PR) $( v_arg PR) )
223
- CODECOV_ARGS+=( $( k_arg SHA) $( v_arg SHA) )
224
- CODECOV_ARGS+=( $( k_arg SLUG) $( v_arg SLUG) )
225
- elif [ " $CODECOV_RUN_CMD " == " pr-base-picking" ]; then
226
- CODECOV_ARGS+=( $( k_arg BASE_SHA) $( v_arg BASE_SHA) )
227
- CODECOV_ARGS+=( $( k_arg PR) $( v_arg PR) )
228
- CODECOV_ARGS+=( $( k_arg SLUG) $( v_arg SLUG) )
229
- CODECOV_ARGS+=( $( k_arg SERVICE) $( v_arg SERVICE) )
230
- elif [ " $CODECOV_RUN_CMD " == " send-notifications" ]; then
231
- CODECOV_ARGS+=( $( k_arg SHA) $( v_arg SHA) )
232
- CODECOV_ARGS+=( $( write_bool_args CODECOV_FAIL_ON_ERROR) )
233
- CODECOV_ARGS+=( $( k_arg GIT_SERVICE) $( v_arg GIT_SERVICE) )
234
- CODECOV_ARGS+=( $( k_arg SLUG) $( v_arg SLUG) )
246
+ elif [ " $CODECOV_RUN_CMD " = " empty-upload" ]; then
247
+ add_arg " $( k_arg BRANCH) "
248
+ add_arg " $( v_arg BRANCH) "
249
+ add_arg " $( write_bool_args CODECOV_FAIL_ON_ERROR) "
250
+ add_arg " $( write_bool_args CODECOV_FORCE) "
251
+ add_arg " $( k_arg GIT_SERVICE) "
252
+ add_arg " $( v_arg GIT_SERVICE) "
253
+ add_arg " $( k_arg PARENT_SHA) "
254
+ add_arg " $( v_arg PARENT_SHA) "
255
+ add_arg " $( k_arg PR) "
256
+ add_arg " $( v_arg PR) "
257
+ add_arg " $( k_arg SHA) "
258
+ add_arg " $( v_arg SHA) "
259
+ add_arg " $( k_arg SLUG) "
260
+ add_arg " $( v_arg SLUG) "
261
+ elif [ " $CODECOV_RUN_CMD " = " pr-base-picking" ]; then
262
+ add_arg " $( k_arg BASE_SHA) "
263
+ add_arg " $( v_arg BASE_SHA) "
264
+ add_arg " $( k_arg PR) "
265
+ add_arg " $( v_arg PR) "
266
+ add_arg " $( k_arg SLUG) "
267
+ add_arg " $( v_arg SLUG) "
268
+ add_arg " $( k_arg SERVICE) "
269
+ add_arg " $( v_arg SERVICE) "
270
+ elif [ " $CODECOV_RUN_CMD " = " send-notifications" ]; then
271
+ add_arg " $( k_arg SHA) "
272
+ add_arg " $( v_arg SHA) "
273
+ add_arg " $( write_bool_args CODECOV_FAIL_ON_ERROR) "
274
+ add_arg " $( k_arg GIT_SERVICE) "
275
+ add_arg " $( v_arg GIT_SERVICE) "
276
+ add_arg " $( k_arg SLUG) "
277
+ add_arg " $( v_arg SLUG) "
235
278
else
236
279
exit_if_error " Invalid run command specified: $CODECOV_RUN_CMD "
237
280
exit
@@ -246,19 +289,19 @@ else
246
289
fi
247
290
say " $g ->$x Token length: ${# token} "
248
291
token_str=" "
249
- token_arg=()
292
+ token_arg=" "
250
293
if [ -n " $token " ];
251
294
then
252
- token_str+ =" -t <redacted>"
253
- token_arg+=( " -t " " $token " )
295
+ token_str=" -t <redacted>"
296
+ token_arg= " -t $token "
254
297
fi
255
298
say " $g ==>$x Running $CODECOV_RUN_CMD "
256
- say " $b$CODECOV_COMMAND $( echo " ${ CODECOV_CLI_ARGS[@]} " ) $CODECOV_RUN_CMD$token_str $( echo " ${ CODECOV_ARGS[@]} " ) $x "
257
- if ! $CODECOV_COMMAND \
258
- ${ CODECOV_CLI_ARGS[*]} \
259
- ${CODECOV_RUN_CMD} \
260
- ${token_arg[*]} \
261
- " ${CODECOV_ARGS[@]} " ;
262
- then
299
+ say " $b$CODECOV_COMMAND $CODECOV_CLI_ARGS $CODECOV_RUN_CMD$token_str $CODECOV_ARGS$x "
300
+ if [ -n " $token " ] ; then
301
+ eval " $CODECOV_COMMAND $ CODECOV_CLI_ARGS $CODECOV_RUN_CMD $token_arg $CODECOV_ARGS "
302
+ else
303
+ eval " $CODECOV_COMMAND $CODECOV_CLI_ARGS $CODECOV_RUN_CMD $CODECOV_ARGS "
304
+ fi
305
+ if [ $? -ne 0 ] ; then
263
306
exit_if_error " Failed to run $CODECOV_RUN_CMD "
264
307
fi
0 commit comments