Skip to content

Commit f1469bc

Browse files
committed
ci(postman): use pip + requirements.txt instead of Poetry
The Poetry primary source is configured for Google Artifact Registry (Assured OSS), which requires the GCP_SA_JSON secret to install. Switching to `pip install -r requirements.txt` against public PyPI lets the Newman workflow run without that secret.
1 parent b1fd35f commit f1469bc

1 file changed

Lines changed: 13 additions & 11 deletions

File tree

.github/workflows/postman-api-tests.yml

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,16 @@
22
#
33
# Boots the Flask app against a throwaway SQLite database, waits for it to
44
# become reachable, and runs the Postman collection at docs/api/postman-collection.json
5-
# via Newman. Uses Poetry because the project is configured with a [tool.poetry]
6-
# pyproject (no PEP 621 [project] table, so `uv sync` cannot resolve dependencies
7-
# here).
5+
# via Newman.
6+
#
7+
# Dependency install uses `pip install -r requirements.txt` rather than the
8+
# task description's suggested `uv sync` (or Poetry). Two reasons:
9+
# 1. pyproject.toml is Poetry-only ([tool.poetry], no PEP 621 [project]),
10+
# so `uv sync` cannot resolve dependencies here.
11+
# 2. The project's Poetry primary source is Google Artifact Registry
12+
# (Assured OSS), which requires a GCP service account secret. Using the
13+
# pre-exported requirements.txt against public PyPI keeps this workflow
14+
# independent of that secret.
815
#
916
# Required GitHub Actions secrets:
1017
# - (none required for the default test run)
@@ -49,15 +56,10 @@ jobs:
4956
with:
5057
node-version: "20"
5158

52-
- name: Install Poetry
53-
run: |
54-
pipx install poetry
55-
poetry --version
56-
5759
- name: Install Python dependencies
5860
run: |
59-
poetry config virtualenvs.in-project true
60-
poetry install --no-interaction --no-root --only main
61+
python -m pip install --upgrade pip
62+
pip install -r requirements.txt
6163
6264
- name: Install Newman
6365
run: npm install -g newman
@@ -72,7 +74,7 @@ jobs:
7274
SENTRY_DSN: ""
7375
PYTHONPATH: src
7476
run: |
75-
poetry run flask --app ledgerbase.wsgi:app run --host 127.0.0.1 --port 5000 \
77+
flask --app ledgerbase.wsgi:app run --host 127.0.0.1 --port 5000 \
7678
> flask.log 2>&1 &
7779
echo $! > flask.pid
7880
echo "Started Flask app with PID $(cat flask.pid)"

0 commit comments

Comments
 (0)