• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1name: Check Code Formatting
2
3on:
4  push:
5    branches: [ master, 'robolectric-*.x' ]
6    paths-ignore:
7      - '**.md'
8
9  pull_request:
10    branches: [ master, google ]
11    paths-ignore:
12      - '**.md'
13
14permissions:
15  contents: read
16
17jobs:
18  check_code_formatting:
19    runs-on: ubuntu-20.04
20
21    steps:
22      - uses: actions/checkout@v3
23        with:
24          fetch-depth: 0
25
26      - name: Set up JDK 11
27        uses: actions/setup-java@v3
28        with:
29          distribution: 'zulu'
30          java-version: 11
31
32      - uses: gradle/gradle-build-action@v2
33
34      - name: Download google-java-format 1.9
35        run: |
36          curl -L -o $HOME/google-java-format.jar https://github.com/google/google-java-format/releases/download/v1.15.0/google-java-format-1.15.0-all-deps.jar
37          curl -L -o $HOME/google-java-format-diff.py https://raw.githubusercontent.com/google/google-java-format/v1.15.0/scripts/google-java-format-diff.py
38          chmod +x $HOME/google-java-format-diff.py
39      - name: Check Java formatting
40        run: |
41          diff=$(git diff -U0 $(git merge-base HEAD origin/master) | $HOME/google-java-format-diff.py --google-java-format-jar=$HOME/google-java-format.jar -p1)
42          if [[ $diff ]]; then
43            echo "Please run google-java-format on the changes in this pull request"
44            git diff -U0 $(git merge-base HEAD origin/master) | $HOME/google-java-format-diff.py --google-java-format-jar=$HOME/google-java-format.jar -p1
45            exit 1
46          fi
47
48      - name: Check Kotlin formatting
49        run: |
50          ./gradlew spotlessCheck
51