forked from checkstyle/checkstyle
-
Notifications
You must be signed in to change notification settings - Fork 1
66 lines (56 loc) · 1.64 KB
/
checker-framework.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
name: Checker
on:
push:
branches:
- master
pull_request:
branches: '*'
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
check:
if: github.repository == 'checkstyle/checkstyle'
strategy:
fail-fast: false
matrix:
profile: [
nullness-optional-interning,
methods-resource-fenum,
lock-tainting,
index,
formatter,
signature-gui-units-init,
regex-property-key-compiler-message,
purity-value-returns,
]
runs-on: ubuntu-latest
steps:
- name: Set up JDK 11
uses: actions/setup-java@v4
with:
java-version: 11
distribution: 'temurin'
- name: Install groovy
run: sudo apt install groovy
- name: Checkout
uses: actions/checkout@v4
- name: Setup local maven cache
uses: actions/cache@v4
with:
path: ~/.m2/repository
key: checkstyle-maven-cache-${{ hashFiles('**/pom.xml') }}
- name: Execute checker framework
env:
MAVEN_OPTS: "-Xmx4g"
run: groovy ./.ci/checker-framework.groovy checker-${{ matrix.profile }}
- name: Git Diff on fail
if: failure()
run: ./.ci/print-diff-as-patch.sh target/checker-${{ matrix.profile }}.patch
- name: Share patch as artifact to apply on local
if: failure()
uses: actions/upload-artifact@v4
with:
name: checker-${{ matrix.profile }}-patch
path: target/checker-${{ matrix.profile }}.patch
retention-days: 7