Skip to content

Commit

Permalink
Add CI
Browse files Browse the repository at this point in the history
  • Loading branch information
ueshita committed Aug 11, 2024
1 parent 5c01cde commit c06c9a9
Show file tree
Hide file tree
Showing 3 changed files with 176 additions and 2 deletions.
153 changes: 153 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,153 @@
on:
push:
branches:
- main
- ci_test
paths:
- '.github/**'
- 'src/**'
- 'SConstruct'
- 'build.py'
jobs:
# android:
# name: Build for Android
# runs-on: ubuntu-20.04
# steps:
# - uses: actions/checkout@v3
# - name: Update Submodules
# run: git submodule update --init --recursive
# - name: Build binaries
# run: |
# sudo apt-get install scons
# python3 get_adx2le_sdk.py
# python3 build.py platform=android
# - name: Upload binaries
# uses: actions/upload-artifact@v3
# with:
# name: bin_android
# path: ./godot-proj/addons/adxle/bin

macos:
name: Build for macOS
runs-on: macOS-latest
steps:
- uses: actions/checkout@v3
- name: Update Submodules
run: git submodule update --init --recursive
- name: Build binaries
run: |
brew install scons
python3 get_adx2le_sdk.py
python3 build.py platform=macos
- name: Upload binaries
uses: actions/upload-artifact@v3
with:
name: bin_macos
path: ./godot-proj/addons/adxle/bin

# ios:
# name: Build for iOS
# runs-on: macOS-latest
# steps:
# - uses: actions/checkout@v3
# - name: Update Submodules
# run: git submodule update --init --recursive
# - name: Build binaries
# run: |
# brew install scons
# python3 get_adx2le_sdk.py
# python3 build.py platform=ios
# - name: Upload binaries
# uses: actions/upload-artifact@v3
# with:
# name: bin_ios
# path: ./godot-proj/addons/adxle/bin

windows:
name: Build for Windows
runs-on: windows-latest
steps:
- uses: actions/checkout@v3
- name: Update Submodules
run: git submodule update --init --recursive
- name: Build binaries
run: |
python -m pip install scons
python get_adx2le_sdk.py
python build.py platform=windows
shell: cmd
- name: Upload binaries
uses: actions/upload-artifact@v3
with:
name: bin_windows
path: ./godot-proj/addons/adxle/bin

# web:
# name: Build for Web
# runs-on: ubuntu-20.04
# steps:
# - uses: actions/checkout@v3
# - name: Update Submodules
# run: git submodule update --init --recursive
# - name: Setup emsdk
# uses: mymindstorm/setup-emsdk@v12
# with:
# version: 3.1.18
# actions-cache-folder: './emsdk'
# - name: Build binaries
# run: |
# sudo apt-get install scons
# python3 get_adx2le_sdk.py
# python3 build.py platform=web
# - name: Upload binaries
# uses: actions/upload-artifact@v3
# with:
# name: bin_web
# path: ./godot-proj/addons/adxle/bin

merge:
name: Merge
runs-on: ubuntu-20.04
needs: [linux, android, macos, ios, windows, web]
steps:
- uses: actions/checkout@v3

# - name: Download Android binaries
# uses: actions/download-artifact@v1
# with:
# name: bin_android

- name: Download macOS binaries
uses: actions/download-artifact@v1
with:
name: bin_macos

# - name: Download iOS binaries
# uses: actions/download-artifact@v1
# with:
# name: bin_ios

# - name: Download Windows binaries
# uses: actions/download-artifact@v1
# with:
# name: bin_windows

# - name: Download web binaries
# uses: actions/download-artifact@v1
# with:
# name: bin_web

- name: Copy binaries
run: |
mkdir ./godot-proj/addons/adxle/bin
cp -r bin_android/android ./godot-proj/addons/adxle/bin/
cp -r bin_macos/macos ./godot-proj/addons/adxle/bin/
cp -r bin_ios/ios ./godot-proj/addons/adxle/bin/
cp -r bin_windows/windows ./godot-proj/addons/adxle/bin/
cp -r bin_web/web ./godot-proj/addons/adxle/bin/
- name: Upload built package
uses: actions/upload-artifact@v3
with:
name: addons
path: ./godot-proj/addons
2 changes: 0 additions & 2 deletions build.py
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,6 @@ def import_generate_bindings():

elif "platform=macos" in sys.argv:
os.makedirs("godot-proj/addons/adxle/bin/macos", exist_ok=True)
# shutil.copytree("cri/macosx/libs", "godot-proj/addons/adxle/bin/macos", dirs_exist_ok=True)

subprocess.run("scons platform=macos bits=64 target=release" + job_opt, shell = True)

Expand All @@ -59,7 +58,6 @@ def import_generate_bindings():

elif "platform=ios" in sys.argv:
os.makedirs("godot-proj/addons/adxle/bin/ios", exist_ok=True)
# shutil.copytree("cri/ios/libs", "godot-proj/addons/adxle/bin/ios", dirs_exist_ok=True)

subprocess.run("scons platform=ios ios_arch=arm64 target=release" + job_opt, shell = True)
subprocess.run("scons platform=ios ios_arch=x86_64 target=release" + job_opt, shell = True)
Expand Down
23 changes: 23 additions & 0 deletions get_adx2le_sdk.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
import os
import shutil
import urllib.request


def main():
sdk_package_url = "https://game.criware.jp/download/9039/?tmstv=1720058898"
print(f"SDK package URL: {sdk_package_url}")

local_package_name = "sdk.zip"
_, message = urllib.request.urlretrieve(sdk_package_url, local_package_name)
print(message)

if os.path.exists(local_package_name):
shutil.unpack_archive(local_package_name, extract_dir="./")
os.remove(local_package_name)
print("SDK package installation succeeded.")
else:
print("SDK package installation failed.")


if __name__ == "__main__":
main()

0 comments on commit c06c9a9

Please sign in to comment.