fix pip install #42
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: Build Executables | |
on: | |
workflow_dispatch: | |
inputs: | |
debug_enabled: | |
type: boolean | |
description: 'Run the build with tmate debugging enabled (https://github.com/marketplace/actions/debugging-with-tmate)' | |
required: false | |
default: false | |
push: | |
branches: [2024-data-collection-updates] | |
pull_request: | |
branches: [2024-data-collection-updates] | |
jobs: | |
build-windows: | |
runs-on: windows-latest | |
steps: | |
- name: Setup tmate session | |
uses: mxschmitt/action-tmate@v3 | |
with: | |
detached: true | |
# if: ${{ github.event_name == 'workflow_dispatch' && inputs.debug_enabled }} | |
- uses: conda-incubator/setup-miniconda@v3 | |
with: | |
auto-update-conda: true | |
activate-environment: kivy20 | |
python-version: "3.10" | |
channels: conda-forge | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive # Initializes and updates submodules | |
- name: create env | |
shell: bash -l {0} | |
run: conda install -y kivy=2.3 pyinstaller=4.10 requests glfw | |
- name: pip installs | |
shell: bash -l {0} | |
run: pip install kivy-deps.sdl2 kivy-deps.glew pyo | |
- name: install smile | |
shell: bash -l {0} | |
run: pip install -e smile | |
- name: create files | |
shell: bash -l {0} | |
run: echo $SI > serverinfo.txt && echo $ULCRT > cert.pem | |
- name: package cogmood | |
shell: bash -l {0} | |
run: | | |
cd package | |
export KIVY_GL_BACKEND=angle_sdl2 | |
python -m PyInstaller cogmood_windows.spec | |
- name: save exe | |
uses: actions/upload-artifact@v3 | |
with: | |
name: SUPREME | |
path: package/dist/SUPREME.exe | |
# - name: Set up Python | |
# uses: actions/setup-python@v5 | |
# with: | |
# python-version: "3.10" # Specify your Python version | |
# cache: 'pip' # caching pip dependencies | |
# | |
# - name: Install dependencies | |
# run: | | |
# python -m pip install --upgrade pip | |
# pip install -r requirements.txt | |
# | |
# - name: Set up Mesa3D OpenGL DLL | |
# run: | | |
# curl -L -o mesa3d-22.1.5-release-mingw.7z https://github.com/pal1000/mesa-dist-win/releases/download/22.1.5/mesa3d-22.1.5-release-mingw.7z | |
# 7z x mesa3d-22.1.5-release-mingw.7z -o$HOME/mesa3d | |
# | |
# - name: Add Mesa3D to Path | |
# run: | | |
# export PATH=$HOME/mesa3d/x86/:$PATH | |
# | |
# - name: Build executable with PyInstaller | |
# run: | | |
# cd package | |
# pyinstaller --noconfirm --upx-dir upx/windows_upx.exe cogmood_windows.spec | |
# | |
# - name: Upload Windows executable | |
# uses: actions/upload-artifact@v4 | |
# with: | |
# name: SUPREME | |
# path: dist/SUPREME.exe # Path to your Windows executable | |
build-macos: | |
runs-on: macos-14 | |
steps: | |
- name: Setup tmate session | |
uses: mxschmitt/action-tmate@v3 | |
with: | |
detached: true | |
# if: ${{ github.event_name == 'workflow_dispatch' && inputs.debug_enabled }} | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive # Initializes and updates submodules | |
- name: Install Homebrew dependencies | |
run: | | |
brew update | |
brew install sdl2 sdl2_image sdl2_mixer sdl2_ttf | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: "3.10" # Specify your Python version | |
- name: Check if Python is a fat binary | |
run: | | |
if lipo -info $(which python3) | grep -q "Architectures in the fat file"; then | |
lipo -info $(which python3) | |
echo "Python is a fat binary." | |
export PATH=/Users/runner/hostedtoolcache/Python/3.10.11/arm64/bin:$PATH | |
else | |
echo "Python is NOT a fat binary." | |
exit 1 # Optional: Exit with error if you require a fat binary | |
fi | |
- name: Install dependencies | |
run: | | |
export PATH=/Users/runner/hostedtoolcache/Python/3.10.11/arm64/bin:$PATH | |
mkdir python_packages | |
python3 -m pip install --upgrade pip | |
python3 -m pip install --target $PWD/python_packages --only-binary=:all: --platform macosx_10_13_universal2 -r requirements.txt | |
export PYTHON_PATH=$PWD/python_packages:$PYTHONPATH | |
- name: Build executable with PyInstaller | |
run: | | |
export PATH=/Users/runner/hostedtoolcache/Python/3.10.11/arm64/bin:$PATH | |
export PYTHON_PATH=$PWD/python_packages:$PYTHONPATH | |
cd package | |
python3 -m PyInstaller --noconfirm cogmood_mac.spec | |
- name: Upload macOS executable | |
uses: actions/upload-artifact@v4 | |
with: | |
name: SUPREME | |
path: package/dist/SUPREME |