chore: adjust workflows for livery packages, add su95x livery package #1
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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 |