11 Commits

Author SHA1 Message Date
ef769cc087 Update dependency requests to ~=2.28.1
All checks were successful
ci/woodpecker/pr/woodpecker Pipeline was successful
2022-09-17 23:36:16 +02:00
d4bfc7b901 Merge pull request 'Update dependency pyTelegramBotAPI to ~=4.7.0' (#35) from renovate/pytelegrambotapi-4.x into main
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
Reviewed-on: #35
2022-09-17 23:35:55 +02:00
745f0e663b Update dependency pyTelegramBotAPI to ~=4.7.0
All checks were successful
ci/woodpecker/pr/woodpecker Pipeline was successful
2022-09-17 23:35:48 +02:00
cf8de1877e Merge pull request 'Update dependency plotly to ~=5.10.0' (#34) from renovate/plotly-5.x into main
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
Reviewed-on: #34
2022-09-17 23:35:36 +02:00
f96948e8d0 Update dependency plotly to ~=5.10.0
All checks were successful
ci/woodpecker/pr/woodpecker Pipeline was successful
2022-09-17 23:35:15 +02:00
f700886fa2 Merge pull request 'Configure Renovate' (#33) from renovate/configure into main
Reviewed-on: DHBW/GuessThePrice_2#33
2022-09-17 23:33:47 +02:00
2a3c79c174 Maybe this fixes renovate 2022-09-17 23:33:30 +02:00
4e09179e95 Add renovate.json 2022-09-17 23:33:28 +02:00
8b136b5482 „.renovaterc.json“ löschen 2022-09-17 23:33:03 +02:00
d03cdccb62 Some changes 2022-09-17 23:23:21 +02:00
Florian Kaiser
709b9ca570 Update README.md 2022-09-17 23:10:48 +02:00
7 changed files with 32 additions and 48 deletions

View File

@@ -1,12 +0,0 @@
version: '3.7'
services:
bot:
image: registry.flokaiser.com/guesstheprice/bot
env_file:
- ${PWD}/.env
networks:
default:
external:
name: ens18_net

View File

@@ -1,13 +0,0 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
version: 2
updates:
# Bot
- package-ecosystem: "pip"
directory: "/"
schedule:
interval: "daily"
open-pull-requests-limit: 100

4
.re Normal file
View File

@@ -0,0 +1,4 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"schedule": ["* 5 * * *"]
}

View File

@@ -4,16 +4,14 @@ pipeline:
commands:
- echo -n "${CI_COMMIT_BRANCH//\//-}-${CI_COMMIT_SHA:0:8}, latest" > .tags
when:
path: [ "source/**" ]
event: push
# -------------------------------------- Bot --------------------------------------
build_bot:
build:
image: woodpeckerci/plugin-docker-buildx
settings:
repo:
from_secret: repo_bot
from_secret: repo
username:
from_secret: username
password:
@@ -23,11 +21,9 @@ pipeline:
dockerfile: source/Dockerfile
platforms: linux/amd64
when:
path: "source/**"
event: push
# -------------------------------------- Deploy --------------------------------------
deploy:
image: appleboy/drone-ssh
network_mode: host
@@ -41,13 +37,10 @@ pipeline:
port:
from_secret: ssh_port
script:
- cd /home/administrator/GuessThePrice
- git pull
- cd .deploy
- cd ~/docker-compose-files/guess_the_price
- docker-compose pull
- docker-compose -p "guesstheprice" up -d
- docker-compose --env-file ~/docker-compose-env/guess_the_price.env up -d
when:
path: [ "source/**" ]
event: push

View File

@@ -28,14 +28,23 @@ Umsetzung:
Oberthema:
"Data is the new oil"
# Deployment
# Deploy
## Mit Docker (Empfohlen)
1. Das Dockerfile aus dem `source`-Ordner in das Root-Verzeichnis kopieren `cp source/Dockerfile .`
2. Das Docker Image erstellen `docker build . -t guesstheprice`
3. Die `source/.env.example`-Datei in das Root-Verzeichnis kopieren und zu `.env` umbenennen `cp source/.env.example .env`
4. Die `.env`-Datei so anpassen, das die Variablen die richtigen Werte haben
5. Den Container starten `docker run -d --name guesstheprice --env-file=.env guesstheprice`
6. ALternativ kann für das Starten des Containers auch die `docker-compose.yml` Datei aus dem `.deploy`-Ordner verwendet werden.
docker-compose.yml:
```
version: '3.7'
services:
bot:
image: registry.flokaiser.com/dhbw/guesstheprice
env_file:
- ${PWD}/.env
```
Start with:
```
docker-compose --env-file .env up -d
```
## Ohne Docker
Da für das Laden der Produkte von Amazon Gecko, Firefox und andere Abhängigkeiten verwenden, ist es relativ komplex den Bot ohne Docker zu Starten.
@@ -60,7 +69,7 @@ Im Docker-Image sind alle Abhängigkeiten direkt integriert, ohne Docker müssen
5. Bot Skripte starten `python source/bot.py & python source/daily_challenge.py`
# CI-CD
Damit der Docker Container bei jeder Änderung neu gebaut und gestartet wird, wird bei diesem Projekt **Woodpecker** verwendet: https://woodpecker.flokaiser.com/H4CK3R-01/GuessThePrice/.
Damit der Docker Container bei jeder Änderung neu gebaut und gestartet wird, wird bei diesem Projekt **Woodpecker** verwendet: https://gitea.woodpecker.flokaiser.com/DHBW/GuessThePrice.
Die Konfiguration hierzu befindet sich im `.woodpecker`-Ordner
Um die Abhängigkeiten aktuell zu halten wird der **dependabot**-Service von Github verwendet. Der Bot erstellt dabei täglich (bei neuen Updates) Pull Requests, die nur noch getestet und gemerged werden müssen.
Um die Abhängigkeiten aktuell zu halten wird der **dependabot**-Service von Github verwendet. Der Bot erstellt dabei täglich (bei neuen Updates) Pull Requests, die nur noch getestet und gemerged werden müssen.

3
renovate.json Normal file
View File

@@ -0,0 +1,3 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json"
}

View File

@@ -1,12 +1,12 @@
pyTelegramBotAPI~=4.5.1
pyTelegramBotAPI~=4.7.0
python-dotenv~=0.20.0
APScheduler~=3.9.1
SQLAlchemy~=1.4.37
pymysql==1.0.2
requests~=2.27.1
requests~=2.28.1
beautifulsoup4~=4.11.1
pandas~=1.4.2
PyVirtualDisplay~=3.0
selenium~=4.2.0
plotly~=5.8.0
plotly~=5.10.0
fuzzywuzzy~=0.18.0