forked from yvv/librodrome
57 lines
1.2 KiB
YAML
57 lines
1.2 KiB
YAML
steps:
|
|
- name: install-deps
|
|
image: node:23-slim
|
|
commands:
|
|
- corepack enable
|
|
- pnpm install --frozen-lockfile
|
|
|
|
- name: typecheck
|
|
image: node:23-slim
|
|
commands:
|
|
- corepack enable
|
|
- pnpm run typecheck
|
|
depends_on: [install-deps]
|
|
|
|
- name: build
|
|
image: node:23-slim
|
|
commands:
|
|
- corepack enable
|
|
- pnpm run build
|
|
depends_on: [typecheck]
|
|
|
|
- name: docker-build-push
|
|
image: woodpeckerci/plugin-docker-buildx
|
|
settings:
|
|
repo: git.open.us.org/syoul/librodrome
|
|
dockerfile: docker/Dockerfile
|
|
context: .
|
|
target: production
|
|
registry: git.open.us.org
|
|
tags:
|
|
- latest
|
|
- ${CI_COMMIT_SHA}
|
|
username:
|
|
from_secret: REGISTRY_USER
|
|
password:
|
|
from_secret: REGISTRY_PASSWORD
|
|
depends_on: [build]
|
|
when:
|
|
branch: main
|
|
|
|
- name: deploy
|
|
image: woodpeckerci/plugin-ssh
|
|
settings:
|
|
host:
|
|
from_secret: DEPLOY_HOST
|
|
user:
|
|
from_secret: DEPLOY_USER
|
|
key:
|
|
from_secret: SSH_DEPLOY_KEY
|
|
script:
|
|
- cd /opt/librodrome
|
|
- docker compose pull
|
|
- docker compose up -d
|
|
depends_on: [docker-build-push]
|
|
when:
|
|
branch: main
|