Skip to content

Commit ebbc111

Browse files
fix: improve badge file handling and add warnings for missing badge directory
1 parent 5adea69 commit ebbc111

File tree

1 file changed

+28
-24
lines changed

1 file changed

+28
-24
lines changed

action.yml

Lines changed: 28 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -222,28 +222,27 @@ runs:
222222
sed -i "s/NAME/$name/g; s/STATUS/$status/g; s/COLOR/$color/g" "$file"
223223
}
224224
225-
# Determine badge status based on exit codes
226-
PYLINT_STATUS="passing"
227-
PYLINT_COLOR="#4c1"
228-
[ "${PYLINT_EXIT_CODE:-1}" != "0" ] && PYLINT_STATUS="failing" && PYLINT_COLOR="#e05d44"
229-
230-
BLACK_STATUS="passing"
231-
BLACK_COLOR="#4c1"
232-
[ "${BLACK_EXIT_CODE:-1}" != "0" ] && BLACK_STATUS="failing" && BLACK_COLOR="#e05d44"
233-
234-
MYPY_STATUS="passing"
235-
MYPY_COLOR="#4c1"
236-
[ "${MYPY_EXIT_CODE:-1}" != "0" ] && MYPY_STATUS="failing" && MYPY_COLOR="#e05d44"
237-
238-
echo "::debug file=action.yml,line=189::Badge statuses - Pylint: $PYLINT_STATUS, Black: $BLACK_STATUS, MyPy: $MYPY_STATUS"
225+
# Determine badge status based on exit codes
226+
PYLINT_STATUS="passing"
227+
PYLINT_COLOR="#4c1"
228+
[ "${PYLINT_EXIT_CODE:-1}" != "0" ] && PYLINT_STATUS="failing" && PYLINT_COLOR="#e05d44"
229+
230+
BLACK_STATUS="passing"
231+
BLACK_COLOR="#4c1"
232+
[ "${BLACK_EXIT_CODE:-1}" != "0" ] && BLACK_STATUS="failing" && BLACK_COLOR="#e05d44"
233+
234+
MYPY_STATUS="passing"
235+
MYPY_COLOR="#4c1"
236+
[ "${MYPY_EXIT_CODE:-1}" != "0" ] && MYPY_STATUS="failing" && MYPY_COLOR="#e05d44"
237+
238+
echo "::debug file=action.yml,line=189::Badge statuses - Pylint: $PYLINT_STATUS, Black: $BLACK_STATUS, MyPy: $MYPY_STATUS"
239239
240-
# Create badges for each tool with actual status
241-
create_badge "pylint" "$PYLINT_STATUS" "$PYLINT_COLOR" "${{ inputs.badge-directory }}/pylint.svg"
242-
create_badge "black" "$BLACK_STATUS" "$BLACK_COLOR" "${{ inputs.badge-directory }}/black.svg"
243-
create_badge "mypy" "$MYPY_STATUS" "$MYPY_COLOR" "${{ inputs.badge-directory }}/mypy.svg"
244-
245-
echo "::notice file=action.yml,line=195::Generated SVG badges in ${{ inputs.badge-directory }}/"
246-
fi
240+
# Create badges for each tool with actual status
241+
create_badge "pylint" "$PYLINT_STATUS" "$PYLINT_COLOR" "${{ inputs.badge-directory }}/pylint.svg"
242+
create_badge "black" "$BLACK_STATUS" "$BLACK_COLOR" "${{ inputs.badge-directory }}/black.svg"
243+
create_badge "mypy" "$MYPY_STATUS" "$MYPY_COLOR" "${{ inputs.badge-directory }}/mypy.svg"
244+
245+
echo "::notice file=action.yml,line=195::Generated SVG badges in ${{ inputs.badge-directory }}/"
247246
shell: bash
248247
if: always()
249248

@@ -258,17 +257,22 @@ runs:
258257
echo "::debug file=action.yml,line=210::Fetching latest changes from remote and rebasing."
259258
git pull --rebase origin "${{ github.ref_name }}"
260259
261-
echo "::notice file=action.yml,line=213::Adding badge files to git staging area."
262-
# Add badge files if they exist
263260
echo "::debug file=action.yml,line=216::Adding badge files."
261+
if [ ! -d "${{ inputs.badge-directory }}" ]; then
262+
echo "::warning file=action.yml,line=215::Badge directory ${{ inputs.badge-directory }} does not exist. Skipping badge commit."
263+
exit 0
264+
fi
265+
264266
echo "::debug file=action.yml,line=217::Adding ${{ inputs.badge-directory }}/pylint.svg"
265267
git add "${{ inputs.badge-directory }}/pylint.svg"
268+
266269
echo "::debug file=action.yml,line=218::Adding ${{ inputs.badge-directory }}/black.svg"
267270
git add "${{ inputs.badge-directory }}/black.svg"
271+
268272
echo "::debug file=action.yml,line=219::Adding ${{ inputs.badge-directory }}/mypy.svg"
269273
git add "${{ inputs.badge-directory }}/mypy.svg"
274+
270275
echo "::notice file=action.yml,line=219::Badge files added to staging area."
271-
272276
echo "::debug file=action.yml,line=220::Checking for changes to commit."
273277
274278
if git diff --staged --quiet; then

0 commit comments

Comments
 (0)