-
Notifications
You must be signed in to change notification settings - Fork 2
72 lines (59 loc) · 1.98 KB
/
build.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
name: Build
on:
push:
branches: [main]
pull_request:
jobs:
build:
runs-on: ubuntu-latest
defaults:
run:
shell: "bash"
permissions:
contents: read
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'npm'
cache-dependency-path: "*/package-lock.json"
- name: Configure infrastructure
run: |
cat > infrastructure/infrastructure-config.ts << EOF
import { InfrastructureConfig } from "./lib/infrastructure-config-interface";
export const CONFIG: InfrastructureConfig = {
stackName: "s3-media-player",
region: "eu-west-1",
domain: "media.example.com",
hostedZoneName: "example.com.",
sslCertificateArn: "arn:aws:acm:us-east-1:000000000000:certificate/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
contactEmailAddress: "[email protected]",
mediaBucket: "my-media-bucket"
};
EOF
- name: Install dependencies for infrastructure
run: cd infrastructure && npm ci
- name: Build infrastructure
run: cd infrastructure && npm run cdk synth
- name: Test infrastructure
run: cd infrastructure && npm run test
- name: Configure frontend
run: |
cat > frontend/src/frontend-config.ts << EOF
import { FrontendConfig } from "./environment";
export const CONFIG: FrontendConfig = {
region: "eu-west-1",
cognitoIdentityPoolId: "eu-west-1:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
cognitoUserPoolId: "eu-west-1_xxxxxxxxx",
cognitoUserPoolWebClientId: "xxxxxxxxxxxxxxxxxxxxxxxxxx",
mediaBucket: "my-media-bucket"
};
EOF
- name: Install frontend dependencies
run: cd frontend && npm ci
- name: Build frontend
run: cd frontend && npm run build
- name: Test frontend
if: ${{ false }}
run: cd frontend && npm run test