-
Notifications
You must be signed in to change notification settings - Fork 9
99 lines (86 loc) · 3.1 KB
/
ci.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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
name: CI
on:
push:
branches: [ dev, main, v*.x ]
tags:
- v**
pull_request:
jobs:
validate-api-docs:
name: API Docs Validation
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/[email protected]
if: ${{ inputs.setupNode }}
with:
node-version: "16.13.1"
- name: Add Problem Matcher
run: echo "::add-matcher::.github/problem-matchers/validate-api-docs.json"
- run: bash ./scripts/ci/validate-api-docs/validate-api-docs.sh
validate-gradle-wrapper:
name: Gradle Wrapper Validation
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@56b90f209b02bf6d1deae490e9ef18b21a389cd4
validate-migration:
name: fbs-core.api / DB Migration Validation
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Check Migration files
run: bash ./scripts/ci/validate-migrations.sh modules/fbs-core/api/src/main/resources/migrations
fbs-core-api:
name: fbs-core.api
uses: ./.github/workflows/check-fbs-module.yml
needs: [ "validate-gradle-wrapper", "validate-migration" ]
with:
name: fbs-core.api
lintArguments: :fbs-core.api:scalastyleCheck :fbs-core.api:ktlintCheck :fbs-core.math-parser:ktlintCheck
testArguments: :fbs-core.api:test :fbs-core.math-parser:test
coverageArguments: :fbs-core.api:jacocoReport :fbs-core.math-parser:jacocoReport
coverageFilesLocation: modules/fbs-core/api/build/reports/jacoco/jacocoReport/jacocoReport.xml,modules/fbs-core/math-parser/build/reports/jacoco/jacocoReport/jacocoReport.xml
startMysqlService: true
startMinioService: true
problemMatcher: java.json,kotlin.json
fbs-core-web:
name: fbs-core.web
uses: ./.github/workflows/check-fbs-module.yml
needs: [ "validate-gradle-wrapper" ]
with:
name: fbs-core.web
lintArguments: :fbs-core.web:lint
testArguments: :fbs-core.web:build
setupNode: true
fbs-runner-checker:
name: fbs-runner.checker
uses: ./.github/workflows/check-fbs-module.yml
needs: [ "validate-gradle-wrapper" ]
with:
name: fbs-runner.checker
lintArguments: :fbs-runner.checker:scalastyleCheck
testArguments: :fbs-runner.checker:test
coverageArguments: :fbs-runner.checker:jacocoReport
coverageFilesLocation: modules/fbs-runner/checker/build/reports/jacoco/jacocoReport/jacocoReport.xml
problemMatcher: java.json
fbs-sql-checker:
name: fbs-sql-checker
uses: ./.github/workflows/check-fbs-python-module.yml
with:
working-directory: ./modules/fbs-sql-checker
fbs-eat:
name: fbs-eat
uses: ./.github/workflows/check-fbs-python-module.yml
with:
working-directory: ./modules/fbs-eat/eat
build:
name: Build Docker images
runs-on: ubuntu-latest
if: github.event_name == 'pull_request'
needs: [ "validate-gradle-wrapper", "validate-migration" ]
steps:
- uses: actions/checkout@v4
- name: Build Docker images
run: docker-compose build