TelegramAktienBot/.woodpecker/pipeline.yml
2022-04-04 15:13:27 +02:00

132 lines
3.0 KiB
YAML

pipeline:
generate_docker_tag:
image: golang
commands:
- echo -n "${CI_COMMIT_BRANCH//\//-}-${CI_COMMIT_SHA:0:8}, latest" > .tags
when:
event: push
generate_docker_tag_pr:
image: golang
commands:
- echo -n "pr-${CI_COMMIT_SHA:0:8}, pr" > .tags
when:
event: pull_request
# -------------------------------------- API --------------------------------------
# test_api:
# image: python
# detach: true
# commands:
# - export MYSQL_USER=aktienbot
# - export MYSQL_PASSWORD=12345678
# - export MYSQL_HOST=mariadb
# - export MYSQL_PORT=3306
# - cd api/
# - pip install -r requirements.txt
# - python -m pytest
# when:
# path: "api/*"
# event: push
build_api:
image: woodpeckerci/plugin-docker-buildx
settings:
repo:
from_secret: repo_api
username:
from_secret: username
password:
from_secret: password
registry:
from_secret: registry
dockerfile: api/Dockerfile
platforms: linux/amd64
when:
path: "api/*"
event: push
deploy_api:
image: appleboy/drone-ssh
network_mode: host
settings:
host:
from_secret: ssh_host
username:
from_secret: ssh_user
password:
from_secret: ssh_password
script:
- /opt/docker/TelegramAktienBot/deploy_api.sh
when:
path: "api/*"
event: push
# -------------------------------------- Bot --------------------------------------
build_bot:
image: woodpeckerci/plugin-docker-buildx
settings:
repo:
from_secret: repo_bot
username:
from_secret: username
password:
from_secret: password
registry:
from_secret: registry
dockerfile: telegram_bot/Dockerfile
platforms: linux/amd64
when:
path: "telegram_bot/*"
deploy_bot:
image: appleboy/drone-ssh
network_mode: host
settings:
host:
from_secret: ssh_host
username:
from_secret: ssh_user
password:
from_secret: ssh_password
script:
- /opt/docker/TelegramAktienBot/deploy_bot.sh
when:
path: "telegram_bot/*"
# -------------------------------------- Frontend --------------------------------------
build_frontend:
image: woodpeckerci/plugin-docker-buildx
settings:
repo:
from_secret: repo_frontend
username:
from_secret: username
password:
from_secret: password
registry:
from_secret: registry
dockerfile: frontend/Dockerfile
platforms: linux/amd64
when:
path: "frontend/*"
deploy_frontend:
image: appleboy/drone-ssh
network_mode: host
settings:
host:
from_secret: ssh_host
username:
from_secret: ssh_user
password:
from_secret: ssh_password
script:
- /opt/docker/TelegramAktienBot/deploy_frontend.sh
when:
path: "frontend/*"
branches: main