diff --git a/.github/workflows/printer_linter_format.yml b/.github/workflows/printer_linter_format.yml new file mode 100644 index 0000000000..75134cddbb --- /dev/null +++ b/.github/workflows/printer_linter_format.yml @@ -0,0 +1,45 @@ +name: printer-linter-format + +on: + push: + branches: + - main + - '[1-9].[0-9]' + - '[1-9].[0-9][0-9]' + path: + - 'resources/**' + +jobs: + printer_lint: + name: Printer linter auto format + + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Setup Python and pip + uses: actions/setup-python@v4 + with: + python-version: 3.11.x + cache: 'pip' + cache-dependency-path: .github/workflows/requirements-printer-linter.txt + + - uses: technote-space/get-diff-action@v6 + with: + PATTERNS: | + resources/+(definitions|extruders)/*.def.json + resources/+(intent|quality|variants)/**/*.inst.cfg + + - name: Install Python requirements for runner + if: env.GIT_DIFF && !env.MATCHED_FILES + run: pip install -r .github/workflows/requirements-printer-linter.txt + + - name: Format file + if: env.GIT_DIFF && !env.MATCHED_FILES + run: python printer-linter/printer-linter.py --format ${{ env.GIT_DIFF_FILTERED }} + + - uses: stefanzweifel/git-auto-commit-action@v4 + if: env.GIT_DIFF && !env.MATCHED_FILES + with: + commit_message: "Applied printer-linter format" diff --git a/.github/workflows/requirements-printer-linter.txt b/.github/workflows/requirements-printer-linter.txt new file mode 100644 index 0000000000..4818cc5419 --- /dev/null +++ b/.github/workflows/requirements-printer-linter.txt @@ -0,0 +1 @@ +pyyaml \ No newline at end of file