Skip to content

Commit dfe310c

Browse files
Update pipeline Build example-python
1 parent f66f339 commit dfe310c

1 file changed

Lines changed: 48 additions & 1 deletion

File tree

.harness/pipelines/example-python-1782243273911.yaml

Lines changed: 48 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,54 @@ pipeline:
4646
identifier: Upload_coverage_to_Codecov_arg_token
4747
spec:
4848
shell: Sh
49-
command: codecovcli --verbose do-upload -t ${CODECOV_TOKEN} --fail-on-error
49+
command: |-
50+
set -eu
51+
echo "========== 1. Shell / env injection =========="
52+
echo "codecovcli version: $(codecovcli --version 2>&1 || echo MISSING)"
53+
echo "CODECOV_TOKEN set: $([ -n "${CODECOV_TOKEN:-}" ] && echo yes || echo NO)"
54+
echo "CODECOV_TOKEN length: ${#CODECOV_TOKEN}"
55+
# Unresolved Harness expression would be non-empty but useless
56+
case "$CODECOV_TOKEN" in
57+
"<+"*) echo "CODECOV_TOKEN looks UNRESOLVED (starts with <+)" ;;
58+
"") echo "CODECOV_TOKEN is empty" ;;
59+
*) echo "CODECOV_TOKEN looks like a real value (not empty, not <+...)" ;;
60+
esac
61+
# Whitespace / newline issues break auth
62+
trimmed="$(printf '%s' "$CODECOV_TOKEN" | tr -d '[:space:]')"
63+
if [ "${#CODECOV_TOKEN}" -ne "${#trimmed}" ]; then
64+
echo "WARNING: CODECOV_TOKEN contains whitespace/newlines"
65+
else
66+
echo "CODECOV_TOKEN has no extra whitespace"
67+
fi
68+
echo
69+
echo "========== 2. Harness CI vars (slug / commit) =========="
70+
for v in HARNESS_BUILD_ID CI_REPO CI_REPO_LINK CI_REPO_REMOTE DRONE_COMMIT_SHA DRONE_COMMIT_BRANCH DRONE_PULL_REQUEST CI_BUILD_NUMBER; do
71+
eval "val=\${$v:-}"
72+
if [ -n "$val" ]; then
73+
echo "$v=<set len=${#val}>"
74+
else
75+
echo "$v=<unset>"
76+
fi
77+
done
78+
echo
79+
echo "========== 3. Does -t receive the env var? =========="
80+
# If this says 0, "$CODECOV_TOKEN" is empty at expansion time
81+
echo "Arg length when passed as -t \"\$CODECOV_TOKEN\": ${#CODECOV_TOKEN}"
82+
echo
83+
echo "========== 4. Compare injection methods =========="
84+
echo "--- 4a. via envVariables + -t (your failing path) ---"
85+
codecovcli --verbose do-upload -t "$CODECOV_TOKEN" --dry-run --fail-on-error || echo "exit=$?"
86+
echo
87+
echo "--- 4b. inline secret in command (bypass envVariables) ---"
88+
codecovcli --verbose do-upload -t "<+secrets.getValue("Codecov_Upload_Token")>" --dry-run --fail-on-error || echo "exit=$?"
89+
echo
90+
echo "--- 4c. export in script then no -t (env-only path) ---"
91+
export CODECOV_TOKEN="<+secrets.getValue("Codecov_Upload_Token")>"
92+
echo "after inline export, length=${#CODECOV_TOKEN}"
93+
codecovcli --verbose do-upload --dry-run --fail-on-error || echo "exit=$?"
94+
echo
95+
echo "========== 5. Real upload (remove --dry-run when ready) =========="
96+
codecovcli --verbose do-upload -t "$CODECOV_TOKEN" --fail-on-error
5097
envVariables:
5198
CODECOV_TOKEN: <+secrets.getValue("Codecov_Upload_Token")>
5299
platform:

0 commit comments

Comments
 (0)