Files
ts-onlinetime-ranks/.drone.yml
Kevin Reis d72bf5d0fe
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
Remove trigger.refs for dev builds
2021-02-09 15:57:44 +01:00

323 lines
7.4 KiB
YAML

---
kind: pipeline
type: docker
name: frontend
steps:
- name: Restore cache
image: plugins/s3-cache
settings:
pull: true
endpoint: https://storage.humenius.me
access_key:
from_secret: aws_access_key_id
secret_key:
from_secret: aws_secret_access_key
restore: true
debug: true
filename: frontend.tar
workdir: frontend/
- name: Install packages
image: node
commands:
- cd frontend
- yarn
- name: Build and push frontend image
image: plugins/docker
settings:
username:
from_secret: docker_username
password:
from_secret: docker_password
dockerfile: frontend/Dockerfile
context: frontend/
use_cache: true
repo: docker.humenius.me/humenius/ts-onlinetime-ranks-frontend
registry: docker.humenius.me
tags: ["latest", "${DRONE_SEMVER}"]
- name: Rebuild cache
image: plugins/s3-cache
settings:
pull: true
endpoint: https://storage.humenius.me
access_key:
from_secret: aws_access_key_id
secret_key:
from_secret: aws_secret_access_key
rebuild: true
debug: true
filename: frontend.tar
mount:
- frontend/node_modules
when:
event: push
status: [ success, failure ]
- name: Flush cache
image: plugins/s3-cache:1
settings:
pull: true
endpoint: https://storage.humenius.me
access_key:
from_secret: aws_access_key_id
secret_key:
from_secret: aws_secret_access_key
flush: true
flush_age: 14
debug: true
filename: frontend.tar
when:
status: [ success, failure ]
trigger:
event: [ tag, promote ]
refs: [ refs/heads/release/*, refs/tags/* ]
---
kind: pipeline
type: docker
name: frontend-dev
steps:
- name: Restore cache
image: plugins/s3-cache
settings:
pull: true
endpoint: https://storage.humenius.me
access_key:
from_secret: aws_access_key_id
secret_key:
from_secret: aws_secret_access_key
restore: true
debug: true
filename: frontend-dev.tar
workdir: frontend/
- name: Install packages
image: node
commands:
- cd frontend
- ls -la
- yarn
- name: Build and push frontend dev image
image: plugins/docker
settings:
username:
from_secret: docker_username
password:
from_secret: docker_password
dockerfile: frontend/Dockerfile
context: frontend/
use_cache: true
repo: docker.humenius.me/humenius/ts-onlinetime-ranks-frontend
registry: docker.humenius.me
tags: ["dev-${DRONE_COMMIT_SHA}", "dev-latest"]
- name: Rebuild cache
image: plugins/s3-cache
settings:
pull: true
endpoint: https://storage.humenius.me
access_key:
from_secret: aws_access_key_id
secret_key:
from_secret: aws_secret_access_key
rebuild: true
debug: true
filename: frontend-dev.tar
mount:
- frontend/node_modules
when:
status: [ success, failure ]
- name: Flush cache
image: plugins/s3-cache:1
settings:
pull: true
endpoint: https://storage.humenius.me
access_key:
from_secret: aws_access_key_id
secret_key:
from_secret: aws_secret_access_key
flush: true
flush_age: 14
debug: true
filename: frontend-dev.tar
when:
status: [ success, failure ]
trigger:
event: [ push, pull_request, promote ]
# refs: [ refs/heads/release/*, refs/heads/master, refs/heads/feature/*, refs/heads/hotfix/* ]
---
kind: pipeline
type: docker
name: backend
steps:
- name: Restore cache
image: plugins/s3-cache
settings:
pull: true
endpoint: https://storage.humenius.me
access_key:
from_secret: aws_access_key_id
secret_key:
from_secret: aws_secret_access_key
restore: true
debug: true
filename: backend.tar
workdir: backend/
- name: Install packages
image: node
commands:
- cd backend
- npm install
- name: Run unit tests
image: node
commands:
- cd backend
- ls -la
- npm run test:cov
- name: Build and push backend image
image: plugins/docker
settings:
username:
from_secret: docker_username
password:
from_secret: docker_password
dockerfile: backend/Dockerfile
use_cache: true
context: backend/
repo: docker.humenius.me/humenius/ts-onlinetime-ranks-backend
registry: docker.humenius.me
tags: ["latest", "${DRONE_SEMVER}"]
- name: Rebuild cache
image: plugins/s3-cache
settings:
pull: true
endpoint: https://storage.humenius.me
access_key:
from_secret: aws_access_key_id
secret_key:
from_secret: aws_secret_access_key
rebuild: true
debug: true
filename: backend.tar
mount:
- backend/node_modules
when:
status: [ success, failure ]
- name: Flush cache
image: plugins/s3-cache:1
settings:
pull: true
endpoint: https://storage.humenius.me
access_key:
from_secret: aws_access_key_id
secret_key:
from_secret: aws_secret_access_key
flush: true
flush_age: 14
debug: true
filename: backend.tar
when:
status: [ success, failure ]
trigger:
event: [ tag, promote ]
refs: [ refs/heads/release/*, refs/tags/* ]
---
kind: pipeline
type: docker
name: backend-dev
steps:
- name: Restore cache
image: plugins/s3-cache
settings:
pull: true
endpoint: https://storage.humenius.me
access_key:
from_secret: aws_access_key_id
secret_key:
from_secret: aws_secret_access_key
restore: true
debug: true
filename: backend-dev.tar
workdir: backend/
- name: Install packages
image: node
commands:
- cd backend
- npm install
- name: Run unit tests
image: node
commands:
- cd backend
- npm run test:cov
- name: Build and push backend dev image
image: plugins/docker
settings:
username:
from_secret: docker_username
password:
from_secret: docker_password
dockerfile: backend/Dockerfile
context: backend/
use_cache: true
repo: docker.humenius.me/humenius/ts-onlinetime-ranks-backend
registry: docker.humenius.me
tags: ["dev-${DRONE_COMMIT_SHA}", "dev-latest"]
- name: Rebuild cache
image: plugins/s3-cache
settings:
pull: true
endpoint: https://storage.humenius.me
access_key:
from_secret: aws_access_key_id
secret_key:
from_secret: aws_secret_access_key
rebuild: true
debug: true
filename: backend-dev.tar
mount:
- backend/node_modules
when:
status: [ success, failure ]
- name: Flush cache
image: plugins/s3-cache:1
settings:
pull: true
endpoint: https://storage.humenius.me
access_key:
from_secret: aws_access_key_id
secret_key:
from_secret: aws_secret_access_key
flush: true
flush_age: 14
debug: true
filename: backend-dev.tar
when:
status: [ success, failure ]
trigger:
event: [ push, pull_request, promote ]
# refs: [ refs/heads/master, refs/heads/feature/*, refs/heads/hotfix/* ]