-
-
Notifications
You must be signed in to change notification settings - Fork 1k
139 lines (126 loc) · 4.16 KB
/
all_plugins.yaml
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
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
name: all_plugins
concurrency:
group: all_plugins_${{ github.head_ref || github.ref_name }}
cancel-in-progress: true
on:
pull_request:
paths-ignore:
- "docs/**"
- "website/**"
- "**.md"
push:
branches:
- main
paths-ignore:
- "docs/**"
- "website/**"
- "**.md"
jobs:
analyze:
name: "Flutter Analyze"
timeout-minutes: 15
runs-on: ubuntu-latest
steps:
- name: "Checkout repository"
uses: actions/checkout@v4
- 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
- name: "Run Dart Analyze"
uses: invertase/github-action-dart-analyzer@v3
with:
fatal-infos: false
fatal-warnings: true
annotate: true
working-directory: ./packages
pub_dev_publish_check:
name: "Check pub.dev requirements"
timeout-minutes: 15
runs-on: ubuntu-latest
steps:
- name: "Checkout repository"
uses: actions/checkout@v4
- 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
- name: "Pub Check"
run: |
melos exec -c 1 --no-private --ignore="*example*" -- \
flutter pub publish --dry-run
pub_get_check:
name: "Check pub dependencies"
timeout-minutes: 15
runs-on: ubuntu-latest
steps:
- name: "Checkout repository"
uses: actions/checkout@v4
- 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
- name: "Flutter Pub Get"
run: |
melos exec -c 1 --scope="*example*" -- \
"flutter pub get"
check_formatting:
name: "Check code formatting"
runs-on: ubuntu-latest
timeout-minutes: 40
steps:
- name: "Checkout repository"
uses: actions/checkout@v4
with:
fetch-depth: 0
- 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/v1.21.0/google-java-format-1.21.0-all-deps.jar -o $HOME/google-java-format.jar
- name: "Bootstrap Workspace"
run: melos bootstrap
- name: "Validate Dart formatting"
run: |
melos exec -c 1 -- \
"dart format ."
./.github/workflows/scripts/validate-formatting.sh
- name: "Validate Objective-C formatting"
if: ${{ success() || failure() }}
run: |
melos exec -c 4 --ignore="*platform_interface*" --ignore="*web*" -- \
find . -maxdepth 3 -name "*.h" -o -name "*.m" -print0 \| xargs -0 clang-format -i --verbose
./.github/workflows/scripts/validate-formatting.sh
- name: "Validate Java formatting"
if: ${{ success() || failure() }}
run: |
melos exec -c 4 --ignore="*platform_interface*" --ignore="*web*" -- \
find . -maxdepth 12 -name "*.java" -print0 \| xargs -0 java -jar $HOME/google-java-format.jar --replace
./.github/workflows/scripts/validate-formatting.sh
test:
runs-on: ubuntu-latest
timeout-minutes: 40
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- 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
- name: "Flutter Test"
run: melos run test --no-select
- name: "Flutter Test - Web"
run: melos run test:web --no-select