Skip to content

Commit

Permalink
add ocamlformat auto fix in CI
Browse files Browse the repository at this point in the history
  • Loading branch information
Khady committed Oct 19, 2024
1 parent d93bb80 commit bf15f0a
Showing 1 changed file with 36 additions and 0 deletions.
36 changes: 36 additions & 0 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ on:
- pull_request

jobs:

lint-fmt:
runs-on: ubuntu-latest
steps:
Expand All @@ -21,6 +22,41 @@ jobs:
- name: Lint fmt
uses: ocaml/setup-ocaml/lint-fmt@v3

# auto fix formatting, Thanks to robur.coop for the implementation
# https://discuss.ocaml.org/t/ocamlformat-and-github-actions/15464
lint-auto-fmt:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Use OCaml 5.2
uses: ocaml/setup-ocaml@v3
with:
ocaml-compiler: 5.2
dune-cache: true
allow-prerelease-opam: true

- name: Install ocamlformat
run: grep version .ocamlformat | cut -d '=' -f 2 | xargs -I V opam install ocamlformat=V

- name: Format code
run: |
git ls-files '*.ml' '*.mli' | xargs opam exec -- ocamlformat --inplace
- name: Check for modified files
id: git-check
run: echo "modified=$(if git diff-index --quiet HEAD --; then echo "false"; else echo "true"; fi)" >> $GITHUB_OUTPUT

- name: Commit and push changes
if: ${{ steps.git-check.outputs.modified == 'true' }}
run: |
git config --global user.name "Automated ocamlformat GitHub action, developed by robur.coop"
git config --global user.email "autoformat@robur.coop"
git add -A
git commit -m "formatted code"
git push
lint-opam:
runs-on: ubuntu-latest
steps:
Expand Down

0 comments on commit bf15f0a

Please sign in to comment.