-
-
Notifications
You must be signed in to change notification settings - Fork 39
159 lines (158 loc) · 6.45 KB
/
livery-package-dev.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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
name: Livery Package Development
on:
push:
branches:
- main
paths:
- '.github/workflows/livery-package-dev.yml'
- 'hdw-*-liveries/**'
- 'scripts/build-*-liveries.js'
- 'scripts/build-*-liveries.sh'
- '*-igniter.config.mjs'
- 'package.json'
- 'package-lock.json'
jobs:
build-a339x-livery-package:
# Prevent running this on forks
if: github.repository_owner == 'headwindsim'
name: 'Build A339X Livery Package'
runs-on: ubuntu-latest
env:
A32NX_PRODUCTION_BUILD: 1
A32NX_INSTRUMENTS_BUILD_WORKERS: 2
ZIP_NAME: hdw-a339x-liveries-dev.zip
BUILD_DIR_NAME: dev
CLOUDFLARE_WORKER_PASSWORD: ${{ secrets.CLOUDFLARE_WORKER_PASSWORD }}
CDN_BUCKET_DESTINATION: addons/a339x-livery-package/dev
steps:
- name: Free Disk Space (Ubuntu)
uses: jlumbroso/free-disk-space@main
with:
tool-cache: false
android: true
dotnet: false
haskell: false
large-packages: false
docker-images: false
swap-storage: false
- name: Checkout source
uses: actions/checkout@v3
with:
submodules: recursive
- name: Set BUILT_DATE_TIME
run: echo "BUILT_DATE_TIME=$(date -u -Iseconds)" >> $GITHUB_ENV
- name: Create .env file
run: |
echo A32NX_PRODUCTION_BUILD=1 >> .env
echo CLIENT_ID=${{ secrets.NAVIGRAPH_CLIENT_ID }} >> .env
echo CLIENT_SECRET=${{ secrets.NAVIGRAPH_CLIENT_SECRET }} >> .env
echo CHARTFOX_SECRET=${{ secrets.CHARTFOX_SECRET }} >> .env
echo SENTRY_DSN=${{ secrets.SENTRY_DSN }} >> .env
echo BUILD_DIR_NAME=${{ env.BUILD_DIR_NAME }} >> .env
echo LOCALAZY_READ_KEY=${{ secrets.LOCALAZY_READ_KEY }} >> .env
- name: Setup Package
run: |
./scripts/dev-env/run.sh ./scripts/setup.sh --clean
- name: Copy Sources
run: |
./scripts/dev-env/run.sh ./scripts/copy_a339x.sh
- name: Build A339X Livery Package
run: |
./scripts/dev-env/run.sh ./scripts/build-a339x-liveries.sh --no-tty -j 4
docker system prune -af
- name: Build ZIP files
run: |
node ./scripts/fragment-a339x-liveries.js
cp ./hdw-a339x-liveries/out/build-modules/modules.json ./hdw-a339x-liveries/out/headwindsim-a339x-livery-package/install.json
node ./scripts/install-source-a339x-liveries.js
mkdir ./${{ env.BUILD_DIR_NAME }}
cd ./hdw-a339x-liveries/out/
zip -r ../../${{ env.BUILD_DIR_NAME }}/${{ env.ZIP_NAME }} ./headwindsim-a339x-livery-package/
cd ../../
- name: Upload to CloudFlare CDN
run: |
./scripts/cdn.sh $CDN_BUCKET_DESTINATION ./hdw-a339x-liveries/out/build-modules
- name: Get short SHA
uses: benjlevesque/[email protected]
id: short-sha
- name: Upload Release Config to CloudFlare CDN
env:
SHA: ${{ steps.short-sha.outputs.sha }}
run: |
mkdir -p ./hdw-a339x-liveries/out/config
echo "releases:" >> ./hdw-a339x-liveries/out/config/releases.yaml
echo " - name: $SHA" >> ./hdw-a339x-liveries/out/config/releases.yaml
echo " date: $(date -u +"%Y-%m-%dT%H:%M:%SZ")" >> ./hdw-a339x-liveries/out/config/releases.yaml
./scripts/cdn.sh $CDN_BUCKET_DESTINATION ./hdw-a339x-liveries/out/config
build-su95x-livery-package:
# Prevent running this on forks
if: github.repository_owner == 'headwindsim'
name: 'Build SU95X Livery Package'
runs-on: ubuntu-latest
env:
A32NX_PRODUCTION_BUILD: 1
A32NX_INSTRUMENTS_BUILD_WORKERS: 2
ZIP_NAME: hdw-su95x-liveries-dev.zip
BUILD_DIR_NAME: dev
CLOUDFLARE_WORKER_PASSWORD: ${{ secrets.CLOUDFLARE_WORKER_PASSWORD }}
CDN_BUCKET_DESTINATION: addons/su95x-livery-package/dev
steps:
- name: Free Disk Space (Ubuntu)
uses: jlumbroso/free-disk-space@main
with:
tool-cache: false
android: true
dotnet: false
haskell: false
large-packages: false
docker-images: false
swap-storage: false
- name: Checkout source
uses: actions/checkout@v3
with:
submodules: recursive
- name: Set BUILT_DATE_TIME
run: echo "BUILT_DATE_TIME=$(date -u -Iseconds)" >> $GITHUB_ENV
- name: Create .env file
run: |
echo A32NX_PRODUCTION_BUILD=1 >> .env
echo CLIENT_ID=${{ secrets.NAVIGRAPH_CLIENT_ID }} >> .env
echo CLIENT_SECRET=${{ secrets.NAVIGRAPH_CLIENT_SECRET }} >> .env
echo CHARTFOX_SECRET=${{ secrets.CHARTFOX_SECRET }} >> .env
echo SENTRY_DSN=${{ secrets.SENTRY_DSN }} >> .env
echo BUILD_DIR_NAME=${{ env.BUILD_DIR_NAME }} >> .env
echo LOCALAZY_READ_KEY=${{ secrets.LOCALAZY_READ_KEY }} >> .env
- name: Setup Package
run: |
./scripts/dev-env/run.sh ./scripts/setup.sh --clean
- name: Copy Sources
run: |
./scripts/dev-env/run.sh ./scripts/copy_su95x.sh
- name: Build SU95X Livery Package
run: |
./scripts/dev-env/run.sh ./scripts/build-su95x-liveries.sh --no-tty -j 4
docker system prune -af
- name: Build ZIP files
run: |
node ./scripts/fragment-su95x-liveries.js
cp ./hdw-su95x-liveries/out/build-modules/modules.json ./hdw-su95x-liveries/out/headwindsim-su95x-livery-package/install.json
node ./scripts/install-source-su95x-liveries.js
mkdir ./${{ env.BUILD_DIR_NAME }}
cd ./hdw-su95x-liveries/out/
zip -r ../../${{ env.BUILD_DIR_NAME }}/${{ env.ZIP_NAME }} ./headwindsim-su95x-livery-package/
cd ../../
- name: Upload to CloudFlare CDN
run: |
./scripts/cdn.sh $CDN_BUCKET_DESTINATION ./hdw-su95x-liveries/out/build-modules
- name: Get short SHA
uses: benjlevesque/[email protected]
id: short-sha
- name: Upload Release Config to CloudFlare CDN
env:
SHA: ${{ steps.short-sha.outputs.sha }}
run: |
mkdir -p ./hdw-su95x-liveries/out/config
echo "releases:" >> ./hdw-su95x-liveries/out/config/releases.yaml
echo " - name: $SHA" >> ./hdw-su95x-liveries/out/config/releases.yaml
echo " date: $(date -u +"%Y-%m-%dT%H:%M:%SZ")" >> ./hdw-su95x-liveries/out/config/releases.yaml
./scripts/cdn.sh $CDN_BUCKET_DESTINATION ./hdw-su95x-liveries/out/config