Merge pull request 'Python 3.11 - Alpine + loop improvement' (#11) from wip into main

Reviewed-on: #11
This commit is contained in:
2025-07-09 18:14:14 +02:00
3 changed files with 6 additions and 11 deletions

View File

@ -1,22 +1,16 @@
# Utiliser une image de base légère de Python (ici Python 3.9)
FROM python:3.9-slim
FROM python:3.11-alpine
RUN apk add --no-cache ca-certificates
# Définir le répertoire de travail à l'intérieur du conteneur
WORKDIR /app
# Copier le script Python dans le répertoire de travail
COPY nvidia-stock-bot.py /app/
# Copier un éventuel fichier requirements.txt pour installer des dépendances
# Si des dépendances supplémentaires sont nécessaires, ajoutez-les dans requirements.txt
COPY requirements.txt /app/
# Installer les dépendances Python à partir de requirements.txt
RUN pip install --no-cache-dir -r requirements.txt
# Définir les variables d'environnement par défaut (modifiable lors du lancement du conteneur)
ENV DISCORD_WEBHOOK_URL="https://example.com/webhook" \
REFRESH_TIME="30"
# Exposer un point de commande pour exécuter le script
CMD ["python", "nvidia-stock-bot.py"]

View File

@ -58,7 +58,6 @@ services:
- API_URL_SKU= # API listing the product
- API_URL_STOCK= # API providing stock data
- PRODUCT_URL= # GPU purchase URL
- PYTHONUNBUFFERED=1 # Enables real-time log output
command: python nvidia-stock-bot.py
```

View File

@ -350,8 +350,10 @@ def check_rtx_50_founders():
if __name__ == "__main__":
try:
while True:
start = time.time()
check_rtx_50_founders()
time.sleep(REFRESH_TIME)
elapsed = time.time() - start
time.sleep(max(0, REFRESH_TIME - elapsed))
# Gracefully shut down
except KeyboardInterrupt: