name: ci-bonsai # Differences from ci-bonsai-daily.yml: # - make has IS_STABLE=TRUE # - action is never triggered and executed only manually # - doesn't add a current date to the release and tag on: workflow_dispatch: jobs: activate: runs-on: ubuntu-latest if: | github.repository == 'IfcOpenShell/IfcOpenShell' steps: - name: Set env run: echo ok go build: needs: activate name: ${{ matrix.config.name }}-${{ matrix.pyver }} runs-on: ubuntu-latest strategy: fail-fast: false matrix: pyver: [py311, py312] config: - { name: "Windows Build", short_name: win, } - { name: "Linux Build", short_name: linux, } - { name: "MacOS Build", short_name: macos, } - { name: "MacOS ARM Build", short_name: macosm1, } steps: - uses: actions/checkout@v5 - uses: actions/setup-python@v2 # https://github.com/actions/setup-python with: architecture: 'x64' # optional x64 or x86. Defaults to x64 if not specified python-version: '3.11' - name: Get current version id: version run: echo "version=$(cat VERSION)" >> $GITHUB_OUTPUT - name: Compile run: | cd src/bonsai && make dist PLATFORM=${{ matrix.config.short_name }} PYVERSION=${{ matrix.pyver }} IS_STABLE=TRUE - name: Find zip file name id: find_zip run: | filepath=$(ls src/bonsai/dist/bonsai_*.zip) echo "filepath=$filepath" >> $GITHUB_OUTPUT echo "filename=$(basename $filepath)" >> $GITHUB_OUTPUT - name: Upload zip file to release uses: svenstaro/upload-release-action@v2 with: repo_token: ${{ secrets.GITHUB_TOKEN }} file: ${{ steps.find_zip.outputs.filepath }} asset_name: ${{ steps.find_zip.outputs.filename }} release_name: "bonsai-${{steps.version.outputs.version}}" tag: "bonsai-${{steps.version.outputs.version}}" overwrite: true