| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 |
- ---
- #################
- # Frontend Test #
- #################
- kind: pipeline
- type: docker
- name: frontend_run_tests
-
- steps:
- - name: test-frontend
- image: node
- volumes:
- - name: frontend_node_cache
- path: /drone/src/frontend/node_modules
- commands:
- - pwd
- - cd ./frontend
- - npm install
- - npm test
-
- volumes:
- - name: frontend_node_cache
- host:
- path: /tmp/cache/drone/frontend/node_modules
- ---
- #################
- # Backend Tests #
- #################
- kind: pipeline
- type: docker
- name: backend_run_tests
-
- steps:
- - name: test-backend
- image: node
- volumes:
- - name: backend_node_cache
- path: /drone/src/backend/node_modules
- commands:
- - pwd
- - cd ./backend
- - npm install
- - npm test
-
- volumes:
- - name: backend_node_cache
- host:
- path: /tmp/cache/drone/backend/node_modules
- ---
- ##################
- # Frontend Build #
- ##################
- kind: pipeline
- type: docker
- name: frontend_run_build
- depends_on:
- - frontend_run_tests
- - backend_run_tests
- trigger:
- status:
- - success
- branch:
- - dev
-
- steps:
- - name: build-frontend
- image: node
- volumes:
- - name: frontend_node_cache
- path: /drone/src/frontend/node_modules
- - name: frontend_build
- path: /drone/src/frontend/build
- commands:
- - cd ./frontend
- - rm -Rf ./build/*
- - npx browserslist@latest --update-db
- - npm run build
- - ls ./build
- environment:
- NODE_OPTIONS: --openssl-legacy-provider
-
- volumes:
- - name: frontend_node_cache
- host:
- path: /tmp/cache/drone/frontend/node_modules
- - name: frontend_build
- host:
- path: /tmp/cache/drone/frontend/build
- ---
- #####################
- # Deploy to Staging #
- #####################
- kind: pipeline
- name: deploy
- depends_on:
- - backend_run_tests
- trigger:
- status:
- - success
- branch:
- - dev
-
- steps:
- # post-receive hook
- - name: push commit
- image: appleboy/drone-git-push:0.2.0-linux-amd64
- settings:
- branch: dev
- remote: maeda@165.232.128.85:/opt/staging/siimee.git
- remote_name: staging
- force: true
- ssh_key:
- # !: id_rsa from DRONE machine
- from_secret: push_deploy_key
|