Update to Poetry 2.0.0 #297
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: | |
release: | |
types: [created, published] | |
env: | |
python_version: '3.12' | |
permissions: | |
contents: read | |
jobs: | |
test: | |
runs-on: ubuntu-22.04 | |
container: fedora:41 | |
timeout-minutes: 30 | |
permissions: | |
contents: write | |
steps: | |
- name: Harden Runner | |
uses: step-security/harden-runner@0080882f6c36860b6ba35c610c98ce87d4e2f26f # v2.10.2 | |
with: | |
egress-policy: audit | |
- name: Install Linux Dependencies | |
run: > | |
dnf install -y gcc git graphviz pkg-config python-launcher upx | |
mutter dbus-x11 gtk4 gobject-introspection-devel | |
cairo-gobject-devel gtksourceview5-devel libadwaita-devel cairo-devel | |
python${{ env.python_version }}-devel | |
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
- name: Set ownership of checkout directory | |
run: chown -R $(id -u):$(id -g) $PWD | |
- name: Use Python Dependency Cache | |
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0 | |
with: | |
path: ~/.cache/pip | |
key: python${{ env.python_version }}-${{ hashFiles('**/poetry.lock') }}-41 | |
- name: Install Poetry | |
run: | | |
python${{ env.python_version }} -m ensurepip | |
python${{ env.python_version }} -m pip install --constraint=.github/constraints.txt poetry | |
- name: Configure Poetry | |
run: poetry config virtualenvs.in-project true | |
- name: Install Python Dependencies | |
run: | | |
poetry lock --no-update | |
poetry install --no-interaction | |
- name: Install settings schemas | |
run: poetry run gaphor install-schemas | |
- name: Run Tests | |
env: | |
XDG_RUNTIME_DIR: /tmp | |
run: | | |
eval $(dbus-launch --auto-syntax) | |
mutter --wayland --no-x11 --sm-disable --headless -- poetry run pytest |