-
Notifications
You must be signed in to change notification settings - Fork 1
104 lines (90 loc) · 2.45 KB
/
ci.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
name: CI/CD
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
checks:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
# Note: This workflow uses the latest stable version of the Dart SDK.
# You can specify other versions if desired, see documentation here:
# https://github.com/dart-lang/setup-dart/blob/main/README.md
- uses: dart-lang/setup-dart@v1
- name: Install globals
run: |
dart pub global activate melos & dart pub global activate coverage
- name: Melos Bootstrap
run: melos bootstrap
- name: Analyze
run: melos analyze
- name: Format
run: melos format
- name: Publish (dry run)
run: melos publish --dry-run -y
tests:
runs-on: ubuntu-latest
services:
postgres:
image: postgres
env:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: docker
POSTGRES_DB: tunder_test
ports:
- 5432:5432
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
steps:
- uses: actions/checkout@v3
- uses: dart-lang/setup-dart@v1
- name: Install globals
run: |
dart pub global activate melos & dart pub global activate coverage
- name: Melos Bootstrap
run: melos bootstrap
- name: Test
run: |
cp .env.ci tunder/.env
melos test
env:
DB_HOST: postgres
DB_PORT: 5432
DB_DATABASE: tunder_test
DB_USERNAME: postgres
DB_PASSWORD: docker
- name: Check Coverage
uses: VeryGoodOpenSource/very_good_coverage@v1
with:
path: coverage_report/lcov.info
pana_tunder:
runs-on: ubuntu-latest
defaults:
run:
working-directory: tunder
steps:
- uses: actions/checkout@v3
- uses: dart-lang/setup-dart@v1
- name: Install Dependencies
run: dart pub global activate pana
- name: PANA Score
run: ../tool/pana_score.sh 80
pana_tunder_cli:
runs-on: ubuntu-latest
defaults:
run:
working-directory: tunder_cli
steps:
- uses: actions/checkout@v3
- uses: dart-lang/setup-dart@v1
- name: Install Dependencies
run: dart pub global activate pana
- name: PANA Score
run: ../tool/pana_score.sh 80