Skip to content
90 changes: 35 additions & 55 deletions .github/workflows/release-pypi-core.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,66 +10,75 @@ jobs:
name: "Source Distribute"
if: contains(github.event.head_commit.message, 'Publish Underthesea Core')
runs-on: ubuntu-latest
container:
image: ghcr.io/undertheseanlp/underthesea/build_rust:1.0.0
env:
HOME: /root
PYTHON: python${{ matrix.python-version }}
strategy:
fail-fast: false
matrix:
python-version: ["3.10"]
steps:
- uses: actions/checkout@v1
- name: Create environment and install package dependencies
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
curl -sSL https://install.python-poetry.org | python -
- name: Add poetry to path
run: echo "${HOME}/.poetry/bin" >> $GITHUB_PATH
- name: Install package deps
working-directory: ./extensions/underthesea_core
env:
LC_ALL: en_US.UTF-8 # Known issue: https://github.com/python-poetry/poetry/issues/221#issuecomment-723652470
run: |
cargo --version
$PYTHON -m poetry --version
$PYTHON -m poetry install
$PYTHON -m poetry show
poetry install
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
- name: Build and publish
working-directory: ./extensions/underthesea_core
env:
MATURIN_PASSWORD: ${{ secrets.PYPI_UNDERTHESEA_CORE_API_TOKEN }}
run: |
$PYTHON -m poetry run maturin sdist
poetry run maturin sdist
pip install twine
twine upload ./target/wheels/* -u __token__ -p "$PYPI_TOKEN"
linux:
name: "Linux"
if: contains(github.event.head_commit.message, 'Publish Underthesea Core')
runs-on: ubuntu-latest
container:
image: ghcr.io/undertheseanlp/underthesea/build_rust:1.0.0
env:
HOME: /root
PYTHON: python${{ matrix.python-version }}
strategy:
fail-fast: false
matrix:
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
steps:
- uses: actions/checkout@v1
- name: Create environment and install package dependencies
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
curl -sSL https://install.python-poetry.org | python -
- name: Add poetry to path
run: echo "${HOME}/.poetry/bin" >> $GITHUB_PATH
- name: Install package deps
working-directory: ./extensions/underthesea_core
env:
LC_ALL: en_US.UTF-8 # Known issue: https://github.com/python-poetry/poetry/issues/221#issuecomment-723652470
run: |
cargo --version
$PYTHON -m poetry --version
$PYTHON -m poetry install
$PYTHON -m poetry show
poetry install
- name: Install latest nightly
uses: actions-rs/toolchain@v1
with:
toolchain: nightly
override: true
- name: Build and publish
working-directory: ./extensions/underthesea_core
env:
MATURIN_PASSWORD: ${{ secrets.PYPI_UNDERTHESEA_CORE_API_TOKEN }}
run: |
$PYTHON -m poetry run maturin build --release --no-sdist --strip --interpreter python${{ matrix.python-version }}
poetry run maturin build --release --no-sdist --strip --interpreter python${{ matrix.python-version }}
find ./target/wheels/
$PYTHON -m poetry run maturin publish --username __token__ --no-sdist --interpreter python${{ matrix.python-version }}
poetry run maturin publish --username __token__ --no-sdist --interpreter python${{ matrix.python-version }}
windows:
name: "Windows"
if: contains(github.event.head_commit.message, 'Publish Underthesea Core')
Expand Down Expand Up @@ -105,8 +114,8 @@ jobs:
poetry run maturin build --release --no-sdist --strip --interpreter python
dir target\wheels\
poetry run maturin publish --username __token__ --no-sdist --interpreter python
macos-x86:
name: "MacOS x86"
macos:
name: "MacOS"
if: contains(github.event.head_commit.message, 'Publish Underthesea Core')
runs-on: macos-latest
strategy:
Expand Down Expand Up @@ -141,33 +150,4 @@ jobs:
poetry run maturin build --release --no-sdist --strip --interpreter python${{ matrix.python-version }}
find ./target/wheels/
pip install target/wheels/underthesea_core*.whl
poetry run maturin publish --username __token__ --no-sdist --interpreter python${{ matrix.python-version }}
macos-arm:
name: "MacOS ARM"
if: contains(github.event.head_commit.message, 'Publish Underthesea Core')
runs-on: self-hosted
strategy:
fail-fast: false
matrix:
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Create environment and install package dependencies
working-directory: ./extensions/underthesea_core
run: |
mkdir "${PWD}/poetry"
curl -sSL https://install.python-poetry.org | POETRY_HOME=${PWD}/poetry python -
export PATH="${PWD}/poetry/bin:${PATH}"
poetry install
- name: Build and publish
working-directory: ./extensions/underthesea_core
env:
PYTHON: /Users/anhv/anaconda3/envs/python${{ matrix.python-version }}/bin/python${{ matrix.python-version }}
MATURIN_PASSWORD: ${{ secrets.PYPI_UNDERTHESEA_CORE_API_TOKEN }}
run: |
export PATH="${PWD}/poetry/bin:${PATH}"
$PYTHON --version
poetry run maturin build --release --no-sdist --strip --interpreter $PYTHON
find ./target/wheels/
poetry run maturin publish --username __token__ --no-sdist --interpreter $PYTHON
poetry run maturin publish --username __token__ --no-sdist --interpreter python${{ matrix.python-version }}
7 changes: 6 additions & 1 deletion extensions/underthesea_core/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,12 @@ edition = "2021"
readme = "README.md"
description = "Underthesea Core"

exclude = ["rust-toolchain", "target/*", "Cargo.lock", "benches/*.txt"]
exclude = [
"rust-toolchain",
"target/*",
"Cargo.lock",
"benches/*.txt"
]

[lib]
name = "underthesea_core"
Expand Down
Loading