set path in powershell #22
Workflow file for this run
This file contains 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: Build Python Wheels | |
on: | |
pull_request: | |
push: | |
branches: | |
- "master" | |
- "rc" | |
- "hotfix-rc" | |
- "SM-989-create-build-and-publish-pipelines-for-the-python-language-wrapper" # TODO: remove this | |
workflow_dispatch: | |
defaults: | |
run: | |
shell: bash | |
working-directory: languages/python | |
jobs: | |
generate_schemas: | |
uses: ./.github/workflows/generate_schemas.yml | |
setup: | |
name: Setup | |
runs-on: ubuntu-22.04 | |
outputs: | |
package_version: ${{ steps.retrieve-version.outputs.package_version }} | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
- name: Get Package Version | |
id: retrieve-version | |
run: | | |
VERSION="$(grep -o '^version = ".*"' ../../crates/bitwarden-py/Cargo.toml | grep -Eo "[0-9]+\.[0-9]+\.[0-9]+")" | |
echo "package_version=$VERSION" >> $GITHUB_OUTPUT | |
build: | |
name: Building Python wheel for - ${{ matrix.settings.os }} - ${{ matrix.settings.target }} | |
runs-on: ${{ matrix.settings.os || 'ubuntu-latest' }} | |
needs: | |
- generate_schemas | |
- setup | |
env: | |
_PACKAGE_VERSION: ${{ needs.setup.outputs.package_version }} | |
strategy: | |
fail-fast: false | |
matrix: | |
settings: | |
- os: macos-12 | |
target: x86_64-apple-darwin | |
- os: macos-12 | |
target: aarch64-apple-darwin | |
- os: windows-2022 | |
target: x86_64-pc-windows-msvc | |
- os: windows-2022 | |
target: aarch64-pc-windows-msvc | |
build: | | |
$env:Path += ";C:\Program Files (x86)\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm\x64\bin" | |
- os: ubuntu-22.04 | |
target: x86_64-unknown-linux-gnu | |
- os: ubuntu-22.04 | |
target: aarch64-unknown-linux-gnu | |
# build: | | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
- name: Setup Node | |
uses: actions/setup-node@8f152de45cc393bb48ce5d89d36b731f54556e65 # v4.0.0 | |
with: | |
node-version: 18 | |
- name: Install rust | |
uses: dtolnay/rust-toolchain@439cf607258077187679211f12aa6f19af4a0af7 # stable | |
with: | |
toolchain: stable | |
targets: ${{ matrix.settings.target }} | |
- name: Cache cargo registry | |
uses: Swatinem/rust-cache@3cf7f8cc28d1b4e7d01e3783be10a97d55d483c8 # v2.7.1 | |
with: | |
key: ${{ matrix.settings.target }}-cargo-${{ matrix.settings.os }} | |
- name: Retrieve schemas | |
uses: actions/download-artifact@9bc31d5ccc31df68ecc42ccf4149144866c47d8a # v3.0.2 | |
with: | |
name: schemas.py | |
path: ${{ github.workspace }}/languages/python/BitwardenClient/ | |
- name: Build wheels | |
uses: PyO3/maturin-action@b9e8f88fd4448fdecf5095864cdc7e39a544aa9f # v1.40.7 | |
with: | |
target: ${{ matrix.settings.target }} | |
args: --release --find-interpreter --sdist | |
sccache: 'true' | |
manylinux: auto | |
working-directory: ${{ github.workspace }}/languages/python | |
before-script-linux: | | |
export X86_64_UNKNOWN_LINUX_GNU_OPENSSL_LIB_DIR=/usr/lib/x86_64-linux-gnu | |
export AARCH64_UNKNOWN_LINUX_GNU_OPENSSL_LIB_DIR=/usr/lib/aarch64-linux-gnu | |
export OPENSSL_DIR=/usr/lib/aarch64-linux-gnu | |
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/usr/lib/aarch64-linux-gnu/pkgconfig:/usr/share/pkgconfig/:/opt/_internal/cpython-3.10.13/lib/pkgconfig/:/usr/lib64/pkgconfig/:/usr/local/lib/pkgconfig/:/usr/share/pkgconfig/" | |
- name: Upload artifact | |
uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 # v3.1.3 | |
with: | |
name: BitwardenClient-${{ env._PACKAGE_VERSION }}-${{ matrix.settings.target }} | |
path: ${{ github.workspace }}/target/wheels/BitwardenClient*.whl |