Files
049-snack-and-lift/docs/wiki/Getting-Started-da.md
Tirsvad 42f05bdd0f Load the gym accounts from the .env.gym file
Task: MIL-010#1
Task: MIL-010#2
Task: MIL-010#3
2026-10-28 22:26:03 +08:00

2.2 KiB

English · Dansk · Bahasa Melayu

Kom i gang

Krav

Python 3.13 eller nyere, Chrome eller Chromium og (valgfrit) Docker.

Installation

python -m venv .venv
source .venv/bin/activate
.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
python -m pip install -e ".[dev]"

Din konto

Botten indeholder ingen adgangskode. Opret en konto én gang i hånden på siden (kør med --keep-open, så mappen chrome_profile gemmer sidens data), og giv derefter botten kontoen:

export SNACK_AND_LIFT_EMAIL="yourname@test.com"
export SNACK_AND_LIFT_PASSWORD="your password"
$env:SNACK_AND_LIFT_EMAIL = "yourname@test.com"
$env:SNACK_AND_LIFT_PASSWORD = "your password"

Kontofilen

I stedet for at sætte variabler i hånden kan du skrive de samme linjer i en fil .env.gym i projektmappen (SNACK_AND_LIFT_EMAIL=... og SNACK_AND_LIFT_PASSWORD=...). Botten læser den ved start; --env-file PATH peger på en anden fil, og en rigtig miljøvariabel vinder over filen. Git ignorerer .env.gym: læg den aldrig i repositoriet. De valgfrie SNACK_AND_LIFT_ADMIN_EMAIL og SNACK_AND_LIFT_ADMIN_PASSWORD gemmer øvelsessidens admin-konto; botten indlæser dem, men bruger dem ikke endnu.

Kør og test

snack-and-lift
python -m pytest

Nyttige indstillinger: --headless, --keep-open, --first-tuesday-only (trin 3 og 4), --retries N, --profile-dir DIR, --screenshot-dir DIR.

Exitkoder

0 færdig, 1 et trin fejlede (også når alle forsøg fejlede), 2 loginoplysninger mangler, 3 siden My Bookings passer ikke med de bookinger der blev lavet.

Skærmbilleder (vedligeholder)

Siden gemmer sine data i browserens profil, så en kørsel i en container kræver en konto der findes i den profil. Brug --env-file til loginoplysningerne (aldrig på kommandolinjen eller i repositoriet) og et volume til profilen og skærmbillederne:

docker build -t snack-and-lift .
docker run --rm --env-file my.env -v snack-profile:/app/chrome_profile -v "$PWD/docs/images:/app/screenshots" snack-and-lift --headless --screenshot-dir /app/screenshots