Compare commits
34 Commits
feature/de
...
9edbcc0bc2
| Author | SHA1 | Date | |
|---|---|---|---|
|
9edbcc0bc2
|
|||
|
12bff5848a
|
|||
|
1bb5151fce
|
|||
|
75c6af122f
|
|||
|
da36606af3
|
|||
|
c3a689a007
|
|||
|
b0ed748712
|
|||
|
08a5b44660
|
|||
|
c80856f3c5
|
|||
|
70737658c7
|
|||
|
ebf0c6d970
|
|||
|
c92cefa903
|
|||
|
63e4270c89
|
|||
|
721edb71a1
|
|||
|
8f20452e1a
|
|||
|
de58630958
|
|||
|
f61b2b4535
|
|||
|
6863d64112
|
|||
|
aa52473f90
|
|||
|
465e47fc10
|
|||
|
3a721987dd
|
|||
|
2792753d3d
|
|||
|
af6184d581
|
|||
|
40a3cdabc9
|
|||
|
08e6af2eae
|
|||
|
09332aca24
|
|||
| b161f926a9 | |||
|
c406d6226c
|
|||
| 74fd2bf32c | |||
|
377300d288
|
|||
|
83cc9be24c
|
|||
| 4eaf354912 | |||
|
c9a8e0746a
|
|||
| cd980f2af9 |
86
.drone.yml
86
.drone.yml
@@ -3,7 +3,7 @@ type: docker
|
|||||||
name: Test Pipeline
|
name: Test Pipeline
|
||||||
|
|
||||||
workspace:
|
workspace:
|
||||||
path: /drone/grow
|
path: /drone/auth
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: yarn install
|
- name: yarn install
|
||||||
@@ -70,7 +70,7 @@ type: docker
|
|||||||
name: Publish Pipeline
|
name: Publish Pipeline
|
||||||
|
|
||||||
workspace:
|
workspace:
|
||||||
path: /drone/grow
|
path: /drone/auth
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Build Package
|
- name: Build Package
|
||||||
@@ -85,7 +85,7 @@ steps:
|
|||||||
- yarn publish -t ${DRONE_TAG}
|
- yarn publish -t ${DRONE_TAG}
|
||||||
volumes:
|
volumes:
|
||||||
- name: npmrc
|
- name: npmrc
|
||||||
path: /drone/grow/.npmrc
|
path: /drone/auth/.npmrc
|
||||||
- name: Report NPM Publish Status
|
- name: Report NPM Publish Status
|
||||||
image: plugins/webhook
|
image: plugins/webhook
|
||||||
settings:
|
settings:
|
||||||
@@ -151,10 +151,74 @@ trigger:
|
|||||||
---
|
---
|
||||||
kind: pipeline
|
kind: pipeline
|
||||||
type: docker
|
type: docker
|
||||||
name: Deploy Pipeline
|
name: Staging Deploy Pipeline
|
||||||
|
|
||||||
workspace:
|
workspace:
|
||||||
path: /drone/grow
|
path: /drone/auth
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Deploy Container
|
||||||
|
image: docker
|
||||||
|
privileged: true
|
||||||
|
environment:
|
||||||
|
CONTAINER_PREFIX: staging
|
||||||
|
HOST: area51.mifi.dev
|
||||||
|
ROUTE_PREFIX: /auth
|
||||||
|
PORT: 9001
|
||||||
|
commands:
|
||||||
|
- docker compose -f docker-compose.staging-build.yml build --pull --no-cache
|
||||||
|
- docker compose -f docker-compose.staging-build.yml up --remove-orphans --force-recreate --wait
|
||||||
|
volumes:
|
||||||
|
- name: env-secrets
|
||||||
|
path: /drone/auth/staging.env
|
||||||
|
- name: dockersock
|
||||||
|
path: /var/run/docker.sock
|
||||||
|
- name: dockerconfig
|
||||||
|
path: /drone/auth/.docker/config.json
|
||||||
|
- name: Send Status Notifications
|
||||||
|
image: plugins/webhook
|
||||||
|
privileged: true
|
||||||
|
settings:
|
||||||
|
urls: https://lab.mifi.dev/hooks/ccw34hdf7tgbjmzp96nptn938r
|
||||||
|
content_type: application/json
|
||||||
|
template: |
|
||||||
|
{
|
||||||
|
"icon_url":"https://emojipedia-us.s3.dualstack.us-west-1.amazonaws.com/thumbs/120/apple/198/freezing-face_1f976.png",
|
||||||
|
"text": "[{{ repo.name }} - Build # {{ build.number }}] Deploy {{ build.status }} {{#success build.status}}:tada:{{else}}:poop:{{/success}}",
|
||||||
|
"username":"DroneBot"
|
||||||
|
}
|
||||||
|
when:
|
||||||
|
status:
|
||||||
|
- success
|
||||||
|
- failure
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
- name: dockerconfig
|
||||||
|
host:
|
||||||
|
path: /volume1/docker/dockerconfig.json
|
||||||
|
- name: dockersock
|
||||||
|
host:
|
||||||
|
path: /var/run/docker.sock
|
||||||
|
- name: env-secrets
|
||||||
|
host:
|
||||||
|
path: /volume1/docker/beethoven/labs-auth/staging.env
|
||||||
|
|
||||||
|
depends_on:
|
||||||
|
- Test Pipeline
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
branch:
|
||||||
|
- develop
|
||||||
|
event:
|
||||||
|
- push
|
||||||
|
|
||||||
|
---
|
||||||
|
kind: pipeline
|
||||||
|
type: docker
|
||||||
|
name: Production Deploy Pipeline
|
||||||
|
|
||||||
|
workspace:
|
||||||
|
path: /drone/auth
|
||||||
|
|
||||||
clone:
|
clone:
|
||||||
disable: true
|
disable: true
|
||||||
@@ -169,17 +233,17 @@ steps:
|
|||||||
ROUTE_PREFIX: /auth
|
ROUTE_PREFIX: /auth
|
||||||
PORT: 9001
|
PORT: 9001
|
||||||
commands:
|
commands:
|
||||||
- docker compose -f docker-compose.staging-image.yml pull
|
- docker compose -f docker-compose.production-build.yml pull
|
||||||
- docker compose -f docker-compose.staging-image.yml build --no-cache
|
- docker compose -f docker-compose.production-build.yml build --no-cache
|
||||||
- docker compose -f docker-compose.staging-image.yml rm --stop
|
- docker compose -f docker-compose.production-build.yml rm --stop
|
||||||
- docker compose -f docker-compose.staging-image.yml up --wait
|
- docker compose -f docker-compose.production-build.yml up --wait
|
||||||
volumes:
|
volumes:
|
||||||
- name: env-secrets
|
- name: env-secrets
|
||||||
path: /drone/grow/staging.env
|
path: /drone/auth/production.env
|
||||||
- name: dockersock
|
- name: dockersock
|
||||||
path: /var/run/docker.sock
|
path: /var/run/docker.sock
|
||||||
- name: dockerconfig
|
- name: dockerconfig
|
||||||
path: /drone/grow/.docker/config.json
|
path: /drone/auth/.docker/config.json
|
||||||
- name: Send Status Notifications
|
- name: Send Status Notifications
|
||||||
image: plugins/webhook
|
image: plugins/webhook
|
||||||
privileged: true
|
privileged: true
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
## stage one, build the service
|
||||||
FROM node:20-alpine AS build
|
FROM node:20-alpine AS build
|
||||||
ENV NODE_ENV development
|
ENV NODE_ENV development
|
||||||
WORKDIR /home/node/app
|
WORKDIR /home/node/app
|
||||||
@@ -9,7 +10,7 @@ RUN yarn install
|
|||||||
RUN yarn build
|
RUN yarn build
|
||||||
|
|
||||||
## this is stage two , where the app actually runs
|
## this is stage two , where the app actually runs
|
||||||
FROM node:20-alpine AS containerize
|
FROM node:20-alpine AS auth-service
|
||||||
ENV NODE_ENV ${ENV:-production}
|
ENV NODE_ENV ${ENV:-production}
|
||||||
WORKDIR /home/node/app
|
WORKDIR /home/node/app
|
||||||
COPY package*.json ./
|
COPY package*.json ./
|
||||||
|
|||||||
@@ -9,7 +9,8 @@ services:
|
|||||||
networks:
|
networks:
|
||||||
- backend
|
- backend
|
||||||
volumes:
|
volumes:
|
||||||
- auth-db:/data
|
- auth-db:/data/db
|
||||||
|
- auth-db:/data/configdb
|
||||||
- ./mongo-init.js:/docker-entrypoint-initdb.d/mongo-init.js:ro
|
- ./mongo-init.js:/docker-entrypoint-initdb.d/mongo-init.js:ro
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
image: mongo:latest
|
image: mongo:latest
|
||||||
|
|||||||
@@ -8,10 +8,11 @@ services:
|
|||||||
networks:
|
networks:
|
||||||
- docknet
|
- docknet
|
||||||
volumes:
|
volumes:
|
||||||
- 'auth-db:/data'
|
- 'auth-db:/data/db'
|
||||||
- './mongo-init.js:/docker-entrypoint-initdb.d/mongo-init.js:ro'
|
- 'auth-db:/data/configdb'
|
||||||
|
- '/volume1/docker/beethoven/labs-auth/mongo-init.js:/docker-entrypoint-initdb.d/mongo-init.js:ro'
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
image: mongo:latest
|
image: mongo:4.4
|
||||||
auth-service:
|
auth-service:
|
||||||
env_file:
|
env_file:
|
||||||
- staging.env
|
- staging.env
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ services:
|
|||||||
- auth-db:/data
|
- auth-db:/data
|
||||||
- ./mongo-init.js:/docker-entrypoint-initdb.d/mongo-init.js:ro
|
- ./mongo-init.js:/docker-entrypoint-initdb.d/mongo-init.js:ro
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
image: mongo:latest
|
image: mongo:4.4
|
||||||
auth-service:
|
auth-service:
|
||||||
env_file:
|
env_file:
|
||||||
- staging.env
|
- staging.env
|
||||||
|
|||||||
Reference in New Issue
Block a user