spine-runtimes/.github/workflows/format-check-dart.yml

47 lines
1.2 KiB
YAML

name: Check Dart Formatting
on:
push:
workflow_dispatch:
jobs:
check-dart:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v3
- name: Install Dart
uses: dart-lang/setup-dart@v1
with:
sdk: '3.8.1'
- name: Check dart format version
run: |
dart format --version
- name: Format Dart
run: ./formatters/format-dart.sh
- name: Check for changes
run: |
git ls-files -m
if [[ `git ls-files -m` ]]; then
echo "Detected Dart formatting errors!"
echo "Creating diff files..."
mkdir -p dart-format-diff
git diff > dart-format-diff/full-diff.txt
git ls-files -m > dart-format-diff/modified-files.txt
for file in $(git ls-files -m | head -10); do
echo "=== Diff for $file ===" >> dart-format-diff/file-diffs.txt
git diff "$file" >> dart-format-diff/file-diffs.txt
echo -e "\n\n" >> dart-format-diff/file-diffs.txt
done
exit 1
fi
- name: Upload diff artifact
if: failure()
uses: actions/upload-artifact@v3
with:
name: dart-format-diff
path: dart-format-diff/