-
Notifications
You must be signed in to change notification settings - Fork 2
129 lines (113 loc) · 3.32 KB
/
admin.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
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
name: admin
on: [push,pull_request_target]
jobs:
files-changed:
name: Detect File Changes - admin/
runs-on: ubuntu-latest
outputs:
admin: ${{ steps.filter.outputs.admin }}
admin-docs: ${{ steps.filter.outputs.admin-docs }}
steps:
- uses: actions/checkout@v4
- uses: dorny/paths-filter@v3.0.2
id: filter
with:
filters: |
admin:
- '.github/workflows/**/*'
- 'admin/**/*'
admin-docs:
- '.github/workflows/**/*'
- 'admin/**/*.md'
- 'admin/.vuepress/*'
- 'admin/package.json'
build:
if: needs.files-changed.outputs.admin == 'true'
name: Build - Admin
needs: files-changed
runs-on: ubuntu-latest
env:
WORKING_DIRECTORY: ./admin
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Admin | Build
run: npm install && npm run build
working-directory: ${{env.WORKING_DIRECTORY}}
docker-production:
if: needs.files-changed.outputs.admin == 'true'
name: Build Docker Production - Admin
needs: files-changed
runs-on: ubuntu-latest
env:
WORKING_DIRECTORY: ./admin
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Admin | Build Docker Production
run: docker compose -f docker-compose.yml build
docker-development:
if: needs.files-changed.outputs.admin == 'true'
name: Build Docker Development - Admin
needs: files-changed
runs-on: ubuntu-latest
env:
WORKING_DIRECTORY: ./admin
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Admin | Build Docker Development
run: docker compose build
working-directory: ${{env.WORKING_DIRECTORY}}
docs:
if: needs.files-changed.outputs.admin-docs == 'true'
name: Build Docs - Admin
needs: files-changed
runs-on: ubuntu-latest
env:
WORKING_DIRECTORY: ./admin
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Admin | Build Docs
run: npm install && npm run docs:build
working-directory: ${{env.WORKING_DIRECTORY}}
storybook:
if: needs.files-changed.outputs.admin == 'true'
name: Build Storybook - Admin
needs: files-changed
runs-on: ubuntu-latest
env:
WORKING_DIRECTORY: ./admin
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Admin | Build Storybook
run: npm install && npm run storybook:build
working-directory: ${{env.WORKING_DIRECTORY}}
lint:
if: needs.files-changed.outputs.admin == 'true'
name: Lint - Admin
needs: files-changed
runs-on: ubuntu-latest
env:
WORKING_DIRECTORY: ./admin
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Admin | Lint
run: npm install && npm run test:lint
working-directory: ${{env.WORKING_DIRECTORY}}
unit:
if: needs.files-changed.outputs.admin == 'true'
name: Unit - Admin
needs: files-changed
runs-on: ubuntu-latest
env:
WORKING_DIRECTORY: ./admin
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Admin | Unit
run: npm install && npm run test:unit
working-directory: ${{env.WORKING_DIRECTORY}}