1 changed files with 92 additions and 0 deletions
@ -0,0 +1,92 @@ |
|||
version: 2 |
|||
jobs: |
|||
install: |
|||
docker: |
|||
- image: circleci/node:dubnium-browsers |
|||
steps: |
|||
- checkout |
|||
- restore_cache: |
|||
keys: |
|||
- yarn-packages-{{ checksum "yarn.lock" }}-{{ .Environment.CACHE_VERSION }} |
|||
- yarn-packages |
|||
- run: yarn global add node-gyp && yarn install |
|||
- save_cache: |
|||
key: yarn-packages-{{ checksum "yarn.lock" }}-{{ .Environment.CACHE_VERSION }} |
|||
paths: |
|||
- node_modules |
|||
test: |
|||
docker: |
|||
- image: circleci/node:dubnium-browsers |
|||
steps: |
|||
- checkout |
|||
- restore_cache: |
|||
keys: |
|||
- yarn-packages-{{ checksum "yarn.lock" }}-{{ .Environment.CACHE_VERSION }} |
|||
- run: |
|||
name: Lancement des tests |
|||
command: yarn test |
|||
prod-build: |
|||
docker: |
|||
- image: circleci/node:dubnium-browsers |
|||
steps: |
|||
- checkout |
|||
- restore_cache: |
|||
keys: |
|||
- yarn-packages-{{ checksum "yarn.lock" }}-{{ .Environment.CACHE_VERSION }} |
|||
- run: |
|||
command : yarn run build |
|||
- run: |
|||
command: | |
|||
cp dist/ /tmp/dist -r |
|||
- store_artifacts: |
|||
path: /tmp/dist |
|||
- persist_to_workspace: |
|||
root: /tmp |
|||
paths: |
|||
- dist |
|||
deploy-netlify: |
|||
docker: |
|||
- image: circleci/node:dubnium-browsers |
|||
working_directory: ~/deploy-netlfify |
|||
steps: |
|||
- attach_workspace: |
|||
at: /tmp |
|||
- run: |
|||
name: Deploy app |
|||
command: | |
|||
sudo npm install -g --silent netlify-cli |
|||
netlify deploy --prod --auth $NETLIFY_AUTH_TOKEN --dir=/tmp/dist --site $NETLIFY_SITE_ID |
|||
docker-build-push: |
|||
working_directory: /dockerapp |
|||
docker: |
|||
- image: docker:17.05.0-ce-git |
|||
steps: |
|||
- checkout |
|||
- setup_remote_docker |
|||
- run: |
|||
name: dockerize the app |
|||
command: | |
|||
docker build --cache-from=app -t app . |
|||
- run: |
|||
name: Publish app to docker hub |
|||
command: | |
|||
docker login -u $DOCKER_HUB_USERNAME -p $DOCKER_HUB_PASSWORD |
|||
docker tag app $DOCKER_HUB_USERNAME/tp-devops-front:$CIRCLE_BUILD_NUM |
|||
docker tag app $DOCKER_HUB_USERNAME/tp-devops-front:latest |
|||
docker push $DOCKER_HUB_USERNAME/tp-devops-front:$CIRCLE_BUILD_NUM |
|||
docker push $DOCKER_HUB_USERNAME/tp-devops-front:latest |
|||
workflows: |
|||
build_deploy: |
|||
jobs: |
|||
- install |
|||
- prod-build: |
|||
requires: |
|||
- install |
|||
- deploy-netlify: |
|||
context: netlify_devops_final |
|||
requires: |
|||
- prod-build |
|||
- docker-build-push: |
|||
context: Docker |
|||
requires: |
|||
- install |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue