Skip to content

Commit 355f80d

Browse files
ci: wip
1 parent c8d52f1 commit 355f80d

File tree

1 file changed

+69
-0
lines changed

1 file changed

+69
-0
lines changed

.github/workflows/pytest.yml

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,74 @@ on:
1515
# - '**/*.py'
1616
workflow_dispatch:
1717

18+
env:
19+
REGISTRY_URL: ${{ vars.REGISTRY_URL }}
20+
REGISTRY_USER: ${{ github.repository_owner }}
21+
IMAGE: ${{ vars.IMAGE }}
22+
ALGORITHM: ${{ vars.ALGORITHM }}
23+
BOT_USER_TOKEN: ${{ secrets.BOT_USER_TOKEN }}
24+
CHANNEL: ${{ vars.CHANNEL }}
25+
CLIENT_ID: ${{ secrets.CLIENT_ID }}
26+
CLIENT_SECRET: ${{ secrets.CLIENT_SECRET }}
27+
CSV_FN: ${{ vars.CSV_FN }}
28+
DAYS: ${{ vars.DAYS }}
29+
DB_HOST: ${{ secrets.DB_HOST }}
30+
DB_NAME: ${{ secrets.DB_NAME }}
31+
DB_PASS: ${{ secrets.DB_PASS }}
32+
DB_PORT: ${{ vars.DB_PORT }}
33+
DB_USER: ${{ secrets.DB_USER }}
34+
JSON_FN: ${{ vars.JSON_FN }}
35+
PORT: ${{ vars.PORT }}
36+
PRIV_KEY_B64: ${{ secrets.PRIV_KEY_B64 }}
37+
PUB_KEY_B64: ${{ secrets.PUB_KEY_B64 }}
38+
REDIRECT_URI: ${{ vars.REDIRECT_URI }}
39+
SECRET_KEY: ${{ secrets.SECRET_KEY }}
40+
SELF_ID: ${{ secrets.SELF_ID }}
41+
SIGNING_KEY_ID: ${{ secrets.SIGNING_KEY_ID }}
42+
SIGNING_SECRET: ${{ secrets.SIGNING_SECRET }}
43+
TOKEN_URL: ${{ vars.TOKEN_URL }}
44+
TZ: ${{ vars.TZ }}
45+
USER_TOKEN: ${{ secrets.USER_TOKEN }}
46+
1847
jobs:
1948
test:
2049
runs-on: ubuntu-latest
50+
51+
# TODO: avoid hardcoding the image name
52+
services:
53+
server:
54+
image: ghcr.io/pythoninthegrass/meetup-bot
55+
ports:
56+
- 3000:3000
57+
env:
58+
ALGORITHM: ${{ env.ALGORITHM }}
59+
BOT_USER_TOKEN: ${{ env.BOT_USER_TOKEN }}
60+
CHANNEL: ${{ env.CHANNEL }}
61+
CLIENT_ID: ${{ env.CLIENT_ID }}
62+
CLIENT_SECRET: ${{ env.CLIENT_SECRET }}
63+
CSV_FN: ${{ env.CSV_FN }}
64+
DAYS: ${{ env.DAYS }}
65+
DB_HOST: ${{ env.DB_HOST }}
66+
DB_NAME: ${{ env.DB_NAME }}
67+
DB_PASS: ${{ env.DB_PASS }}
68+
DB_PORT: ${{ env.DB_PORT }}
69+
DB_USER: ${{ env.DB_USER }}
70+
JSON_FN: ${{ env.JSON_FN }}
71+
PORT: ${{ env.PORT }}
72+
PRIV_KEY_B64: ${{ env.PRIV_KEY_B64 }}
73+
PUB_KEY_B64: ${{ env.PUB_KEY_B64 }}
74+
REDIRECT_URI: ${{ env.REDIRECT_URI }}
75+
SECRET_KEY: ${{ env.SECRET_KEY }}
76+
SELF_ID: ${{ env.SELF_ID }}
77+
SIGNING_KEY_ID: ${{ env.SIGNING_KEY_ID }}
78+
SIGNING_SECRET: ${{ env.SIGNING_SECRET }}
79+
TOKEN_URL: ${{ env.TOKEN_URL }}
80+
TZ: ${{ env.TZ }}
81+
USER_TOKEN: ${{ env.USER_TOKEN }}
82+
2183
container:
2284
image: python:3.11.9-slim-bullseye
85+
2386
concurrency:
2487
group: ${{ github.workflow }}-${{ github.ref }}
2588
cancel-in-progress: true
@@ -43,5 +106,11 @@ jobs:
43106
python -m pip install --upgrade pip pytest
44107
python -m pip install -r requirements.txt
45108
109+
# - name: Wait for server to be ready
110+
# run: |
111+
# timeout 60s bash -c 'while [[ "$(curl -s -o /dev/null -w ''%{http_code}'' server:3000/healthz)" != "200" ]]; do sleep 5; done' || false
112+
46113
- name: Run pytest
47114
run: pytest -s
115+
env:
116+
URL: http://server:3000

0 commit comments

Comments
 (0)