Skip to content

Commit d7b4c20

Browse files
ci: setup shared pipeline
1 parent ac0ac5e commit d7b4c20

File tree

5 files changed

+135
-138
lines changed

5 files changed

+135
-138
lines changed

.fvmrc

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
11
{
2-
"flutter": "stable"
2+
"flutter": "stable",
3+
"flavors": {
4+
"stable": "stable",
5+
"beta": "beta"
6+
}
37
}

.github/workflows/base-beta.yaml

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
name: Base (beta)
2+
3+
on:
4+
schedule:
5+
- cron: '0 0 */15 * *' # Runs every 15 days for verifying changes on Flutter beta channel
6+
push:
7+
branches: [beta]
8+
tags:
9+
- '[0-9]+.[0-9]+.[0-9]+-*'
10+
11+
pull_request:
12+
branches: [beta]
13+
14+
workflow_dispatch:
15+
16+
# This ensures that previous jobs for the PR are canceled when PR is updated
17+
concurrency:
18+
group: ${{ github.workflow }}-${{ github.ref }}
19+
cancel-in-progress: true
20+
21+
jobs:
22+
build:
23+
uses: flutter-form-builder-ecosystem/.github/.github/workflows/minimal-quality.yaml@main
24+
with:
25+
codecov-name: form_builder_phone_field
26+
fvm-flavor: beta
27+
example:
28+
uses: flutter-form-builder-ecosystem/.github/.github/workflows/build-examples.yaml@main
29+
with:
30+
fvm-flavor: beta
31+
32+
33+
deployment:
34+
permissions:
35+
id-token: write
36+
uses: flutter-form-builder-ecosystem/.github/.github/workflows/deployment.yaml@main
37+
if: ${{ github.ref_type == 'tag' }}
38+
needs: [build, example]

.github/workflows/base.yaml

Lines changed: 12 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -4,75 +4,30 @@ on:
44
push:
55
branches: [main]
66
tags:
7-
- '[0-9]+.[0-9]+.[0-9]+*'
7+
- '[0-9]+.[0-9]+.[0-9]+'
88

99
pull_request:
1010
branches: [main]
1111

1212
workflow_dispatch:
1313

14+
# This ensures that previous jobs for the PR are canceled when PR is updated
15+
concurrency:
16+
group: ${{ github.workflow }}-${{ github.ref }}
17+
cancel-in-progress: true
18+
1419
jobs:
1520
build:
16-
runs-on: macos-latest
17-
18-
steps:
19-
- uses: actions/checkout@v4
20-
with:
21-
fetch-depth: 1 # Use shallow clone for faster checkout
22-
23-
- name: Check broken links
24-
uses: JustinBeckwith/linkinator-action@v1
25-
with:
26-
paths: "**/*.md"
27-
28-
- name: Setup Java
29-
uses: actions/setup-java@v4
30-
with:
31-
distribution: 'zulu'
32-
java-version: '11'
33-
34-
- name: Get Flutter version by FVM
35-
uses: kuhnroyal/flutter-fvm-config-action@v2
36-
id: fvm-config-action
37-
with:
38-
path: ".fvmrc"
39-
40-
- name: Flutter action
41-
uses: subosito/flutter-action@v2
42-
with:
43-
flutter-version: ${{ steps.fvm-config-action.outputs.FLUTTER_VERSION }}
44-
channel: ${{ steps.fvm-config-action.outputs.FLUTTER_CHANNEL }}
45-
architecture: x64
46-
cache: true
47-
48-
- name: Install dependencies
49-
run: flutter pub get
50-
- name: Format code
51-
run: dart format --set-exit-if-changed .
52-
- name: Analyze static code
53-
run: flutter analyze
54-
- name: Run tests
55-
run: flutter test --coverage
56-
- name: Check publish warnings
57-
run: dart pub publish --dry-run
58-
- name: Build example
59-
run: |
60-
cd example
61-
flutter build appbundle --debug
62-
flutter build ios --debug --no-codesign
21+
uses: flutter-form-builder-ecosystem/.github/.github/workflows/minimal-quality.yaml@main
22+
with:
23+
codecov-name: form_builder_phone_field
24+
example:
25+
uses: flutter-form-builder-ecosystem/.github/.github/workflows/build-examples.yaml@main
6326

64-
- name: Upload coverage to Codecov
65-
uses: codecov/codecov-action@v4
66-
env:
67-
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
68-
with:
69-
files: coverage/lcov.info
70-
flags: unittests
71-
name: form_builder_phone_field
7227

7328
deployment:
7429
permissions:
7530
id-token: write
7631
uses: flutter-form-builder-ecosystem/.github/.github/workflows/deployment.yaml@main
7732
if: ${{ github.ref_type == 'tag' }}
78-
needs: build
33+
needs: [build, example]

example/pubspec.lock

Lines changed: 40 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -5,42 +5,42 @@ packages:
55
dependency: transitive
66
description:
77
name: async
8-
sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c"
8+
sha256: d2872f9c19731c2e5f10444b14686eb7cc85c76274bd6c16e1816bff9a3bab63
99
url: "https://pub.dev"
1010
source: hosted
11-
version: "2.11.0"
11+
version: "2.12.0"
1212
boolean_selector:
1313
dependency: transitive
1414
description:
1515
name: boolean_selector
16-
sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66"
16+
sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea"
1717
url: "https://pub.dev"
1818
source: hosted
19-
version: "2.1.1"
19+
version: "2.1.2"
2020
characters:
2121
dependency: transitive
2222
description:
2323
name: characters
24-
sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605"
24+
sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803
2525
url: "https://pub.dev"
2626
source: hosted
27-
version: "1.3.0"
27+
version: "1.4.0"
2828
clock:
2929
dependency: transitive
3030
description:
3131
name: clock
32-
sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf
32+
sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b
3333
url: "https://pub.dev"
3434
source: hosted
35-
version: "1.1.1"
35+
version: "1.1.2"
3636
collection:
3737
dependency: transitive
3838
description:
3939
name: collection
40-
sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a
40+
sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76"
4141
url: "https://pub.dev"
4242
source: hosted
43-
version: "1.18.0"
43+
version: "1.19.1"
4444
country_pickers:
4545
dependency: transitive
4646
description:
@@ -53,10 +53,10 @@ packages:
5353
dependency: transitive
5454
description:
5555
name: fake_async
56-
sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78"
56+
sha256: "6a95e56b2449df2273fd8c45a662d6947ce1ebb7aafe80e550a3f68297f3cacc"
5757
url: "https://pub.dev"
5858
source: hosted
59-
version: "1.3.1"
59+
version: "1.3.2"
6060
flutter:
6161
dependency: "direct main"
6262
description: flutter
@@ -115,18 +115,18 @@ packages:
115115
dependency: transitive
116116
description:
117117
name: leak_tracker
118-
sha256: "7f0df31977cb2c0b88585095d168e689669a2cc9b97c309665e3386f3e9d341a"
118+
sha256: c35baad643ba394b40aac41080300150a4f08fd0fd6a10378f8f7c6bc161acec
119119
url: "https://pub.dev"
120120
source: hosted
121-
version: "10.0.4"
121+
version: "10.0.8"
122122
leak_tracker_flutter_testing:
123123
dependency: transitive
124124
description:
125125
name: leak_tracker_flutter_testing
126-
sha256: "06e98f569d004c1315b991ded39924b21af84cf14cc94791b8aea337d25b57f8"
126+
sha256: f8b613e7e6a13ec79cfdc0e97638fddb3ab848452eff057653abd3edba760573
127127
url: "https://pub.dev"
128128
source: hosted
129-
version: "3.0.3"
129+
version: "3.0.9"
130130
leak_tracker_testing:
131131
dependency: transitive
132132
description:
@@ -147,34 +147,34 @@ packages:
147147
dependency: transitive
148148
description:
149149
name: matcher
150-
sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb
150+
sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2
151151
url: "https://pub.dev"
152152
source: hosted
153-
version: "0.12.16+1"
153+
version: "0.12.17"
154154
material_color_utilities:
155155
dependency: transitive
156156
description:
157157
name: material_color_utilities
158-
sha256: "0e0a020085b65b6083975e499759762399b4475f766c21668c4ecca34ea74e5a"
158+
sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec
159159
url: "https://pub.dev"
160160
source: hosted
161-
version: "0.8.0"
161+
version: "0.11.1"
162162
meta:
163163
dependency: transitive
164164
description:
165165
name: meta
166-
sha256: "7687075e408b093f36e6bbf6c91878cc0d4cd10f409506f7bc996f68220b9136"
166+
sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c
167167
url: "https://pub.dev"
168168
source: hosted
169-
version: "1.12.0"
169+
version: "1.16.0"
170170
path:
171171
dependency: transitive
172172
description:
173173
name: path
174-
sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af"
174+
sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5"
175175
url: "https://pub.dev"
176176
source: hosted
177-
version: "1.9.0"
177+
version: "1.9.1"
178178
phone_number:
179179
dependency: transitive
180180
description:
@@ -187,55 +187,55 @@ packages:
187187
dependency: transitive
188188
description: flutter
189189
source: sdk
190-
version: "0.0.99"
190+
version: "0.0.0"
191191
source_span:
192192
dependency: transitive
193193
description:
194194
name: source_span
195-
sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c"
195+
sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c"
196196
url: "https://pub.dev"
197197
source: hosted
198-
version: "1.10.0"
198+
version: "1.10.1"
199199
stack_trace:
200200
dependency: transitive
201201
description:
202202
name: stack_trace
203-
sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b"
203+
sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1"
204204
url: "https://pub.dev"
205205
source: hosted
206-
version: "1.11.1"
206+
version: "1.12.1"
207207
stream_channel:
208208
dependency: transitive
209209
description:
210210
name: stream_channel
211-
sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7
211+
sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d"
212212
url: "https://pub.dev"
213213
source: hosted
214-
version: "2.1.2"
214+
version: "2.1.4"
215215
string_scanner:
216216
dependency: transitive
217217
description:
218218
name: string_scanner
219-
sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde"
219+
sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43"
220220
url: "https://pub.dev"
221221
source: hosted
222-
version: "1.2.0"
222+
version: "1.4.1"
223223
term_glyph:
224224
dependency: transitive
225225
description:
226226
name: term_glyph
227-
sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84
227+
sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e"
228228
url: "https://pub.dev"
229229
source: hosted
230-
version: "1.2.1"
230+
version: "1.2.2"
231231
test_api:
232232
dependency: transitive
233233
description:
234234
name: test_api
235-
sha256: "9955ae474176f7ac8ee4e989dadfb411a58c30415bcfb648fa04b2b8a03afa7f"
235+
sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd
236236
url: "https://pub.dev"
237237
source: hosted
238-
version: "0.7.0"
238+
version: "0.7.4"
239239
vector_math:
240240
dependency: transitive
241241
description:
@@ -248,10 +248,10 @@ packages:
248248
dependency: transitive
249249
description:
250250
name: vm_service
251-
sha256: "3923c89304b715fb1eb6423f017651664a03bf5f4b29983627c4da791f74a4ec"
251+
sha256: "0968250880a6c5fe7edc067ed0a13d4bae1577fe2771dcf3010d52c4a9d3ca14"
252252
url: "https://pub.dev"
253253
source: hosted
254-
version: "14.2.1"
254+
version: "14.3.1"
255255
sdks:
256-
dart: ">=3.4.0 <4.0.0"
256+
dart: ">=3.7.0-0 <4.0.0"
257257
flutter: ">=3.22.0"

0 commit comments

Comments
 (0)