Skip to content

packaging: Use Poetry support for PEP 621 #249

packaging: Use Poetry support for PEP 621

packaging: Use Poetry support for PEP 621 #249

Workflow file for this run

name: Test tap-betterstack
on:
push:
branches: [main]
paths:
- tap_betterstack/**
- tests/**
- noxfile.py
- poetry.lock
- pyproject.toml
- .github/workflows/test.yml
- .github/workflows/constraints.txt
pull_request:
types: [opened, synchronize, reopened]
paths:
- tap_betterstack/**
- tests/**
- noxfile.py
- poetry.lock
- pyproject.toml
- .github/workflows/test.yml
- .github/workflows/constraints.txt
workflow_dispatch:
schedule:
# Run weekly on Monday at 12:00 PM UTC
- cron: "0 12 * * 1"
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
env:
FORCE_COLOR: "1"
jobs:
test:
runs-on: ubuntu-latest
env:
NOXFORCEPYTHON: ${{ matrix.python-version }}
NOXSESSION: tests
PIP_CONSTRAINT: ${{ github.workspace }}/.github/workflows/constraints.txt
PYO3_USE_ABI3_FORWARD_COMPATIBILITY: "1"
strategy:
fail-fast: false
max-parallel: 2
matrix:
python-version:
- "3.9"
- "3.10"
- "3.11"
- "3.12"
- "3.13"
- "3.14"
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
allow-prereleases: true
cache: pip
cache-dependency-path: poetry.lock
- name: Upgrade pip
run: |
pip install pip
pip --version
- name: Install Poetry
run: |
pipx install poetry
pipx inject poetry poetry-plugin-export
poetry --version
poetry self show plugins
- name: Install Nox
run: |
pipx install nox
pipx inject nox nox-poetry
nox --version
- name: Run tests
env:
TAP_BETTERSTACK_TOKEN: ${{ secrets.TAP_BETTERSTACK_TOKEN }}
TAP_BETTERSTACK_START_DATE: ${{ secrets.TAP_BETTERSTACK_START_DATE }}
run: |
nox --verbose
typing:
runs-on: ubuntu-latest
env:
NOXSESSION: mypy
PIP_CONSTRAINT: ${{ github.workspace }}/.github/workflows/constraints.txt
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
id: setup-python
with:
cache: pip
cache-dependency-path: poetry.lock
- name: Upgrade pip
run: |
pip install pip
pip --version
- name: Install Poetry
run: |
pipx install poetry --python ${{ steps.setup-python.outputs.python-path }}
pipx inject poetry poetry-plugin-export
poetry --version
poetry self show plugins
- name: Install Nox
run: |
pipx install nox --python ${{ steps.setup-python.outputs.python-path }}
pipx inject nox nox-poetry
nox --version
- name: Run typing checks
run: |
nox --verbose