Skip to content

Commit aa85a53

Browse files
committed
add workflow dispatch event
1 parent c0396f1 commit aa85a53

File tree

1 file changed

+45
-50
lines changed

1 file changed

+45
-50
lines changed

.github/workflows/ci-testing-deploy.yml

Lines changed: 45 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -25,16 +25,11 @@ on:
2525

2626
workflow_dispatch:
2727
inputs:
28-
tests:
29-
description: tests to run
30-
required: true
31-
default: "all"
32-
type: choice
33-
options:
34-
- unit-tests
35-
- integration-tests
36-
- system-tests
37-
- all
28+
force_all_builds:
29+
description: 'Run all tests and builds'
30+
required: false
31+
type: boolean
32+
default: false
3833

3934
env:
4035
# NOTE: 'COLUMNS' is a shell env var that represents the width (number of columns)
@@ -275,7 +270,7 @@ jobs:
275270
# this step comes first, so that it is executed as first job in push calls
276271
# in PR calls this step is anyway skipped
277272
needs: changes
278-
if: ${{ needs.changes.outputs.anything == 'true' || github.event_name == 'push' }}
273+
if: ${{ needs.changes.outputs.anything == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
279274
uses: ./.github/workflows/_reusable-build-images.yml
280275
with:
281276
build-backend: true
@@ -287,7 +282,7 @@ jobs:
287282
# this step comes first, so that it is executed as first job in push calls
288283
# in PR calls this step is anyway skipped
289284
needs: changes
290-
if: ${{ needs.changes.outputs.anything == 'true' || github.event_name == 'push' }}
285+
if: ${{ needs.changes.outputs.anything == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
291286
uses: ./.github/workflows/_reusable-build-images.yml
292287
with:
293288
build-backend: false
@@ -297,7 +292,7 @@ jobs:
297292

298293
unit-test-webserver-01:
299294
needs: changes
300-
if: ${{ needs.changes.outputs.webserver == 'true' || github.event_name == 'push' }}
295+
if: ${{ needs.changes.outputs.webserver == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
301296
timeout-minutes: 25 # if this timeout gets too small, then split the tests
302297
name: "[unit] webserver 01"
303298
runs-on: ${{ matrix.os }}
@@ -345,7 +340,7 @@ jobs:
345340

346341
unit-test-webserver-02:
347342
needs: changes
348-
if: ${{ needs.changes.outputs.webserver == 'true' || github.event_name == 'push' }}
343+
if: ${{ needs.changes.outputs.webserver == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
349344
timeout-minutes: 25 # if this timeout gets too small, then split the tests
350345
name: "[unit] webserver 02"
351346
runs-on: ${{ matrix.os }}
@@ -387,7 +382,7 @@ jobs:
387382

388383
unit-test-webserver-03:
389384
needs: changes
390-
if: ${{ needs.changes.outputs.webserver == 'true' || github.event_name == 'push' }}
385+
if: ${{ needs.changes.outputs.webserver == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
391386
timeout-minutes: 25 # if this timeout gets too small, then split the tests
392387
name: "[unit] webserver 03"
393388
runs-on: ${{ matrix.os }}
@@ -429,7 +424,7 @@ jobs:
429424

430425
unit-test-webserver-04:
431426
needs: changes
432-
if: ${{ needs.changes.outputs.webserver == 'true' || github.event_name == 'push' }}
427+
if: ${{ needs.changes.outputs.webserver == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
433428
timeout-minutes: 25 # if this timeout gets too small, then split the tests
434429
name: "[unit] webserver 04"
435430
runs-on: ${{ matrix.os }}
@@ -474,7 +469,7 @@ jobs:
474469

475470
unit-test-storage:
476471
needs: changes
477-
if: ${{ needs.changes.outputs.storage == 'true' || github.event_name == 'push' }}
472+
if: ${{ needs.changes.outputs.storage == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
478473
timeout-minutes: 25 # if this timeout gets too small, then split the tests
479474
name: "[unit] storage"
480475
runs-on: ${{ matrix.os }}
@@ -519,7 +514,7 @@ jobs:
519514

520515
unit-test-agent:
521516
needs: changes
522-
if: ${{ needs.changes.outputs.agent == 'true' || github.event_name == 'push' }}
517+
if: ${{ needs.changes.outputs.agent == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
523518
timeout-minutes: 18 # if this timeout gets too small, then split the tests
524519
name: "[unit] agent"
525520
runs-on: ${{ matrix.os }}
@@ -565,7 +560,7 @@ jobs:
565560

566561
unit-test-notifications:
567562
needs: changes
568-
if: ${{ needs.changes.outputs.notifications == 'true' || github.event_name == 'push' }}
563+
if: ${{ needs.changes.outputs.notifications == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
569564
timeout-minutes: 18 # if this timeout gets too small, then split the tests
570565
name: "[unit] notifications"
571566
runs-on: ${{ matrix.os }}
@@ -609,7 +604,7 @@ jobs:
609604

610605
unit-test-api:
611606
needs: changes
612-
if: ${{ needs.changes.outputs.api == 'true' || github.event_name == 'push' }}
607+
if: ${{ needs.changes.outputs.api == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
613608
timeout-minutes: 18 # if this timeout gets too small, then split the tests
614609
name: "[unit] api"
615610
runs-on: ${{ matrix.os }}
@@ -651,7 +646,7 @@ jobs:
651646

652647
unit-test-api-server:
653648
needs: changes
654-
if: ${{ needs.changes.outputs.api-server == 'true' || github.event_name == 'push' }}
649+
if: ${{ needs.changes.outputs.api-server == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
655650
timeout-minutes: 18 # if this timeout gets too small, then split the tests
656651
name: "[unit] api-server"
657652
runs-on: ${{ matrix.os }}
@@ -699,7 +694,7 @@ jobs:
699694

700695
unit-test-autoscaling:
701696
needs: changes
702-
if: ${{ needs.changes.outputs.autoscaling == 'true' || github.event_name == 'push' }}
697+
if: ${{ needs.changes.outputs.autoscaling == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
703698
timeout-minutes: 22 # temporary: mypy takes a huge amount of time to run here, maybe we should cache it
704699
name: "[unit] autoscaling"
705700
runs-on: ${{ matrix.os }}
@@ -744,7 +739,7 @@ jobs:
744739

745740
unit-test-catalog:
746741
needs: changes
747-
if: ${{ needs.changes.outputs.catalog == 'true' || github.event_name == 'push' }}
742+
if: ${{ needs.changes.outputs.catalog == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
748743
timeout-minutes: 18 # if this timeout gets too small, then split the tests
749744
name: "[unit] catalog"
750745
runs-on: ${{ matrix.os }}
@@ -795,7 +790,7 @@ jobs:
795790

796791
unit-test-clusters-keeper:
797792
needs: changes
798-
if: ${{ needs.changes.outputs.clusters-keeper == 'true' || github.event_name == 'push' }}
793+
if: ${{ needs.changes.outputs.clusters-keeper == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
799794
timeout-minutes: 18 # if this timeout gets too small, then split the tests
800795
name: "[unit] clusters-keeper"
801796
runs-on: ${{ matrix.os }}
@@ -851,7 +846,7 @@ jobs:
851846

852847
unit-test-datcore-adapter:
853848
needs: changes
854-
if: ${{ needs.changes.outputs.datcore-adapter == 'true' || github.event_name == 'push' }}
849+
if: ${{ needs.changes.outputs.datcore-adapter == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
855850
timeout-minutes: 18 # if this timeout gets too small, then split the tests
856851
name: "[unit] datcore-adapter"
857852
runs-on: ${{ matrix.os }}
@@ -902,7 +897,7 @@ jobs:
902897

903898
unit-test-director:
904899
needs: changes
905-
if: ${{ needs.changes.outputs.director == 'true' || github.event_name == 'push' }}
900+
if: ${{ needs.changes.outputs.director == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
906901
timeout-minutes: 18 # if this timeout gets too small, then split the tests
907902
name: "[unit] director"
908903
runs-on: ${{ matrix.os }}
@@ -953,7 +948,7 @@ jobs:
953948

954949
unit-test-director-v2:
955950
needs: changes
956-
if: ${{ needs.changes.outputs.director-v2 == 'true' || github.event_name == 'push' }}
951+
if: ${{ needs.changes.outputs.director-v2 == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
957952
timeout-minutes: 18 # if this timeout gets too small, then split the tests
958953
name: "[unit] director-v2"
959954
runs-on: ${{ matrix.os }}
@@ -1004,7 +999,7 @@ jobs:
1004999

10051000
unit-test-aws-library:
10061001
needs: changes
1007-
if: ${{ needs.changes.outputs.aws-library == 'true' || github.event_name == 'push' }}
1002+
if: ${{ needs.changes.outputs.aws-library == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
10081003
timeout-minutes: 18 # if this timeout gets too small, then split the tests
10091004
name: "[unit] aws-library"
10101005
runs-on: ${{ matrix.os }}
@@ -1049,7 +1044,7 @@ jobs:
10491044

10501045
unit-test-dask-task-models-library:
10511046
needs: changes
1052-
if: ${{ needs.changes.outputs.dask-task-models-library == 'true' || github.event_name == 'push' }}
1047+
if: ${{ needs.changes.outputs.dask-task-models-library == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
10531048
timeout-minutes: 18 # if this timeout gets too small, then split the tests
10541049
name: "[unit] dask-task-models-library"
10551050
runs-on: ${{ matrix.os }}
@@ -1094,7 +1089,7 @@ jobs:
10941089

10951090
unit-test-dask-sidecar:
10961091
needs: changes
1097-
if: ${{ needs.changes.outputs.dask-sidecar == 'true' || github.event_name == 'push' }}
1092+
if: ${{ needs.changes.outputs.dask-sidecar == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
10981093
timeout-minutes: 18 # if this timeout gets too small, then split the tests
10991094
name: "[unit] dask-sidecar"
11001095
runs-on: ${{ matrix.os }}
@@ -1139,7 +1134,7 @@ jobs:
11391134

11401135
unit-test-payments:
11411136
needs: changes
1142-
if: ${{ needs.changes.outputs.payments == 'true' || github.event_name == 'push' }}
1137+
if: ${{ needs.changes.outputs.payments == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
11431138
timeout-minutes: 18 # if this timeout gets too small, then split the tests
11441139
name: "[unit] payments"
11451140
runs-on: ${{ matrix.os }}
@@ -1184,7 +1179,7 @@ jobs:
11841179

11851180
unit-test-dynamic-scheduler:
11861181
needs: changes
1187-
if: ${{ needs.changes.outputs.dynamic-scheduler == 'true' || github.event_name == 'push' }}
1182+
if: ${{ needs.changes.outputs.dynamic-scheduler == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
11881183
timeout-minutes: 18 # if this timeout gets too small, then split the tests
11891184
name: "[unit] dynamic-scheduler"
11901185
runs-on: ${{ matrix.os }}
@@ -1229,7 +1224,7 @@ jobs:
12291224

12301225
unit-test-resource-usage-tracker:
12311226
needs: changes
1232-
if: ${{ needs.changes.outputs.resource-usage-tracker == 'true' || github.event_name == 'push' }}
1227+
if: ${{ needs.changes.outputs.resource-usage-tracker == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
12331228
timeout-minutes: 18 # if this timeout gets too small, then split the tests
12341229
name: "[unit] resource-usage-tracker"
12351230
runs-on: ${{ matrix.os }}
@@ -1284,7 +1279,7 @@ jobs:
12841279

12851280
unit-test-dynamic-sidecar:
12861281
needs: changes
1287-
if: ${{ needs.changes.outputs.dynamic-sidecar == 'true' || github.event_name == 'push' }}
1282+
if: ${{ needs.changes.outputs.dynamic-sidecar == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
12881283
timeout-minutes: 18 # if this timeout gets too small, then split the tests
12891284
name: "[unit] dynamic-sidecar"
12901285
runs-on: ${{ matrix.os }}
@@ -1329,7 +1324,7 @@ jobs:
13291324

13301325
unit-test-efs-guardian:
13311326
needs: changes
1332-
if: ${{ needs.changes.outputs.efs-guardian == 'true' || github.event_name == 'push' }}
1327+
if: ${{ needs.changes.outputs.efs-guardian == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
13331328
timeout-minutes: 18 # if this timeout gets too small, then split the tests
13341329
name: "[unit] efs-guardian"
13351330
runs-on: ${{ matrix.os }}
@@ -1385,7 +1380,7 @@ jobs:
13851380

13861381
unit-test-python-linting:
13871382
needs: changes
1388-
if: ${{ needs.changes.outputs.anything-py == 'true' || github.event_name == 'push' }}
1383+
if: ${{ needs.changes.outputs.anything-py == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
13891384
timeout-minutes: 18 # if this timeout gets too small, then split the tests
13901385
name: "[unit] python-linting"
13911386
runs-on: ${{ matrix.os }}
@@ -1420,7 +1415,7 @@ jobs:
14201415

14211416
unit-test-postgres-database:
14221417
needs: changes
1423-
if: ${{ needs.changes.outputs.postgres-database == 'true' || github.event_name == 'push' }}
1418+
if: ${{ needs.changes.outputs.postgres-database == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
14241419
timeout-minutes: 18 # if this timeout gets too small, then split the tests
14251420
name: "[unit] postgres-database"
14261421
runs-on: ${{ matrix.os }}
@@ -1465,7 +1460,7 @@ jobs:
14651460

14661461
unit-test-invitations:
14671462
needs: changes
1468-
if: ${{ needs.changes.outputs.invitations == 'true' || github.event_name == 'push' }}
1463+
if: ${{ needs.changes.outputs.invitations == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
14691464
timeout-minutes: 18 # if this timeout gets too small, then split the tests
14701465
name: "[unit] invitations"
14711466
runs-on: ${{ matrix.os }}
@@ -1510,7 +1505,7 @@ jobs:
15101505

15111506
unit-test-service-integration:
15121507
needs: changes
1513-
if: ${{ needs.changes.outputs.service-integration == 'true' || github.event_name == 'push' }}
1508+
if: ${{ needs.changes.outputs.service-integration == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
15141509
timeout-minutes: 18 # if this timeout gets too small, then split the tests
15151510
name: "[unit] service-integration"
15161511
runs-on: ${{ matrix.os }}
@@ -1555,7 +1550,7 @@ jobs:
15551550

15561551
unit-test-service-library:
15571552
needs: changes
1558-
if: ${{ needs.changes.outputs.service-library == 'true' || github.event_name == 'push' }}
1553+
if: ${{ needs.changes.outputs.service-library == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
15591554
timeout-minutes: 18 # if this timeout gets too small, then split the tests
15601555
name: "[unit] service-library"
15611556
runs-on: ${{ matrix.os }}
@@ -1600,7 +1595,7 @@ jobs:
16001595

16011596
unit-test-settings-library:
16021597
needs: changes
1603-
if: ${{ needs.changes.outputs.settings-library == 'true' || github.event_name == 'push' }}
1598+
if: ${{ needs.changes.outputs.settings-library == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
16041599
timeout-minutes: 18 # if this timeout gets too small, then split the tests
16051600
name: "[unit] settings-library"
16061601
runs-on: ${{ matrix.os }}
@@ -1645,7 +1640,7 @@ jobs:
16451640

16461641
unit-test-models-library:
16471642
needs: changes
1648-
if: ${{ needs.changes.outputs.models-library == 'true' || github.event_name == 'push' }}
1643+
if: ${{ needs.changes.outputs.models-library == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
16491644
timeout-minutes: 18 # if this timeout gets too small, then split the tests
16501645
name: "[unit] models-library"
16511646
runs-on: ${{ matrix.os }}
@@ -1689,7 +1684,7 @@ jobs:
16891684

16901685
unit-test-common-library:
16911686
needs: changes
1692-
if: ${{ needs.changes.outputs.common-library == 'true' || github.event_name == 'push' }}
1687+
if: ${{ needs.changes.outputs.common-library == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
16931688
timeout-minutes: 18 # if this timeout gets too small, then split the tests
16941689
name: "[unit] common-library"
16951690
runs-on: ${{ matrix.os }}
@@ -1725,7 +1720,7 @@ jobs:
17251720

17261721
unit-test-notifications-library:
17271722
needs: changes
1728-
if: ${{ needs.changes.outputs.notifications-library == 'true' || github.event_name == 'push' }}
1723+
if: ${{ needs.changes.outputs.notifications-library == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
17291724
timeout-minutes: 18 # if this timeout gets too small, then split the tests
17301725
name: "[unit]notifications-library"
17311726
runs-on: ${{ matrix.os }}
@@ -1770,7 +1765,7 @@ jobs:
17701765

17711766
unit-test-simcore-sdk:
17721767
needs: changes
1773-
if: ${{ needs.changes.outputs.simcore-sdk == 'true' || github.event_name == 'push' }}
1768+
if: ${{ needs.changes.outputs.simcore-sdk == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
17741769
timeout-minutes: 18 # if this timeout gets too small, then split the tests
17751770
name: "[unit] simcore-sdk"
17761771
runs-on: ${{ matrix.os }}
@@ -1867,7 +1862,7 @@ jobs:
18671862

18681863
integration-test-webserver-01:
18691864
needs: [changes, build-test-images]
1870-
if: ${{ needs.changes.outputs.anything-py == 'true' || needs.changes.outputs.webserver == 'true' || github.event_name == 'push' }}
1865+
if: ${{ needs.changes.outputs.anything-py == 'true' || needs.changes.outputs.webserver == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
18711866
timeout-minutes: 30 # if this timeout gets too small, then split the tests
18721867
name: "[int] webserver 01"
18731868
runs-on: ${{ matrix.os }}
@@ -2349,7 +2344,7 @@ jobs:
23492344

23502345
system-test-public-api:
23512346
needs: [changes, build-test-images, build-test-images-frontend]
2352-
if: ${{ needs.changes.outputs.anything == 'true' || github.event_name == 'push' }}
2347+
if: ${{ needs.changes.outputs.anything == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
23532348
timeout-minutes: 25 # if this timeout gets too small, then split the tests
23542349
name: "[sys] public api"
23552350
runs-on: ${{ matrix.os }}
@@ -2409,7 +2404,7 @@ jobs:
24092404

24102405
system-test-swarm-deploy:
24112406
needs: [changes, build-test-images, build-test-images-frontend]
2412-
if: ${{ needs.changes.outputs.anything == 'true' || github.event_name == 'push' }}
2407+
if: ${{ needs.changes.outputs.anything == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
24132408
timeout-minutes: 30 # if this timeout gets too small, then split the tests
24142409
name: "[sys] deploy simcore"
24152410
runs-on: ${{ matrix.os }}
@@ -2474,7 +2469,7 @@ jobs:
24742469

24752470
system-test-e2e:
24762471
needs: [changes, build-test-images, build-test-images-frontend]
2477-
if: ${{ needs.changes.outputs.anything == 'true' || github.event_name == 'push' }}
2472+
if: ${{ needs.changes.outputs.anything == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
24782473
timeout-minutes: 30 # if this timeout gets too small, then split the tests
24792474
name: "[sys] e2e"
24802475
runs-on: ${{ matrix.os }}
@@ -2554,7 +2549,7 @@ jobs:
25542549

25552550
system-test-e2e-playwright:
25562551
needs: [changes, build-test-images, build-test-images-frontend]
2557-
if: ${{ needs.changes.outputs.anything == 'true' || github.event_name == 'push' }}
2552+
if: ${{ needs.changes.outputs.anything == 'true' || github.event_name == 'push' || github.event.inputs.force_all_builds == 'true' }}
25582553
timeout-minutes: 30 # if this timeout gets too small, then split the tests
25592554
name: "[sys] e2e-playwright"
25602555
runs-on: ${{ matrix.os }}

0 commit comments

Comments
 (0)