Skip to content

Build-All-Platforms

Build-All-Platforms #7

name: Build-All-Platforms
on:
workflow_dispatch:
jobs:
create_release:
runs-on: ubuntu-latest
outputs:
upload_url: ${{ steps.create_release.outputs.upload_url }}
version: ${{ steps.get_version.outputs.version }}
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: "3.12.4"
- name: Extract version
id: get_version
run: echo "version=$(python -c 'import src.version; print(src.version.__version__)')" >> $GITHUB_ENV
- name: Print version
id: print_version
run: echo ${{ steps.get_version.outputs.version }}
- name: Create Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.TAS }}
with:
tag_name: TAS_${{ env.version }}
release_name: TAS_${{ env.version }}
draft: true
build_full_windows:
needs: create_release
runs-on: windows-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: "3.12.4"
- name: Run full build script
run: python build.py
- name: Compress full directory
run: |
cd ${{ github.workspace }}/dist-full/main/
7z a -t7z -m0=lzma2 -mx=9 -ms=1536m -md=273m ../../TAS_${{ needs.create_release.outputs.version }}_Full_Windows.7z *
- name: Upload Release Asset
id: upload-release-asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.TAS }}
with:
upload_url: ${{ needs.create_release.outputs.upload_url }}
asset_path: TAS_${{ needs.create_release.outputs.version }}_Full_Windows.7z
asset_name: TAS_${{ needs.create_release.outputs.version }}_Full_Windows.7z
asset_content_type: application/x-7z-compressed
build_full_linux:
needs: create_release
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: "3.12.4"
- name: Free Disk Space
uses: jlumbroso/free-disk-space@main
with:
tool-cache: false
android: true
dotnet: true
haskell: true
large-packages: true
docker-images: true
swap-storage: true
- name: Run full build script
run: python build-linux.py
- name: Compress full directory
run: |
cd ${{ github.workspace }}/dist/main/
7z a -t7z -m0=lzma2 -mx=9 -ms=1536m -md=273m ../../TAS_${{ needs.create_release.outputs.version }}_Full_Linux.7z *
- name: Upload Release Asset
id: upload-release-asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.TAS }}
with:
upload_url: ${{ needs.create_release.outputs.upload_url }}
asset_path: TAS_${{ needs.create_release.outputs.version }}_Full_Linux.7z
asset_name: TAS_${{ needs.create_release.outputs.version }}_Full_Linux.7z
asset_content_type: application/x-7z-compressed
build_lite_windows:
needs: create_release
runs-on: windows-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: "3.12.4"
- name: Run lite build script
run: python build-lite.py
- name: Compress lite directory
run: |
cd ${{ github.workspace }}/dist-lite/main/
7z a -t7z -m0=lzma2 -mx=9 -ms=1536m -md=273m ../../TAS_${{ needs.create_release.outputs.version }}_Lite_Windows.7z *
- name: Upload Release Asset
id: upload-release-asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.TAS }}
with:
upload_url: ${{ needs.create_release.outputs.upload_url }}
asset_path: TAS_${{ needs.create_release.outputs.version }}_Lite_Windows.7z
asset_name: TAS_${{ needs.create_release.outputs.version }}_Lite_Windows.7z
asset_content_type: application/x-7z-compressed
build_lite_linux:
needs: create_release
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: "3.12.4"
#- name: Free Disk Space
# uses: jlumbroso/free-disk-space@main
# with:
# tool-cache: false
# android: true
# dotnet: true
# haskell: true
# large-packages: true
# docker-images: true
# swap-storage: true
- name: Run lite build script
run: python build-linux-lite.py
- name: Compress lite directory
run: |
cd ${{ github.workspace }}/dist-lite/main/
7z a -t7z -m0=lzma2 -mx=9 -ms=1536m -md=273m ../../TAS_${{ needs.create_release.outputs.version }}_Lite_Linux.7z *
- name: Upload Release Asset
id: upload-release-asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.TAS }}
with:
upload_url: ${{ needs.create_release.outputs.upload_url }}
asset_path: TAS_${{ needs.create_release.outputs.version }}_Lite_Linux.7z
asset_name: TAS_${{ needs.create_release.outputs.version }}_Lite_Linux.7z
asset_content_type: application/x-7z-compressed