ci: pass MSYS2_ARG_CONV_EXCL inline with make command #62
Workflow file for this run
This file contains hidden or 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: Release | |
| on: | |
| push: | |
| tags: ['v*'] | |
| jobs: | |
| build-linux: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install dependencies | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y libx11-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev libxxf86vm-dev libgl-dev | |
| - name: Fetch deps | |
| run: make deps | |
| - name: Build | |
| run: make release -j$(nproc) | |
| - name: Build extensions | |
| run: make ext | |
| - name: Package | |
| run: | | |
| mkdir -p dist/rayforce-ui | |
| cp rayforce-ui CHANGELOG.md dist/rayforce-ui/ | |
| cp -r examples ext dist/rayforce-ui/ | |
| cd dist && tar czf rayforce-ui-linux-x64.tar.gz rayforce-ui | |
| - name: Upload artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: rayforce-ui-linux-x64 | |
| path: dist/rayforce-ui-linux-x64.tar.gz | |
| build-windows: | |
| runs-on: windows-latest | |
| defaults: | |
| run: | |
| shell: msys2 {0} | |
| steps: | |
| - uses: msys2/setup-msys2@v2 | |
| with: | |
| msystem: CLANG64 | |
| update: true | |
| install: >- | |
| mingw-w64-clang-x86_64-clang | |
| mingw-w64-clang-x86_64-lld | |
| mingw-w64-clang-x86_64-llvm | |
| make | |
| git | |
| zip | |
| vim | |
| - uses: actions/checkout@v4 | |
| - name: Fetch deps | |
| run: make deps | |
| - name: Build main | |
| run: | | |
| make -C deps/rayforce lib | |
| make rayforce-ui.exe -j$(nproc) | |
| env: | |
| RAYFORCE_MAKE_TARGET: lib | |
| - name: Build extensions | |
| run: MSYS2_ARG_CONV_EXCL='/DEF:' make ext | |
| - name: Package | |
| run: | | |
| mkdir -p dist/rayforce-ui | |
| cp rayforce-ui.exe CHANGELOG.md dist/rayforce-ui/ | |
| cp -r examples ext dist/rayforce-ui/ | |
| cd dist && zip -r rayforce-ui-windows-x64.zip rayforce-ui | |
| - name: Upload artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: rayforce-ui-windows-x64 | |
| path: dist/rayforce-ui-windows-x64.zip | |
| build-macos: | |
| runs-on: macos-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Fetch deps | |
| run: make deps | |
| - name: Build | |
| run: make release -j$(sysctl -n hw.ncpu) | |
| - name: Build extensions | |
| run: make ext | |
| - name: Package | |
| run: | | |
| mkdir -p dist/rayforce-ui | |
| cp rayforce-ui CHANGELOG.md dist/rayforce-ui/ | |
| cp -r examples ext dist/rayforce-ui/ | |
| cd dist && tar czf rayforce-ui-macos-arm64.tar.gz rayforce-ui | |
| - name: Upload artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: rayforce-ui-macos-arm64 | |
| path: dist/rayforce-ui-macos-arm64.tar.gz | |
| release: | |
| needs: [build-linux, build-windows, build-macos] | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: write | |
| steps: | |
| - name: Download artifacts | |
| uses: actions/download-artifact@v4 | |
| - name: Create release | |
| uses: softprops/action-gh-release@v2 | |
| with: | |
| files: | | |
| rayforce-ui-linux-x64/rayforce-ui-linux-x64.tar.gz | |
| rayforce-ui-windows-x64/rayforce-ui-windows-x64.zip | |
| rayforce-ui-macos-arm64/rayforce-ui-macos-arm64.tar.gz | |
| deploy-docs: | |
| needs: [build-linux, build-windows, build-macos] | |
| runs-on: ubuntu-latest | |
| permissions: | |
| pages: write | |
| id-token: write | |
| environment: | |
| name: github-pages | |
| url: ${{ steps.deploy.outputs.page_url }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Download artifacts | |
| uses: actions/download-artifact@v4 | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.x' | |
| - name: Install mkdocs-material | |
| run: pip install mkdocs-material | |
| - name: Build site | |
| run: mkdocs build -f docs/mkdocs.yml | |
| - name: Copy downloads | |
| run: | | |
| mkdir -p docs/site/downloads | |
| cp rayforce-ui-linux-x64/rayforce-ui-linux-x64.tar.gz docs/site/downloads/ | |
| cp rayforce-ui-windows-x64/rayforce-ui-windows-x64.zip docs/site/downloads/ | |
| cp rayforce-ui-macos-arm64/rayforce-ui-macos-arm64.tar.gz docs/site/downloads/ | |
| - uses: actions/upload-pages-artifact@v3 | |
| with: | |
| path: docs/site | |
| - name: Deploy to GitHub Pages | |
| id: deploy | |
| uses: actions/deploy-pages@v4 |