Skip to content

Don't build simplexlib as a static library #120

Don't build simplexlib as a static library

Don't build simplexlib as a static library #120

Workflow file for this run

name: build
on:
push:
branches: [ master ]
tags:
- v*
pull_request:
branches: [ master ]
# matrix:
# maya: [2024]
# os: [macos-latest, ubuntu-latest, windows-latest]
# include:
# - maya: 2024
# update: 2
jobs:
compile_plugin:
strategy:
matrix:
maya: [2022, 2023, 2024, 2025]
os: [macos-13, macos-latest, ubuntu-latest, windows-latest]
include:
# Add the maya update versions here
- maya: 2022
update: 5
- maya: 2023
update: 3
- maya: 2024
update: 2
- maya: 2025
update: 1
# cross-compiling is annoying so just fall back to macos-13
exclude:
- os: macos-latest
maya: 2022
- os: macos-latest
maya: 2023
- os: macos-13
maya: 2024
- os: macos-13
maya: 2025
fail-fast: false
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- run: git fetch --force --tags origin
- name: Get Maya Devkit
id: get-devkit
uses: blurstudio/mayaModuleActions/getMayaDevkit@v1
with:
maya: ${{ matrix.maya }}
update: ${{ matrix.update }}
- name: Build Maya
uses: blurstudio/mayaModuleActions/mesonBuild@v1
with:
setup-args: >
-Dmaya:maya_version=${{ matrix.maya }}
-Dmaya:maya_devkit_base=${{ steps.get-devkit.outputs.devkit-path }}
-Dmaya_build=true
-Dpython_build=false
--buildtype release
--backend ninja
install-args: --skip-subprojects
- name: Upload Artifacts
uses: actions/upload-artifact@v4
with:
name: ${{ runner.os }}-${{ matrix.maya }}-plugin
path: output_Maya${{ matrix.maya }}/*.${{ steps.get-devkit.outputs.plugin-ext }}
if-no-files-found: error
compile_python:
strategy:
matrix:
# Sorry x86 MacOS, The switch to ARM is maiking this too complicated
# Maya modules don't detect the architecture of the OS, so I've gotta pick
os: [macos-latest, ubuntu-latest, windows-latest]
fail-fast: false
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- run: git fetch --force --tags origin
- name: Get pyver macos-latest
if: ${{ matrix.os == 'macos-latest' }}
shell: bash
run: echo "PY_VER=3.9" >> $GITHUB_ENV
- name: Get pyver
if: ${{ matrix.os != 'macos-latest' }}
shell: bash
run: echo "PY_VER=3.7" >> $GITHUB_ENV
- name: Get an older python version
uses: actions/setup-python@v5
with:
python-version: ${{ env.PY_VER }}
- name: Build Python
uses: blurstudio/mayaModuleActions/mesonBuild@v1
with:
setup-args: >
-Dmaya_build=false
-Dpython_build=true
--buildtype release
--backend ninja
install-args: --skip-subprojects
- name: Upload Artifacts
uses: actions/upload-artifact@v4
with:
name: ${{ runner.os }}-pyModule
path: output_Python/*.*
if-no-files-found: error
upload_release:
name: Upload release
needs: [compile_plugin, compile_python]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: git fetch --force --tags origin
- name: 'Get Previous tag'
id: previoustag
uses: "WyriHaximus/github-action-get-previous-tag@v1"
with:
fallback: 0.0.1
- name: Package
uses: blurstudio/mayaModuleActions/packageMayaModule@v1
with:
module-name: simplex
folder-list: scripts icons
version: ${{ steps.previoustag.outputs.tag }}
python-limited-api: true
- name: Upload distribution
if: ${{ startsWith(github.ref, 'refs/tags/v') }}
uses: softprops/action-gh-release@v1
with:
token: "${{ secrets.GITHUB_TOKEN }}"
prerelease: false
files: |
*.zip
- name: Publish To PyPI
if: ${{ startsWith(github.ref, 'refs/tags/v') }}
env:
TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }}
TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
run: |
python3 -m pip install -U pip
python3 -m pip install -U twine
python3 -m twine upload --verbose *.whl