Files
server-manager/.drone.yml
Ernie Butcher 65471c2a70 feat: initial project scaffold
- React 19 + Vite + TailwindCSS frontend
- Express + TypeScript backend API
- PostgreSQL schema and migrations
- Docker Compose orchestration
- Drone CI/CD pipeline
- Pages: Dashboard, Servers, Containers, Services, Logs, Metrics, Settings
2026-03-18 17:09:08 -04:00

113 lines
2.7 KiB
YAML

kind: pipeline
type: docker
name: server-manager
trigger:
branch:
- main
event:
- push
- pull_request
steps:
# ─── Backend ───────────────────────────────────────────────────────────────
- name: backend-lint
image: node:20-alpine
commands:
- cd backend
- npm ci
- npm run lint || true
- name: backend-build
image: node:20-alpine
commands:
- cd backend
- npm ci
- npm run build
depends_on:
- backend-lint
- name: backend-docker
image: plugins/docker
settings:
registry: git.jiosii.com
username:
from_secret: gitea_username
password:
from_secret: gitea_token
repo: git.jiosii.com/admin/server-manager-backend
context: backend
dockerfile: backend/Dockerfile
tags:
- latest
- ${DRONE_COMMIT_SHA:0:8}
depends_on:
- backend-build
when:
branch:
- main
event:
- push
# ─── Frontend ──────────────────────────────────────────────────────────────
- name: frontend-lint
image: node:20-alpine
commands:
- cd frontend
- npm ci
- npm run lint || true
- name: frontend-build
image: node:20-alpine
commands:
- cd frontend
- npm ci
- npm run build
depends_on:
- frontend-lint
- name: frontend-docker
image: plugins/docker
settings:
registry: git.jiosii.com
username:
from_secret: gitea_username
password:
from_secret: gitea_token
repo: git.jiosii.com/admin/server-manager-frontend
context: frontend
dockerfile: frontend/Dockerfile
tags:
- latest
- ${DRONE_COMMIT_SHA:0:8}
depends_on:
- frontend-build
when:
branch:
- main
event:
- push
# ─── Deploy ────────────────────────────────────────────────────────────────
- name: deploy
image: appleboy/drone-ssh
settings:
host: 100.116.40.103
username: root
key:
from_secret: ssh_private_key
port: 22
script:
- cd /opt/server-manager
- docker compose pull
- docker compose up -d --remove-orphans
- docker image prune -f
depends_on:
- backend-docker
- frontend-docker
when:
branch:
- main
event:
- push