mirror of
https://github.com/codecov/codecov-action.git
synced 2025-12-08 16:16:24 +00:00
Th/add commands (#1745)
* chore(deps): bump wrapper to 0.0.33 * feat: allow for new commands * fix: bump to 0.0.34
This commit is contained in:
14
action.yml
14
action.yml
@@ -4,6 +4,9 @@ name: 'Codecov'
|
|||||||
description: 'GitHub Action that uploads coverage reports for your repository to codecov.io'
|
description: 'GitHub Action that uploads coverage reports for your repository to codecov.io'
|
||||||
author: 'Thomas Hu <@thomasrockhu-codecov> | Codecov'
|
author: 'Thomas Hu <@thomasrockhu-codecov> | Codecov'
|
||||||
inputs:
|
inputs:
|
||||||
|
base_sha:
|
||||||
|
description: 'The base SHA to select. This is only used in the "pr-base-picking" run command'
|
||||||
|
required: false
|
||||||
binary:
|
binary:
|
||||||
description: 'The file location of a pre-downloaded version of the CLI. If specified, integrity checking will be bypassed.'
|
description: 'The file location of a pre-downloaded version of the CLI. If specified, integrity checking will be bypassed.'
|
||||||
required: false
|
required: false
|
||||||
@@ -52,6 +55,9 @@ inputs:
|
|||||||
flags:
|
flags:
|
||||||
description: 'Comma-separated list of flags to upload to group coverage metrics.'
|
description: 'Comma-separated list of flags to upload to group coverage metrics.'
|
||||||
required: false
|
required: false
|
||||||
|
force:
|
||||||
|
description: 'Only used for empty-upload run command'
|
||||||
|
required: false
|
||||||
git_service:
|
git_service:
|
||||||
description: 'Override the git_service (e.g. github_enterprise)'
|
description: 'Override the git_service (e.g. github_enterprise)'
|
||||||
required: false
|
required: false
|
||||||
@@ -115,6 +121,10 @@ inputs:
|
|||||||
root_dir:
|
root_dir:
|
||||||
description: 'Root folder from which to consider paths on the network section. Defaults to current working directory.'
|
description: 'Root folder from which to consider paths on the network section. Defaults to current working directory.'
|
||||||
required: false
|
required: false
|
||||||
|
run_command:
|
||||||
|
description: 'Choose which CLI command to run. Options are "upload-coverage", "empty-upload", "pr-base-picking", "send-notifications". "upload-coverage" is run by default.'
|
||||||
|
required: false
|
||||||
|
default: 'upload-coverage'
|
||||||
skip_validation:
|
skip_validation:
|
||||||
description: 'Skip integrity checking of the CLI. This is NOT recommended.'
|
description: 'Skip integrity checking of the CLI. This is NOT recommended.'
|
||||||
required: false
|
required: false
|
||||||
@@ -253,6 +263,7 @@ runs:
|
|||||||
shell: bash
|
shell: bash
|
||||||
working-directory: ${{ inputs.working-directory }}
|
working-directory: ${{ inputs.working-directory }}
|
||||||
env:
|
env:
|
||||||
|
CC_BASE_SHA: ${{ inputs.base_sha }}
|
||||||
CC_BINARY: ${{ inputs.binary }}
|
CC_BINARY: ${{ inputs.binary }}
|
||||||
CC_BUILD: ${{ inputs.override_build }}
|
CC_BUILD: ${{ inputs.override_build }}
|
||||||
CC_BUILD_URL: ${{ inputs.override_build_url }}
|
CC_BUILD_URL: ${{ inputs.override_build_url }}
|
||||||
@@ -268,6 +279,7 @@ runs:
|
|||||||
CC_FAIL_ON_ERROR: ${{ inputs.fail_ci_if_error }}
|
CC_FAIL_ON_ERROR: ${{ inputs.fail_ci_if_error }}
|
||||||
CC_FILES: ${{ inputs.files }}
|
CC_FILES: ${{ inputs.files }}
|
||||||
CC_FLAGS: ${{ inputs.flags }}
|
CC_FLAGS: ${{ inputs.flags }}
|
||||||
|
CC_FORCE: ${{ inputs.force }}
|
||||||
CC_GCOV_ARGS: ${{ inputs.gcov_args }}
|
CC_GCOV_ARGS: ${{ inputs.gcov_args }}
|
||||||
CC_GCOV_EXECUTABLE: ${{ inputs.gcov_executable }}
|
CC_GCOV_EXECUTABLE: ${{ inputs.gcov_executable }}
|
||||||
CC_GCOV_IGNORE: ${{ inputs.gcov_ignore }}
|
CC_GCOV_IGNORE: ${{ inputs.gcov_ignore }}
|
||||||
@@ -284,6 +296,8 @@ runs:
|
|||||||
CC_PARENT_SHA: ${{ inputs.commit_parent }}
|
CC_PARENT_SHA: ${{ inputs.commit_parent }}
|
||||||
CC_PLUGINS: ${{ inputs.plugins }}
|
CC_PLUGINS: ${{ inputs.plugins }}
|
||||||
CC_REPORT_TYPE: ${{ inputs.report_type }}
|
CC_REPORT_TYPE: ${{ inputs.report_type }}
|
||||||
|
CC_RUN_COMMAND: ${{ inputs.run_command }}
|
||||||
|
CC_SERVICE: ${{ inputs.git_service }}
|
||||||
CC_SKIP_VALIDATION: ${{ inputs.skip_validation }}
|
CC_SKIP_VALIDATION: ${{ inputs.skip_validation }}
|
||||||
CC_SLUG: ${{ inputs.slug }}
|
CC_SLUG: ${{ inputs.slug }}
|
||||||
CC_SWIFT_PROJECT: ${{ inputs.swift_project }}
|
CC_SWIFT_PROJECT: ${{ inputs.swift_project }}
|
||||||
|
|||||||
167
dist/codecov.sh
vendored
167
dist/codecov.sh
vendored
@@ -1,5 +1,5 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
CC_WRAPPER_VERSION="0.0.32"
|
CC_WRAPPER_VERSION="0.0.34"
|
||||||
set +u
|
set +u
|
||||||
say() {
|
say() {
|
||||||
echo -e "$1"
|
echo -e "$1"
|
||||||
@@ -47,6 +47,7 @@ say " _____ _
|
|||||||
"
|
"
|
||||||
CC_VERSION="${CC_VERSION:-latest}"
|
CC_VERSION="${CC_VERSION:-latest}"
|
||||||
CC_FAIL_ON_ERROR="${CC_FAIL_ON_ERROR:-false}"
|
CC_FAIL_ON_ERROR="${CC_FAIL_ON_ERROR:-false}"
|
||||||
|
CC_RUN_COMMAND="${CC_RUN_COMMAND:-upload-coverage}"
|
||||||
if [ -n "$CC_BINARY" ];
|
if [ -n "$CC_BINARY" ];
|
||||||
then
|
then
|
||||||
if [ -f "$CC_BINARY" ];
|
if [ -f "$CC_BINARY" ];
|
||||||
@@ -84,7 +85,7 @@ else
|
|||||||
curl -Os "$cc_url"
|
curl -Os "$cc_url"
|
||||||
say "$g==>$x Finishing downloading $b${CC_OS}:${CC_VERSION}$x"
|
say "$g==>$x Finishing downloading $b${CC_OS}:${CC_VERSION}$x"
|
||||||
version_url="https://cli.codecov.io/api/${CC_OS}/${CC_VERSION}"
|
version_url="https://cli.codecov.io/api/${CC_OS}/${CC_VERSION}"
|
||||||
version=$(curl -s "$version_url" -H "Accept:application/json" | jq -r '.version')
|
version=$(curl -s "$version_url" -H "Accept:application/json" | tr \{ '\n' | tr , '\n' | tr \} '\n' | grep "\"version\"" | awk -F'"' '{print $4}' | tail -1)
|
||||||
say " Version: $b$version$x"
|
say " Version: $b$version$x"
|
||||||
say " "
|
say " "
|
||||||
fi
|
fi
|
||||||
@@ -136,70 +137,6 @@ then
|
|||||||
fi
|
fi
|
||||||
cc_cli_args+=( $(write_truthy_args CC_DISABLE_TELEM) )
|
cc_cli_args+=( $(write_truthy_args CC_DISABLE_TELEM) )
|
||||||
cc_cli_args+=( $(write_truthy_args CC_VERBOSE) )
|
cc_cli_args+=( $(write_truthy_args CC_VERBOSE) )
|
||||||
cc_uc_args=()
|
|
||||||
# Args for create commit
|
|
||||||
cc_uc_args+=( $(write_truthy_args CC_FAIL_ON_ERROR) )
|
|
||||||
cc_uc_args+=( $(k_arg GIT_SERVICE) $(v_arg GIT_SERVICE))
|
|
||||||
cc_uc_args+=( $(k_arg PARENT_SHA) $(v_arg PARENT_SHA))
|
|
||||||
cc_uc_args+=( $(k_arg PR) $(v_arg PR))
|
|
||||||
cc_uc_args+=( $(k_arg SHA) $(v_arg SHA))
|
|
||||||
cc_uc_args+=( $(k_arg SLUG) $(v_arg SLUG))
|
|
||||||
# Args for create report
|
|
||||||
cc_uc_args+=( $(k_arg CODE) $(v_arg CODE))
|
|
||||||
# Args for do upload
|
|
||||||
cc_uc_args+=( $(k_arg ENV) $(v_arg ENV))
|
|
||||||
OLDIFS=$IFS;IFS=,
|
|
||||||
cc_uc_args+=( $(k_arg BRANCH) $(v_arg BRANCH))
|
|
||||||
cc_uc_args+=( $(k_arg BUILD) $(v_arg BUILD))
|
|
||||||
cc_uc_args+=( $(k_arg BUILD_URL) $(v_arg BUILD_URL))
|
|
||||||
cc_uc_args+=( $(k_arg DIR) $(v_arg DIR))
|
|
||||||
cc_uc_args+=( $(write_truthy_args CC_DISABLE_FILE_FIXES) )
|
|
||||||
cc_uc_args+=( $(write_truthy_args CC_DISABLE_SEARCH) )
|
|
||||||
cc_uc_args+=( $(write_truthy_args CC_DRY_RUN) )
|
|
||||||
if [ -n "$CC_EXCLUDES" ];
|
|
||||||
then
|
|
||||||
for directory in $CC_EXCLUDES; do
|
|
||||||
cc_uc_args+=( "--exclude" "$directory" )
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
if [ -n "$CC_FILES" ];
|
|
||||||
then
|
|
||||||
for file in $CC_FILES; do
|
|
||||||
cc_uc_args+=( "--file" "$file" )
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
if [ -n "$CC_FLAGS" ];
|
|
||||||
then
|
|
||||||
for flag in $CC_FLAGS; do
|
|
||||||
cc_uc_args+=( "--flag" "$flag" )
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
cc_uc_args+=( $(k_arg GCOV_ARGS) $(v_arg GCOV_ARGS))
|
|
||||||
cc_uc_args+=( $(k_arg GCOV_EXECUTABLE) $(v_arg GCOV_EXECUTABLE))
|
|
||||||
cc_uc_args+=( $(k_arg GCOV_IGNORE) $(v_arg GCOV_IGNORE))
|
|
||||||
cc_uc_args+=( $(k_arg GCOV_INCLUDE) $(v_arg GCOV_INCLUDE))
|
|
||||||
cc_uc_args+=( $(write_truthy_args CC_HANDLE_NO_REPORTS_FOUND) )
|
|
||||||
cc_uc_args+=( $(k_arg JOB_CODE) $(v_arg JOB_CODE))
|
|
||||||
cc_uc_args+=( $(write_truthy_args CC_LEGACY) )
|
|
||||||
if [ -n "$CC_NAME" ];
|
|
||||||
then
|
|
||||||
cc_uc_args+=( "--name" "$CC_NAME" )
|
|
||||||
fi
|
|
||||||
cc_uc_args+=( $(k_arg NETWORK_FILTER) $(v_arg NETWORK_FILTER))
|
|
||||||
cc_uc_args+=( $(k_arg NETWORK_PREFIX) $(v_arg NETWORK_PREFIX))
|
|
||||||
cc_uc_args+=( $(k_arg NETWORK_ROOT_FOLDER) $(v_arg NETWORK_ROOT_FOLDER))
|
|
||||||
if [ -n "$CC_PLUGINS" ];
|
|
||||||
then
|
|
||||||
for plugin in $CC_PLUGINS; do
|
|
||||||
cc_uc_args+=( "--plugin" "$plugin" )
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
cc_uc_args+=( $(k_arg REPORT_TYPE) $(v_arg REPORT_TYPE))
|
|
||||||
cc_uc_args+=( $(k_arg SWIFT_PROJECT) $(v_arg SWIFT_PROJECT))
|
|
||||||
IFS=$OLDIFS
|
|
||||||
unset NODE_OPTIONS
|
|
||||||
# See https://github.com/codecov/uploader/issues/475
|
|
||||||
chmod +x $cc_command
|
|
||||||
if [ -n "$CC_TOKEN_VAR" ];
|
if [ -n "$CC_TOKEN_VAR" ];
|
||||||
then
|
then
|
||||||
token="$(eval echo \$$CC_TOKEN_VAR)"
|
token="$(eval echo \$$CC_TOKEN_VAR)"
|
||||||
@@ -214,13 +151,101 @@ then
|
|||||||
token_str+=" -t <redacted>"
|
token_str+=" -t <redacted>"
|
||||||
token_arg+=( " -t " "$token")
|
token_arg+=( " -t " "$token")
|
||||||
fi
|
fi
|
||||||
say "$g==>$x Running upload-coverage"
|
if [ "$CC_RUN_COMMAND" == "upload-coverage" ]; then
|
||||||
say " $b$cc_command $(echo "${cc_cli_args[@]}") upload-coverage$token_str $(echo "${cc_uc_args[@]}")$x"
|
cc_run_args=()
|
||||||
|
# Args for create commit
|
||||||
|
cc_run_args+=( $(write_truthy_args CC_FAIL_ON_ERROR) )
|
||||||
|
cc_run_args+=( $(k_arg GIT_SERVICE) $(v_arg GIT_SERVICE))
|
||||||
|
cc_run_args+=( $(k_arg PARENT_SHA) $(v_arg PARENT_SHA))
|
||||||
|
cc_run_args+=( $(k_arg PR) $(v_arg PR))
|
||||||
|
cc_run_args+=( $(k_arg SHA) $(v_arg SHA))
|
||||||
|
cc_run_args+=( $(k_arg SLUG) $(v_arg SLUG))
|
||||||
|
# Args for create report
|
||||||
|
cc_run_args+=( $(k_arg CODE) $(v_arg CODE))
|
||||||
|
# Args for do upload
|
||||||
|
cc_run_args+=( $(k_arg ENV) $(v_arg ENV))
|
||||||
|
OLDIFS=$IFS;IFS=,
|
||||||
|
cc_run_args+=( $(k_arg BRANCH) $(v_arg BRANCH))
|
||||||
|
cc_run_args+=( $(k_arg BUILD) $(v_arg BUILD))
|
||||||
|
cc_run_args+=( $(k_arg BUILD_URL) $(v_arg BUILD_URL))
|
||||||
|
cc_run_args+=( $(k_arg DIR) $(v_arg DIR))
|
||||||
|
cc_run_args+=( $(write_truthy_args CC_DISABLE_FILE_FIXES) )
|
||||||
|
cc_run_args+=( $(write_truthy_args CC_DISABLE_SEARCH) )
|
||||||
|
cc_run_args+=( $(write_truthy_args CC_DRY_RUN) )
|
||||||
|
if [ -n "$CC_EXCLUDES" ];
|
||||||
|
then
|
||||||
|
for directory in $CC_EXCLUDES; do
|
||||||
|
cc_run_args+=( "--exclude" "$directory" )
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
if [ -n "$CC_FILES" ];
|
||||||
|
then
|
||||||
|
for file in $CC_FILES; do
|
||||||
|
cc_run_args+=( "--file" "$file" )
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
if [ -n "$CC_FLAGS" ];
|
||||||
|
then
|
||||||
|
for flag in $CC_FLAGS; do
|
||||||
|
cc_run_args+=( "--flag" "$flag" )
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
cc_run_args+=( $(k_arg GCOV_ARGS) $(v_arg GCOV_ARGS))
|
||||||
|
cc_run_args+=( $(k_arg GCOV_EXECUTABLE) $(v_arg GCOV_EXECUTABLE))
|
||||||
|
cc_run_args+=( $(k_arg GCOV_IGNORE) $(v_arg GCOV_IGNORE))
|
||||||
|
cc_run_args+=( $(k_arg GCOV_INCLUDE) $(v_arg GCOV_INCLUDE))
|
||||||
|
cc_run_args+=( $(write_truthy_args CC_HANDLE_NO_REPORTS_FOUND) )
|
||||||
|
cc_run_args+=( $(k_arg JOB_CODE) $(v_arg JOB_CODE))
|
||||||
|
cc_run_args+=( $(write_truthy_args CC_LEGACY) )
|
||||||
|
if [ -n "$CC_NAME" ];
|
||||||
|
then
|
||||||
|
cc_run_args+=( "--name" "$CC_NAME" )
|
||||||
|
fi
|
||||||
|
cc_run_args+=( $(k_arg NETWORK_FILTER) $(v_arg NETWORK_FILTER))
|
||||||
|
cc_run_args+=( $(k_arg NETWORK_PREFIX) $(v_arg NETWORK_PREFIX))
|
||||||
|
cc_run_args+=( $(k_arg NETWORK_ROOT_FOLDER) $(v_arg NETWORK_ROOT_FOLDER))
|
||||||
|
if [ -n "$CC_PLUGINS" ];
|
||||||
|
then
|
||||||
|
for plugin in $CC_PLUGINS; do
|
||||||
|
cc_run_args+=( "--plugin" "$plugin" )
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
cc_run_args+=( $(k_arg REPORT_TYPE) $(v_arg REPORT_TYPE))
|
||||||
|
cc_run_args+=( $(k_arg SWIFT_PROJECT) $(v_arg SWIFT_PROJECT))
|
||||||
|
IFS=$OLDIFS
|
||||||
|
elif [ "$CC_RUN_COMMAND" == "empty-upload" ]; then
|
||||||
|
cc_run_args=()
|
||||||
|
cc_run_args+=( $(write_truthy_args CC_FAIL_ON_ERROR) )
|
||||||
|
cc_run_args+=( $(write_truthy_args CC_FORCE) )
|
||||||
|
cc_run_args+=( $(k_arg GIT_SERVICE) $(v_arg GIT_SERVICE))
|
||||||
|
cc_run_args+=( $(k_arg SHA) $(v_arg SHA))
|
||||||
|
cc_run_args+=( $(k_arg SLUG) $(v_arg SLUG))
|
||||||
|
elif [ "$CC_RUN_COMMAND" == "pr-base-picking" ]; then
|
||||||
|
cc_run_args=()
|
||||||
|
cc_run_args+=( $(k_arg BASE_SHA) $(v_arg BASE_SHA))
|
||||||
|
cc_run_args+=( $(k_arg PR) $(v_arg PR))
|
||||||
|
cc_run_args+=( $(k_arg SLUG) $(v_arg SLUG))
|
||||||
|
cc_run_args+=( $(k_arg SERVICE) $(v_arg SERVICE))
|
||||||
|
elif [ "$CC_RUN_COMMAND" == "send-notifications" ]; then
|
||||||
|
cc_run_args=()
|
||||||
|
cc_run_args+=( $(k_arg SHA) $(v_arg SHA))
|
||||||
|
cc_run_args+=( $(write_truthy_args CC_FAIL_ON_ERROR) )
|
||||||
|
cc_run_args+=( $(k_arg GIT_SERVICE) $(v_arg GIT_SERVICE))
|
||||||
|
cc_run_args+=( $(k_arg SLUG) $(v_arg SLUG))
|
||||||
|
else
|
||||||
|
exit_if_error "Invalid run command specified: $CC_RUN_COMMAND"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
unset NODE_OPTIONS
|
||||||
|
# See https://github.com/codecov/uploader/issues/475
|
||||||
|
chmod +x "$cc_command"
|
||||||
|
say "$g==>$x Running $CC_RUN_COMMAND"
|
||||||
|
say " $b$cc_command $(echo "${cc_cli_args[@]}")$CC_RUN_COMMAND$token_str $(echo "${cc_run_args[@]}")$x"
|
||||||
if ! $cc_command \
|
if ! $cc_command \
|
||||||
${cc_cli_args[*]} \
|
${cc_cli_args[*]} \
|
||||||
upload-coverage \
|
${CC_RUN_COMMAND} \
|
||||||
${token_arg[*]} \
|
${token_arg[*]} \
|
||||||
"${cc_uc_args[@]}";
|
"${cc_run_args[@]}";
|
||||||
then
|
then
|
||||||
exit_if_error "Failed to upload coverage"
|
exit_if_error "Failed to run $CC_RUN_COMMAND"
|
||||||
fi
|
fi
|
||||||
|
|||||||
Submodule src/scripts updated: b7950068a5...fc1e2e73ce
Reference in New Issue
Block a user