forked from invertase/notifee
-
Notifications
You must be signed in to change notification settings - Fork 0
89 lines (85 loc) · 3.04 KB
/
flutter_checks.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
name: Flutter Checks
on:
pull_request:
paths-ignore:
- "docs/**"
- "packages/react-native/**"
- "**.md"
push:
branches:
- main
paths-ignore:
- "docs/**"
- "packages/react-native/**"
- "**.md"
jobs:
analyze:
timeout-minutes: 30
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: "Install Flutter"
run: ./.github/workflows/scripts/install-flutter.sh stable
- name: "Install Tools"
run: |
./.github/workflows/scripts/install-tools.sh
- name: "Bootstrap Workspace"
run: melos bootstrap
working-directory: ./packages/flutter
- name: "Run Analyze"
run: melos run analyze
working-directory: ./packages/flutter
- name: "Pub Check"
run: |
melos exec -c 1 --no-private --ignore="*example*" -- \
dart pub publish --dry-run
working-directory: ./packages/flutter
format:
runs-on: ubuntu-latest
timeout-minutes: 20
steps:
- uses: actions/checkout@v2
- name: "Install Flutter"
run: ./.github/workflows/scripts/install-flutter.sh stable
- name: "Install Tools"
run: |
./.github/workflows/scripts/install-tools.sh
curl -sL https://github.com/google/google-java-format/releases/download/google-java-format-1.3/google-java-format-1.3-all-deps.jar -o $HOME/google-java-format.jar
- name: "Bootstrap Workspace"
run: melos bootstrap
working-directory: ./packages/flutter
- name: "Dart"
run: |
melos exec -c 1 -- \
"flutter format ."
../../.github/workflows/scripts/validate-formatting.sh
working-directory: ./packages/flutter
- name: "Objective-C"
if: ${{ success() || failure() }}
run: |
melos exec -c 4 --ignore="*platform_interface*" --ignore="*web*" --dir-exists="ios" -- \
find . -maxdepth 3 -name "*.h" -o -name "*.m" -print0 \| xargs -0 clang-format -i --style=Google --verbose
../../.github/workflows/scripts/validate-formatting.sh
working-directory: ./packages/flutter
- name: "Java"
if: ${{ success() || failure() }}
run: |
melos exec -c 4 --ignore="*platform_interface*" --ignore="*web*" --dir-exists="android" -- \
find . -maxdepth 12 -name "*.java" -print0 \| xargs -0 java -jar $HOME/google-java-format.jar --replace
../../.github/workflows/scripts/validate-formatting.sh
working-directory: ./packages/flutter
test:
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@v2
- name: "Install Flutter"
run: ./.github/workflows/scripts/install-flutter.sh stable
- name: "Install Tools"
run: ./.github/workflows/scripts/install-tools.sh
- name: "Bootstrap Workspace"
run: melos bootstrap
working-directory: ./packages/flutter
- name: "Flutter Test"
run: melos run test --no-select
working-directory: ./packages/flutter