From 63f0aa549e050f38e7981f264278232d0f40a38d Mon Sep 17 00:00:00 2001 From: Daniele Varrazzo Date: Mon, 3 Jan 2022 16:37:37 +0100 Subject: [PATCH] Separate pool packages building into a different workflow Psycopg and pool releases are separate. --- .github/workflows/packages-pool.yml | 66 +++++++++++++++++++++++++++++ .github/workflows/packages.yml | 10 +---- 2 files changed, 67 insertions(+), 9 deletions(-) create mode 100644 .github/workflows/packages-pool.yml diff --git a/.github/workflows/packages-pool.yml b/.github/workflows/packages-pool.yml new file mode 100644 index 000000000..be9cc26a9 --- /dev/null +++ b/.github/workflows/packages-pool.yml @@ -0,0 +1,66 @@ +name: Build pool packages + +on: + workflow_dispatch: + schedule: + - cron: '28 6 * * sun' + +jobs: + + sdist: + runs-on: ubuntu-20.04 + + strategy: + fail-fast: false + matrix: + include: + - {package: psycopg_pool, format: sdist, impl: python} + - {package: psycopg_pool, format: wheel, impl: python} + + steps: + - uses: actions/checkout@v2 + + - uses: actions/setup-python@v2 + with: + python-version: 3.9 + + - name: Create the sdist packages + run: |- + python ${{ matrix.package }}/setup.py sdist -d `pwd`/dist/ + if: ${{ matrix.format == 'sdist' }} + + - name: Create the wheel packages + run: |- + pip install wheel + python ${{ matrix.package }}/setup.py bdist_wheel -d `pwd`/dist/ + if: ${{ matrix.format == 'wheel' }} + + - name: Install the Python pool package and test requirements + run: |- + pip install dist/* + pip install -e ./psycopg[test] + + - name: Test the sdist package + run: pytest -m 'not slow' --color yes + env: + PSYCOPG_IMPL: ${{ matrix.impl }} + PSYCOPG_TEST_DSN: "host=127.0.0.1 user=postgres" + PGPASSWORD: password + + - uses: actions/upload-artifact@v2 + with: + path: ./dist/* + + services: + postgresql: + image: postgres:14 + env: + POSTGRES_PASSWORD: password + ports: + - 5432:5432 + # Set health checks to wait until postgres has started + options: >- + --health-cmd pg_isready + --health-interval 10s + --health-timeout 5s + --health-retries 5 diff --git a/.github/workflows/packages.yml b/.github/workflows/packages.yml index 76bbecce7..fc5c2c374 100644 --- a/.github/workflows/packages.yml +++ b/.github/workflows/packages.yml @@ -17,8 +17,6 @@ jobs: - {package: psycopg, format: sdist, impl: python} - {package: psycopg, format: wheel, impl: python} - {package: psycopg_c, format: sdist, impl: c} - - {package: psycopg_pool, format: sdist, impl: python} - - {package: psycopg_pool, format: wheel, impl: python} steps: - uses: actions/checkout@v2 @@ -28,7 +26,7 @@ jobs: python-version: 3.9 - name: Create the sdist packages - run: >- + run: |- python ${{ matrix.package }}/setup.py sdist -d `pwd`/dist/ if: ${{ matrix.format == 'sdist' }} @@ -51,12 +49,6 @@ jobs: pip install -e ./psycopg_pool if: ${{ matrix.package == 'psycopg_c' }} - - name: Install the Python pool package and test requirements - run: |- - pip install dist/* - pip install -e ./psycopg[test] - if: ${{ matrix.package == 'psycopg_pool' }} - - name: Test the sdist package run: pytest -m 'not slow' --color yes env: -- 2.47.2