Skip to content

Commit

Permalink
Build workflow for Github CI/CD
Browse files Browse the repository at this point in the history
Not certain if this will work properly or not.
  • Loading branch information
voylin committed Aug 8, 2024
1 parent 572cba4 commit 1b32186
Show file tree
Hide file tree
Showing 5 changed files with 115 additions and 364 deletions.
94 changes: 0 additions & 94 deletions .github/actions/build/action.yml

This file was deleted.

160 changes: 0 additions & 160 deletions .github/actions/sign/action.yml

This file was deleted.

108 changes: 108 additions & 0 deletions .github/workflows/build_gdextension.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
name: Build GDE GoZen
run-name: ${{ github.actor }} is building the GoZen GDExtension!
on: [workflow_dispatch]
jobs:
linux-build:
runs-on: ubuntu-latest
steps:
- name: Checkout submodules
uses: actions/checkout@v4
with:
submodules: recursive
- name: Setup Python
uses: actions/setup-python@v5
- name: Install FFmpeg
run: |
sudo add-apt-repository ppa:ubuntuhandbook1/ffmpeg6
sudo apt-get update
sudo apt-get install ffmpeg
- name: Install FFmpeg devs
run: |
sudo apt-get install libswscale-dev
sudo apt-get install libswresample-dev
sudo apt-get install libavutil-dev
sudo apt-get install libavformat-dev
sudo apt-get install libavfilter-dev
sudo apt-get install libavdevice-dev
sudo apt-get install libavcodec-dev
- name: Check FFmpeg Version
run: ffmpeg -version
- name: Add FFmpeg libs
run: echo "FFMPEG_INCLUDES=/usr/include/x86_64-linux-gnu" >> $GITHUB_ENV
- name: Setup SCons
run: pip install scons
- name: Build Linux Debug
run: scons -Q -j4 target=template_debug platform=linux arch=x86_64 use_system=yes
- name: Uploading GDExtension artifact
uses: actions/upload-artifact@v4
with:
name: gdextension-linux-debug
path: bin/linux_video_only/template_debug/*
- name: Build Linux Release
run: scons -Q -j4 target=template_release platform=linux arch=x86_64 use_system=yes
# TODO: Need to probably clean out the debug executable before uploading release artifacts
- name: Uploading GDExtension artifact
uses: actions/upload-artifact@v4
with:
name: gdextension-linux-release
path: bin/linux_video_only/template_release/*
linux-build-full:
runs-on: ubuntu-latest
steps:
- name: Checkout submodules
uses: actions/checkout@v4
with:
submodules: recursive
- name: Get folder dir
run: pwd
- name: Setup Python
uses: actions/setup-python@v5
- name: Setup SCons
run: pip install scons
- name: Install Yasm
run: sudo apt-get update && sudo apt-get install -y yasm
- name: Build Linux full Debug
run: scons -Q -j4 target=template_debug platform=linux arch=x86_64 use_system=no enable_gpl=yes
- name: Uploading GDExtension artifact
uses: actions/upload-artifact@v4
with:
name: gdextension-linux-full-build
path: bin/linux_video_only_full/template_debug/*
- name: Build Linux full Release
run: scons -Q -j4 target=template_release platform=linux arch=x86_64 use_system=no enable_gpl=yes
# TODO: Need to probably clean out the debug executable before uploading release artifacts
- name: Uploading GDExtension artifact
uses: actions/upload-artifact@v4
with:
name: gdextension-linux-full-release
path: bin/linux_video_only_full/template_release/*
windows-build:
runs-on: ubuntu-latest
steps:
- name: Install MSYS2
run: sudo apt-get update && sudo apt-get install gcc-mingw-w64
- name: Checkout submodules
uses: actions/checkout@v4
with:
submodules: recursive
- name: Setup Python
uses: actions/setup-python@v5
- name: Setup SCons
run: pip install scons
- name: Install Yasm
run: sudo apt-get update && sudo apt-get install -y yasm
- name: Build Linux Debug
run: scons -Q -j4 target=template_debug platform=linux arch=x86_64 use_system=no enable_gpl=yes
- name: Uploading GDExtension artifact
uses: actions/upload-artifact@v4
with:
name: gdextension-windows-build
path: bin/windows/template_debug/*
- name: Build Linux Release
run: scons -Q -j4 target=template_release platform=linux arch=x86_64 use_system=no enable_gpl=yes
# TODO: Need to probably clean out the debug executable before uploading release artifacts
- name: Uploading GDExtension artifact
uses: actions/upload-artifact@v4
with:
name: gdextension-windows-release
path: bin/windows/template_release/*
Loading

0 comments on commit 1b32186

Please sign in to comment.