mirror of
https://github.com/fallout2-ce/fallout2-ce.git
synced 2026-07-27 16:47:11 -07:00
Bundle ce.dat into release packages, and update README (#425)
This commit is contained in:
@@ -6,10 +6,15 @@ on:
|
||||
push:
|
||||
branches: [main]
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
format:
|
||||
runs-on: ubuntu-latest
|
||||
if: github.actor != 'github-actions[bot]' && (github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository)
|
||||
permissions:
|
||||
contents: write
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
@@ -39,4 +44,4 @@ jobs:
|
||||
echo "No formatting changes"
|
||||
fi
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -8,11 +8,16 @@ on:
|
||||
- opened
|
||||
- synchronize
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
build_webassembly_version:
|
||||
name: Build webassembly version
|
||||
runs-on: ubuntu-latest
|
||||
permissions: write-all
|
||||
permissions:
|
||||
contents: write
|
||||
deployments: write
|
||||
steps:
|
||||
- name: start deployment
|
||||
if: github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name == github.repository
|
||||
@@ -138,4 +143,3 @@ jobs:
|
||||
deployment_id: ${{ steps.deployment.outputs.deployment_id }}
|
||||
ref: ${{ github.event.pull_request.head.sha }}
|
||||
env_url: https://${{ github.repository_owner }}.github.io/fallout2-ce/PR-${{ github.event.pull_request.number }}/
|
||||
|
||||
|
||||
+101
-20
@@ -9,6 +9,9 @@ on:
|
||||
- opened
|
||||
- synchronize
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
@@ -35,6 +38,9 @@ jobs:
|
||||
name: Code format check
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: read
|
||||
pull-requests: read
|
||||
|
||||
steps:
|
||||
- name: Clone
|
||||
@@ -71,6 +77,7 @@ jobs:
|
||||
name: Android
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
needs: [ce-dat]
|
||||
|
||||
steps:
|
||||
- name: Clone
|
||||
@@ -104,21 +111,38 @@ jobs:
|
||||
cd os/android
|
||||
./gradlew assembleDebug
|
||||
|
||||
- name: Change apk file name
|
||||
- name: Download ce.dat
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: ce-dat
|
||||
path: out/dist
|
||||
|
||||
- name: Package
|
||||
run: |
|
||||
mv os/android/app/build/outputs/apk/debug/app-debug.apk os/android/app/build/outputs/apk/debug/fallout2-ce.apk
|
||||
mkdir -p out/dist/fallout2-ce-android-debug
|
||||
cp os/android/app/build/outputs/apk/debug/app-debug.apk out/dist/fallout2-ce-android-debug/fallout2-ce.apk
|
||||
cp out/dist/ce.dat out/dist/fallout2-ce-android-debug/ce.dat
|
||||
cd out/dist
|
||||
zip -r fallout2-ce-android-debug.zip fallout2-ce-android-debug
|
||||
|
||||
- name: Upload
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: fallout2-ce-debug.apk
|
||||
path: os/android/app/build/outputs/apk/debug/fallout2-ce.apk
|
||||
name: fallout2-ce-android-debug
|
||||
path: out/dist/fallout2-ce-android-debug.zip
|
||||
retention-days: 7
|
||||
|
||||
ce-dat:
|
||||
name: Build ce.dat
|
||||
uses: ./.github/workflows/reusable-build-ce-dat.yml
|
||||
with:
|
||||
preset: linux-x64-debug
|
||||
|
||||
ios:
|
||||
name: iOS
|
||||
|
||||
runs-on: macos-14
|
||||
needs: [ce-dat]
|
||||
|
||||
steps:
|
||||
- name: Clone
|
||||
@@ -143,17 +167,32 @@ jobs:
|
||||
cd out/build/ios
|
||||
cpack -C Debug
|
||||
|
||||
- name: Download ce.dat
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: ce-dat
|
||||
path: out/dist
|
||||
|
||||
- name: Package
|
||||
run: |
|
||||
mkdir -p out/dist/fallout2-ce-ios
|
||||
cp out/build/ios/fallout2-ce.ipa out/dist/fallout2-ce-ios/fallout2-ce-ios.ipa
|
||||
cp out/dist/ce.dat out/dist/fallout2-ce-ios/ce.dat
|
||||
cd out/dist
|
||||
zip -r fallout2-ce-ios.zip fallout2-ce-ios
|
||||
|
||||
- name: Upload
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: fallout2-ce.ipa
|
||||
path: out/build/ios/fallout2-ce.ipa
|
||||
name: fallout2-ce-ios
|
||||
path: out/dist/fallout2-ce-ios.zip
|
||||
retention-days: 7
|
||||
|
||||
linux:
|
||||
name: Linux (${{ matrix.arch }})
|
||||
|
||||
runs-on: ubuntu-22.04
|
||||
needs: [ce-dat]
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
@@ -193,21 +232,31 @@ jobs:
|
||||
run: |
|
||||
cmake --build --preset linux-${{ matrix.arch }}-debug
|
||||
|
||||
- name: Change executable file name
|
||||
- name: Download ce.dat
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: ce-dat
|
||||
path: out/dist
|
||||
|
||||
- name: Package
|
||||
run: |
|
||||
mv out/build/linux-${{ matrix.arch }}-debug/fallout2-ce out/build/linux-${{ matrix.arch }}-debug/fallout2-ce-linux-${{ matrix.arch }}
|
||||
mkdir -p out/dist/fallout2-ce-linux-${{ matrix.arch }}
|
||||
cp out/build/linux-${{ matrix.arch }}-debug/fallout2-ce out/dist/fallout2-ce-linux-${{ matrix.arch }}/fallout2-ce
|
||||
cp out/dist/ce.dat out/dist/fallout2-ce-linux-${{ matrix.arch }}/ce.dat
|
||||
tar -czvf out/dist/fallout2-ce-linux-${{ matrix.arch }}.tar.gz -C out/dist fallout2-ce-linux-${{ matrix.arch }}
|
||||
|
||||
- name: Upload
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: fallout2-ce-linux-${{ matrix.arch }}
|
||||
path: out/build/linux-${{ matrix.arch }}-debug/fallout2-ce-linux-${{ matrix.arch }}
|
||||
path: out/dist/fallout2-ce-linux-${{ matrix.arch }}.tar.gz
|
||||
retention-days: 7
|
||||
|
||||
linux-armhf:
|
||||
name: Linux (armhf)
|
||||
|
||||
runs-on: ubuntu-22.04-arm
|
||||
needs: [ce-dat]
|
||||
|
||||
steps:
|
||||
- name: Clone
|
||||
@@ -233,21 +282,31 @@ jobs:
|
||||
- name: Build
|
||||
run: cmake --build build
|
||||
|
||||
- name: Change executable file name
|
||||
- name: Download ce.dat
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: ce-dat
|
||||
path: out/dist
|
||||
|
||||
- name: Package
|
||||
run: |
|
||||
mv build/fallout2-ce build/fallout2-ce-linux-armhf
|
||||
mkdir -p out/dist/fallout2-ce-linux-armhf
|
||||
cp build/fallout2-ce out/dist/fallout2-ce-linux-armhf/fallout2-ce
|
||||
cp out/dist/ce.dat out/dist/fallout2-ce-linux-armhf/ce.dat
|
||||
tar -czvf out/dist/fallout2-ce-linux-armhf.tar.gz -C out/dist fallout2-ce-linux-armhf
|
||||
|
||||
- name: Upload
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: fallout2-ce-linux-armhf
|
||||
path: build/fallout2-ce-linux-armhf
|
||||
path: out/dist/fallout2-ce-linux-armhf.tar.gz
|
||||
retention-days: 7
|
||||
|
||||
linux-arm64:
|
||||
name: Linux (arm64)
|
||||
|
||||
runs-on: ubuntu-22.04-arm
|
||||
needs: [ce-dat]
|
||||
|
||||
steps:
|
||||
- name: Clone
|
||||
@@ -264,15 +323,24 @@ jobs:
|
||||
- name: Build
|
||||
run: cmake --build build
|
||||
|
||||
- name: Change executable file name
|
||||
- name: Download ce.dat
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: ce-dat
|
||||
path: out/dist
|
||||
|
||||
- name: Package
|
||||
run: |
|
||||
mv build/fallout2-ce build/fallout2-ce-linux-arm64
|
||||
mkdir -p out/dist/fallout2-ce-linux-arm64
|
||||
cp build/fallout2-ce out/dist/fallout2-ce-linux-arm64/fallout2-ce
|
||||
cp out/dist/ce.dat out/dist/fallout2-ce-linux-arm64/ce.dat
|
||||
tar -czvf out/dist/fallout2-ce-linux-arm64.tar.gz -C out/dist fallout2-ce-linux-arm64
|
||||
|
||||
- name: Upload
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: fallout2-ce-linux-arm64
|
||||
path: build/fallout2-ce-linux-arm64
|
||||
path: out/dist/fallout2-ce-linux-arm64.tar.gz
|
||||
retention-days: 7
|
||||
|
||||
macos:
|
||||
@@ -306,7 +374,7 @@ jobs:
|
||||
- name: Upload
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: fallout2-ce-macos.dmg
|
||||
name: fallout2-ce-macos
|
||||
path: out/build/macos/Fallout II Community Edition.dmg
|
||||
retention-days: 7
|
||||
|
||||
@@ -314,6 +382,7 @@ jobs:
|
||||
name: Windows (${{ matrix.arch }})
|
||||
|
||||
runs-on: windows-2025
|
||||
needs: [ce-dat]
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
@@ -351,15 +420,25 @@ jobs:
|
||||
call "%VS_PATH%\Common7\Tools\VsDevCmd.bat" ^
|
||||
&& cmake --build --preset windows-${{ matrix.arch }}-release
|
||||
|
||||
- name: Change executable file name
|
||||
- name: Download ce.dat
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: ce-dat
|
||||
path: out/dist
|
||||
|
||||
- name: Package
|
||||
run: |
|
||||
mv out/build/windows-${{ matrix.arch }}/RelWithDebInfo/fallout2-ce.exe out/build/windows-${{ matrix.arch }}/RelWithDebInfo/fallout2-ce-${{ matrix.arch }}.exe
|
||||
mkdir -p out/dist/fallout2-ce-windows-${{ matrix.arch }}
|
||||
cp out/build/windows-${{ matrix.arch }}/RelWithDebInfo/fallout2-ce.exe out/dist/fallout2-ce-windows-${{ matrix.arch }}/fallout2-ce.exe
|
||||
cp out/dist/ce.dat out/dist/fallout2-ce-windows-${{ matrix.arch }}/ce.dat
|
||||
cd out/dist
|
||||
7z a fallout2-ce-windows-${{ matrix.arch }}.zip fallout2-ce-windows-${{ matrix.arch }}
|
||||
|
||||
- name: Upload
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: fallout2-ce-windows-${{ matrix.arch }}
|
||||
path: out/build/windows-${{ matrix.arch }}/RelWithDebInfo/fallout2-ce-${{ matrix.arch }}.exe
|
||||
path: out/dist/fallout2-ce-windows-${{ matrix.arch }}.zip
|
||||
retention-days: 7
|
||||
|
||||
|
||||
@@ -367,7 +446,8 @@ jobs:
|
||||
name: Release Continuous build
|
||||
runs-on: ubuntu-latest
|
||||
needs: [android, ios, linux, linux-armhf, linux-arm64, macos, windows]
|
||||
permissions: write-all
|
||||
permissions:
|
||||
contents: write
|
||||
steps:
|
||||
- name: Fetch artifacts
|
||||
if: ${{ always() && github.ref == 'refs/heads/main' && github.event_name == 'push' }}
|
||||
@@ -387,6 +467,7 @@ jobs:
|
||||
- name: Move unpacked artifacts to root folder
|
||||
if: ${{ always() && github.ref == 'refs/heads/main' && github.event_name == 'push' }}
|
||||
run: |
|
||||
rm -rf artifacts/ce-dat
|
||||
ls -Rlah .
|
||||
find .
|
||||
cd artifacts/
|
||||
|
||||
@@ -5,6 +5,9 @@ on:
|
||||
types:
|
||||
- closed
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
delete_pr_preview:
|
||||
name: Delete PR preview from gh-pages
|
||||
|
||||
@@ -5,15 +5,27 @@ on:
|
||||
types:
|
||||
- published
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
|
||||
jobs:
|
||||
ce-dat:
|
||||
name: Build ce.dat
|
||||
uses: ./.github/workflows/reusable-build-ce-dat.yml
|
||||
with:
|
||||
preset: linux-x64-release
|
||||
|
||||
android:
|
||||
name: Android
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
needs: [ce-dat]
|
||||
permissions:
|
||||
contents: write
|
||||
|
||||
steps:
|
||||
- name: Clone
|
||||
@@ -47,12 +59,21 @@ jobs:
|
||||
cd os/android
|
||||
./gradlew assembleRelease
|
||||
|
||||
- name: Download ce.dat
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: ce-dat
|
||||
path: out/dist
|
||||
|
||||
- name: Upload
|
||||
run: |
|
||||
cd os/android/app/build/outputs/apk/release
|
||||
cp app-release.apk fallout2-ce-android.apk
|
||||
gh release upload ${{ github.event.release.tag_name }} fallout2-ce-android.apk
|
||||
rm fallout2-ce-android.apk
|
||||
mkdir -p out/dist/fallout2-ce-android
|
||||
cp os/android/app/build/outputs/apk/release/app-release.apk out/dist/fallout2-ce-android/fallout2-ce-android.apk
|
||||
cp out/dist/ce.dat out/dist/fallout2-ce-android/ce.dat
|
||||
cd out/dist
|
||||
zip -r fallout2-ce-android.zip fallout2-ce-android
|
||||
gh release upload ${{ github.event.release.tag_name }} fallout2-ce-android.zip
|
||||
rm fallout2-ce-android.zip
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
@@ -60,6 +81,9 @@ jobs:
|
||||
name: iOS
|
||||
|
||||
runs-on: macos-14
|
||||
needs: [ce-dat]
|
||||
permissions:
|
||||
contents: write
|
||||
|
||||
steps:
|
||||
- name: Clone
|
||||
@@ -95,12 +119,21 @@ jobs:
|
||||
cd build
|
||||
cpack -C RelWithDebInfo
|
||||
|
||||
- name: Download ce.dat
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: ce-dat
|
||||
path: out/dist
|
||||
|
||||
- name: Upload
|
||||
run: |
|
||||
cd build
|
||||
cp fallout2-ce.ipa fallout2-ce-ios.ipa
|
||||
gh release upload ${{ github.event.release.tag_name }} fallout2-ce-ios.ipa
|
||||
rm fallout2-ce-ios.ipa
|
||||
mkdir -p out/dist/fallout2-ce-ios
|
||||
cp build/fallout2-ce.ipa out/dist/fallout2-ce-ios/fallout2-ce-ios.ipa
|
||||
cp out/dist/ce.dat out/dist/fallout2-ce-ios/ce.dat
|
||||
cd out/dist
|
||||
zip -r fallout2-ce-ios.zip fallout2-ce-ios
|
||||
gh release upload ${{ github.event.release.tag_name }} fallout2-ce-ios.zip
|
||||
rm fallout2-ce-ios.zip
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
@@ -108,6 +141,9 @@ jobs:
|
||||
name: Linux (${{ matrix.arch }})
|
||||
|
||||
runs-on: ubuntu-20.04
|
||||
needs: [ce-dat]
|
||||
permissions:
|
||||
contents: write
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
@@ -164,10 +200,18 @@ jobs:
|
||||
-j $(nproc) \
|
||||
# EOL
|
||||
|
||||
- name: Download ce.dat
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: ce-dat
|
||||
path: out/dist
|
||||
|
||||
- name: Upload
|
||||
run: |
|
||||
cd build
|
||||
tar -czvf fallout2-ce-linux-${{ matrix.arch }}.tar.gz fallout2-ce
|
||||
mkdir -p out/dist/fallout2-ce-linux-${{ matrix.arch }}
|
||||
cp build/fallout2-ce out/dist/fallout2-ce-linux-${{ matrix.arch }}/fallout2-ce
|
||||
cp out/dist/ce.dat out/dist/fallout2-ce-linux-${{ matrix.arch }}/ce.dat
|
||||
tar -czvf fallout2-ce-linux-${{ matrix.arch }}.tar.gz -C out/dist fallout2-ce-linux-${{ matrix.arch }}
|
||||
gh release upload ${{ github.event.release.tag_name }} fallout2-ce-linux-${{ matrix.arch }}.tar.gz
|
||||
rm fallout2-ce-linux-${{ matrix.arch }}.tar.gz
|
||||
env:
|
||||
@@ -177,6 +221,8 @@ jobs:
|
||||
name: macOS
|
||||
|
||||
runs-on: macos-11
|
||||
permissions:
|
||||
contents: write
|
||||
|
||||
steps:
|
||||
- name: Clone
|
||||
@@ -244,6 +290,9 @@ jobs:
|
||||
name: Windows (${{ matrix.arch }})
|
||||
|
||||
runs-on: windows-2025
|
||||
needs: [ce-dat]
|
||||
permissions:
|
||||
contents: write
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
@@ -281,10 +330,19 @@ jobs:
|
||||
call "%VS_PATH%\Common7\Tools\VsDevCmd.bat" ^
|
||||
&& cmake --build --preset windows-${{ matrix.arch }}-release
|
||||
|
||||
- name: Download ce.dat
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: ce-dat
|
||||
path: out/dist
|
||||
|
||||
- name: Upload
|
||||
run: |
|
||||
cd out/build/windows-${{ matrix.arch }}/RelWithDebInfo
|
||||
7z a fallout2-ce-windows-${{ matrix.arch }}.zip fallout2-ce.exe
|
||||
mkdir -p out/dist/fallout2-ce-windows-${{ matrix.arch }}
|
||||
cp out/build/windows-${{ matrix.arch }}/RelWithDebInfo/fallout2-ce.exe out/dist/fallout2-ce-windows-${{ matrix.arch }}/fallout2-ce.exe
|
||||
cp out/dist/ce.dat out/dist/fallout2-ce-windows-${{ matrix.arch }}/ce.dat
|
||||
cd out/dist
|
||||
7z a fallout2-ce-windows-${{ matrix.arch }}.zip fallout2-ce-windows-${{ matrix.arch }}
|
||||
gh release upload ${{ github.event.release.tag_name }} fallout2-ce-windows-${{ matrix.arch }}.zip
|
||||
rm fallout2-ce-windows-${{ matrix.arch }}.zip
|
||||
env:
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
name: Reusable Build ce.dat
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
preset:
|
||||
required: true
|
||||
type: string
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
|
||||
jobs:
|
||||
build-ce-dat:
|
||||
name: Build ce.dat
|
||||
runs-on: ubuntu-22.04
|
||||
|
||||
steps:
|
||||
- name: Clone
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Dependencies
|
||||
run: |
|
||||
sudo apt update
|
||||
sudo apt install libsdl2-dev zlib1g-dev
|
||||
|
||||
- name: Configure
|
||||
run: |
|
||||
cmake --preset ${{ inputs.preset }}
|
||||
|
||||
- name: Build ce-dat-tool
|
||||
run: |
|
||||
cmake --build --preset ${{ inputs.preset }} --target ce-dat-tool
|
||||
|
||||
- name: Create ce.dat
|
||||
run: |
|
||||
mkdir -p out/dist
|
||||
out/build/${{ inputs.preset }}/ce-dat-tool create files/ce.dat out/dist/ce.dat
|
||||
|
||||
- name: Upload ce.dat artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: ce-dat
|
||||
path: out/dist/ce.dat
|
||||
retention-days: 7
|
||||
Reference in New Issue
Block a user