Python 3.4+: use os.set_inheritable + os.set_blocking in place of unreadable fcntl calls #2
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: illumos | |
on: | |
push: | |
branches: | |
- master | |
paths: | |
- '*.py' | |
- 'tox.ini' | |
- '.github/workflows/illumos.yml' | |
pull_request: | |
branches: | |
- master | |
workflow_dispatch: | |
# allow manual trigger | |
permissions: | |
# BOLD WARNING: do not add permissions, this workflow executes remote code | |
contents: read | |
env: | |
FORCE_COLOR: 1 | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
omnios: | |
name: illumos | |
timeout-minutes: 20 | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: true | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: vmactions/omnios-vm@v1 | |
with: | |
# need gcc: compile greenlet from source | |
# autoconf must pretend inotify unavail: libev FTBFS | |
# /tmp/.nginx must exist because nginx will not create configured tmp | |
# build-essential shall point to suitable gcc13/gcc14/.. | |
# TODO: replace python-MN with version-agnostic alias | |
prepare: | | |
pkg install pip-312 python-312 sqlite-3 nginx build-essential | |
usesh: true | |
copyback: false | |
run: | | |
cat /etc/release \ | |
&& uname -a \ | |
&& python3 --version \ | |
&& openssl version \ | |
&& pkg info nginx \ | |
&& gcc -dM -E - </dev/null \ | |
&& ac_cv_header_sys_inotify_h=no ac_cv_func_inotify_init=no python3 -m pip install gevent \ | |
&& mkdir -p /tmp/.nginx \ | |
&& python3 -m pip install tox \ | |
&& python3 -m tox --version \ | |
&& python3 -m tox -e run-module \ | |
&& python3 -m tox -e run-entrypoint \ | |
&& python3 -m tox -e py |