healthcheck/.drone.yml

96 lines
2.0 KiB
YAML

kind: secret
name: POSTGRES_PASSWORD
get:
path: secrets
name: POSTGRES_PASSWORD
---
kind: secret
name: CLICKHOUSE_PASSWORD
get:
path: secrets
name: CLICKHOUSE_PASSWORD
---
kind: secret
name: SMTP_HOST
get:
path: secrets
name: SMTP_HOST
---
kind: secret
name: SMTP_USERNAME
get:
path: secrets
name: SMTP_USERNAME
---
kind: secret
name: SMTP_PASSWORD
get:
path: secrets
name: SMTP_PASSWORD
---
kind: pipeline
type: docker
name: healthcheck
trigger:
branch:
- master
services:
- name: kubectl-proxy-postgres
image: bitnami/kubectl
network_mode: host
environment:
KUBE_CONFIG:
from_secret: KUBE_CONFIG
commands:
- echo "$$KUBE_CONFIG" | base64 -d > /.kube/config
- kubectl -n databases port-forward pod/postgres-0 5432:5432
- name: kubectl-proxy-clickhouse
image: bitnami/kubectl
network_mode: host
environment:
KUBE_CONFIG:
from_secret: KUBE_CONFIG
commands:
- echo "$$KUBE_CONFIG" | base64 -d > /.kube/config
- kubectl -n databases port-forward pod/clickhouse-0 8123:8123
steps:
- name: install
image: node:20.10.0
commands:
- npm install
- name: build
image: node:20.10.0
commands:
- npm run build
- name: test
network_mode: host
image: node:20.10.0
commands:
- npm run test
environment:
POSTGRES_HOST: localhost
POSTGRES_DATABASE: nocodelytics_production
POSTGRES_PASSWORD:
from_secret: POSTGRES_PASSWORD
CLICKHOUSE_HOST: http://localhost:8123
CLICKHOUSE_DATABASE: nocodelytics_production
CLICKHOUSE_PASSWORD:
from_secret: CLICKHOUSE_PASSWORD
- name: notify
image: drillster/drone-email
settings:
host:
from_secret: SMTP_HOST
port: 587
username:
from_secret: SMTP_USERNAME
password:
from_secret: SMTP_PASSWORD
from: no-reply@nocodelytics.com
recipients: [florian@nocodelytics.com]
when:
status: [failure]