diff --git a/.github/workflows/format.yml b/.github/workflows/format.yml new file mode 100644 index 00000000..8c385037 --- /dev/null +++ b/.github/workflows/format.yml @@ -0,0 +1,42 @@ +name: Format + +on: + push: + branches: + - main + +jobs: + format: + runs-on: ubuntu-latest + + steps: + - name: Cancel Previous Runs + uses: styfle/cancel-workflow-action@0.9.1 + + - name: Checkout Repository + uses: actions/checkout@v2 + + - name: Use Node.js + uses: actions/setup-node@v2 + with: + node-version: 14 + + - name: Install dependencies + run: yarn install --frozen-lockfile + + - name: Format + run: npm run format --if-present + + - name: Commit + run: | + git config --local user.email "github-actions@remix.run" + git config --local user.name "Remix Run Bot" + + git add . + if [ -z "$(git status --porcelain)" ]; then + echo "💿 no formatting changed" + exit 0 + fi + git commit -m "chore: format" -m "formatted $GITHUB_SHA" + git push + echo "💿 pushed formatting changes https://github.com/$GITHUB_REPOSITORY/commit/$(git rev-parse HEAD)"