backend/.drone.yml

130 lines
2.3 KiB
YAML

---
kind: pipeline
name: tests:node_latest
clone:
disable: true
steps:
- name: checkout pr
image: alpine/git
commands:
- git clone $DRONE_REMOTE_URL .
- git checkout $DRONE_SOURCE_BRANCH
- mv .env.ci .env
- name: run tests
image: node:alpine
commands:
- yarn
- yarn test:ci
trigger:
event:
- pull_request
---
kind: pipeline
type: docker
name: build:dev
steps:
- name: build dev
image: plugins/docker
depends_on: [clone]
settings:
username:
from_secret: DOCKER_REGISTRY_USER
password:
from_secret: DOCKER_REGISTRY_PASSWORD
repo: registry.odit.services/lfk/backend
tags:
- dev
registry: registry.odit.services
when:
branch:
- dev
event:
- push
trigger:
branch:
- dev
event:
- push
---
kind: pipeline
type: docker
name: build:latest
steps:
- name: build latest
image: plugins/docker
depends_on: [clone]
settings:
username:
from_secret: DOCKER_REGISTRY_USER
password:
from_secret: DOCKER_REGISTRY_PASSWORD
repo: registry.odit.services/lfk/backend
tags:
- latest
registry: registry.odit.services
trigger:
branch:
- main
event:
- push
---
kind: pipeline
type: docker
name: build:tags
steps:
- name: build $DRONE_TAG
image: plugins/docker
depends_on: [clone]
settings:
username:
from_secret: DOCKER_REGISTRY_USER
password:
from_secret: DOCKER_REGISTRY_PASSWORD
repo: registry.odit.services/lfk/backend
tags:
- $DRONE_TAG
registry: registry.odit.services
trigger:
branch:
- main
event:
- tag
---
kind: pipeline
type: docker
name: build:lib
clone:
disable: true
steps:
- name: checkout
image: alpine/git
commands:
- git clone $DRONE_REMOTE_URL backend
- git clone https://git.odit.services/lfk/lib.git lib
- git checkout $DRONE_SOURCE_BRANCH
- cd backend
- name: build the lib
image: node:alpine
commands:
- yarn
- yarn lib
- name: checkout
image: alpine/git
commands:
- mv ./lib/dist ../lib/dist
- mv ./lib/openapi.json ../lib/openapi.json
- cd ../lib
- git add -A
- git commit -m "$DRONE_COMMIT"
- git push