bump sqlite-loadable==0.0.6-alpha.6 #46
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" | |
on: | |
push: | |
branches: | |
- main | |
- pip-install | |
permissions: | |
contents: read | |
jobs: | |
build-ubuntu-extension: | |
name: Building ubuntu | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/cache@v3 | |
with: | |
path: | | |
~/.cargo/bin/ | |
~/.cargo/registry/index/ | |
~/.cargo/registry/cache/ | |
~/.cargo/git/db/ | |
target/ | |
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
- run: make loadable | |
- name: Upload artifacts | |
uses: actions/upload-artifact@v3 | |
with: | |
name: sqlite-regex-ubuntu | |
path: dist/debug/regex0.so | |
build-ubuntu-python: | |
runs-on: ubuntu-20.04 | |
needs: [build-ubuntu-extension] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Download workflow artifacts | |
uses: actions/download-artifact@v3 | |
with: | |
name: sqlite-regex-ubuntu | |
path: dist/debug/ | |
- uses: actions/setup-python@v3 | |
- run: pip install wheel | |
- run: make python | |
- run: make datasette | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: sqlite-regex-ubuntu-wheels | |
path: dist/debug/wheels/*.whl | |
test-ubuntu: | |
runs-on: ubuntu-20.04 | |
needs: [build-ubuntu-extension, build-ubuntu-python] | |
env: | |
DENO_DIR: deno_cache | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/download-artifact@v3 | |
with: | |
name: sqlite-regex-ubuntu | |
path: dist/debug/ | |
- uses: actions/download-artifact@v3 | |
with: | |
name: sqlite-regex-ubuntu | |
path: npm/sqlite-regex-linux-x64/lib | |
- uses: actions/download-artifact@v3 | |
with: | |
name: sqlite-regex-ubuntu-wheels | |
path: dist/debug/ | |
- run: pip install --find-links dist/debug/ sqlite_regex | |
- run: make test-loadable | |
- run: make test-python | |
# for test-npm | |
- uses: actions/setup-node@v3 | |
with: | |
cache: "npm" | |
cache-dependency-path: npm/sqlite-regex/package.json | |
- run: npm install | |
working-directory: npm/sqlite-regex | |
- run: make test-npm | |
# for test-deno | |
- uses: denoland/setup-deno@v1 | |
with: | |
deno-version: v1.30 | |
- name: Cache Deno dependencies | |
uses: actions/cache@v3 | |
with: | |
path: ${{ env.DENO_DIR }} | |
key: ${{ runner.os }}-${{ hashFiles('deno/deno.lock') }} | |
- run: make test-deno | |
env: | |
DENO_SQLITE_REGEX_PATH: ${{ github.workspace }}/dist/debug/regex0 | |
build-macos-extension: | |
name: Building macos-latest | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/cache@v3 | |
with: | |
path: | | |
~/.cargo/bin/ | |
~/.cargo/registry/index/ | |
~/.cargo/registry/cache/ | |
~/.cargo/git/db/ | |
target/ | |
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
- run: make loadable | |
- name: Upload artifacts | |
uses: actions/upload-artifact@v3 | |
with: | |
name: sqlite-regex-macos | |
path: dist/debug/regex0.dylib | |
build-macos-python: | |
runs-on: macos-latest | |
needs: [build-macos-extension] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Download workflow artifacts | |
uses: actions/download-artifact@v3 | |
with: | |
name: sqlite-regex-macos | |
path: dist/debug/ | |
- uses: actions/setup-python@v3 | |
- run: pip install wheel | |
- run: make python | |
- run: make datasette | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: sqlite-regex-macos-wheels | |
path: dist/debug/wheels/*.whl | |
test-macos: | |
runs-on: macos-latest | |
needs: [build-macos-extension, build-macos-python] | |
env: | |
DENO_DIR: deno_cache | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/download-artifact@v3 | |
with: | |
name: sqlite-regex-macos | |
path: dist/debug/ | |
- uses: actions/download-artifact@v3 | |
with: | |
name: sqlite-regex-macos | |
path: npm/sqlite-regex-darwin-x64/lib | |
- uses: actions/download-artifact@v3 | |
with: | |
name: sqlite-regex-macos-wheels | |
path: dist/debug/ | |
- run: brew install python | |
- run: /usr/local/opt/python@3/libexec/bin/pip install --find-links dist/debug/ sqlite_regex | |
- run: make test-loadable python=/usr/local/opt/python@3/libexec/bin/python | |
- run: make test-python python=/usr/local/opt/python@3/libexec/bin/python | |
# for test-npm | |
- uses: actions/setup-node@v3 | |
with: | |
cache: "npm" | |
cache-dependency-path: npm/sqlite-regex/package.json | |
- run: npm install | |
working-directory: npm/sqlite-regex | |
- run: make test-npm | |
# for test-deno | |
- uses: denoland/setup-deno@v1 | |
with: | |
deno-version: v1.30 | |
- name: Cache Deno dependencies | |
uses: actions/cache@v3 | |
with: | |
path: ${{ env.DENO_DIR }} | |
key: ${{ runner.os }}-${{ hashFiles('deno/deno.lock') }} | |
- run: make test-deno | |
env: | |
DENO_SQLITE_REGEX_PATH: ${{ github.workspace }}/dist/debug/regex0 | |
build-macos-arm-extension: | |
name: Building macos arm extension | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/cache@v3 | |
with: | |
path: | | |
~/.cargo/bin/ | |
~/.cargo/registry/index/ | |
~/.cargo/registry/cache/ | |
~/.cargo/git/db/ | |
target/ | |
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
- run: rustup target add aarch64-apple-darwin | |
- run: make loadable target=aarch64-apple-darwin | |
- name: Upload artifacts | |
uses: actions/upload-artifact@v3 | |
with: | |
name: sqlite-regex-macos-arm | |
path: dist/debug/regex0.dylib | |
build-macos-arm-python: | |
runs-on: macos-latest | |
needs: [build-macos-arm-extension] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Download workflow artifacts | |
uses: actions/download-artifact@v3 | |
with: | |
name: sqlite-regex-macos-arm | |
path: dist/debug/ | |
- uses: actions/setup-python@v3 | |
- run: pip install wheel | |
- run: make python IS_MACOS_ARM=1 | |
- run: make datasette | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: sqlite-regex-macos-arm-wheels | |
path: dist/debug/wheels/*.whl | |
build-windows-extension: | |
name: Building windows extension | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/cache@v3 | |
with: | |
path: | | |
~/.cargo/bin/ | |
~/.cargo/registry/index/ | |
~/.cargo/registry/cache/ | |
~/.cargo/git/db/ | |
target/ | |
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
- run: make loadable | |
- name: Upload artifacts | |
uses: actions/upload-artifact@v3 | |
with: | |
name: sqlite-regex-windows | |
path: dist/debug/regex0.dll | |
build-windows-python: | |
runs-on: windows-latest | |
needs: [build-windows-extension] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Download workflow artifacts | |
uses: actions/download-artifact@v3 | |
with: | |
name: sqlite-regex-windows | |
path: dist/debug/ | |
- uses: actions/setup-python@v3 | |
- run: pip install wheel | |
- run: make python | |
- run: make datasette | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: sqlite-regex-windows-wheels | |
path: dist/debug/wheels/*.whl | |
test-windows: | |
runs-on: windows-latest | |
needs: [build-windows-extension, build-windows-python] | |
env: | |
DENO_DIR: deno_cache | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/download-artifact@v3 | |
with: | |
name: sqlite-regex-windows | |
path: dist/debug/ | |
- uses: actions/download-artifact@v3 | |
with: | |
name: sqlite-regex-windows | |
path: npm/sqlite-regex-windows-x64/lib | |
- uses: actions/download-artifact@v3 | |
with: | |
name: sqlite-regex-windows-wheels | |
path: dist/debug/ | |
- run: pip install --find-links dist/debug/ sqlite_regex | |
- run: make test-loadable | |
- run: make test-python | |
# for test-npm | |
- uses: actions/setup-node@v3 | |
with: | |
cache: "npm" | |
cache-dependency-path: npm/sqlite-regex/package.json | |
- run: npm install | |
working-directory: npm/sqlite-regex | |
- run: make test-npm | |
# for test-deno | |
- uses: denoland/setup-deno@v1 | |
with: | |
deno-version: v1.30 | |
- name: Cache Deno dependencies | |
uses: actions/cache@v3 | |
with: | |
path: ${{ env.DENO_DIR }} | |
key: ${{ runner.os }}-${{ hashFiles('deno/deno.lock') }} | |
- run: make test-deno | |
env: | |
DENO_SQLITE_REGEX_PATH: ${{ github.workspace }}/dist/debug/regex0 | |
upload_test_pypi: | |
if: ${{ contains(github.event.head_commit.message, '@test_pypi') }} | |
needs: [test-ubuntu, test-macos, test-windows, build-macos-arm-python] | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/download-artifact@v3 | |
with: | |
name: sqlite-regex-windows-wheels | |
path: dist | |
- uses: actions/download-artifact@v3 | |
with: | |
name: sqlite-regex-ubuntu-wheels | |
path: dist | |
- uses: actions/download-artifact@v3 | |
with: | |
name: sqlite-regex-macos-wheels | |
path: dist | |
- uses: actions/download-artifact@v3 | |
with: | |
name: sqlite-regex-macos-arm-wheels | |
path: dist | |
- uses: pypa/gh-action-pypi-publish@release/v1 | |
with: | |
password: ${{ secrets.TEST_PYPI_API_TOKEN }} | |
repository_url: https://test.pypi.org/legacy/ | |
skip_existing: true |