|
|
|
@ -23,3 +23,79 @@ jobs: |
|
|
|
- restore_cache: |
|
|
|
keys: dependencies-{{ checksum "package.json" }}-v1 |
|
|
|
- run: yarn test:unit |
|
|
|
|
|
|
|
yarn-build: |
|
|
|
<<: *shared-config |
|
|
|
environment: |
|
|
|
- VITE_BACKEND_URL_URL: $FINAL_BACKEND_URL |
|
|
|
steps: |
|
|
|
- checkout |
|
|
|
- restore_cache: |
|
|
|
keys: |
|
|
|
- dependencies-{{ checksum "package.json" }}-v1 |
|
|
|
- dependencies- |
|
|
|
- run: yarn build |
|
|
|
|
|
|
|
deploy: |
|
|
|
<<: *shared-config |
|
|
|
steps: |
|
|
|
- checkout |
|
|
|
- restore_cache: |
|
|
|
keys: |
|
|
|
- dependencies-{{ checksum "package.json" }}-v1 |
|
|
|
- dependencies- |
|
|
|
- run: |
|
|
|
name: Install netlify |
|
|
|
# --cached : reuse the highest version already used somewhere within the project |
|
|
|
command: | |
|
|
|
yarn add --cached netlify-cli |
|
|
|
- run: |
|
|
|
# --prod: (boolean) - Deploy to production |
|
|
|
# --open : (boolean) - Open site after deploy |
|
|
|
name: Deploy app |
|
|
|
command: yarn netlify deploy --auth $NETLIFY_AUTH_TOKEN --dir ~/repo --site $NETLIFY_CLIENT_ID --prod --open |
|
|
|
|
|
|
|
docker-build-and-push: |
|
|
|
working_directory: /dockerapp |
|
|
|
docker: |
|
|
|
- image: docker:17.05.0-ce-git |
|
|
|
steps: |
|
|
|
- checkout |
|
|
|
- setup_remote_docker: |
|
|
|
version: 19.03.13 |
|
|
|
- run: |
|
|
|
name: Build application Docker image |
|
|
|
command: | |
|
|
|
docker build -t app_front . |
|
|
|
- deploy: |
|
|
|
name: Publish application to docker hub |
|
|
|
command: | |
|
|
|
docker login -u $DOCKERHUB_USERNAME -p $DOCKERHUB_PASSWORD |
|
|
|
docker tag app $DOCKERHUB_USERNAME/$DOCKERHUB_APP_NAME:$CIRCLE_BUILD_NUM |
|
|
|
docker tag app $DOCKERHUB_USERNAME/$DOCKERHUB_APP_NAME:latest |
|
|
|
docker push $DOCKERHUB_USERNAME/$DOCKERHUB_APP_NAME:$CIRCLE_BUILD_NUM |
|
|
|
docker push $DOCKERHUB_USERNAME/$DOCKERHUB_APP_NAME:latest |
|
|
|
|
|
|
|
workflows: |
|
|
|
version: 2 |
|
|
|
build-test-and-lint: |
|
|
|
jobs: |
|
|
|
- install |
|
|
|
- unit-tests: |
|
|
|
requires: |
|
|
|
- install |
|
|
|
- build: |
|
|
|
requires: |
|
|
|
- yarn-unit-test |
|
|
|
- deploy: |
|
|
|
requires: |
|
|
|
- yarn-build |
|
|
|
filters: |
|
|
|
branches: |
|
|
|
only: main |
|
|
|
- docker-build-and-push: |
|
|
|
requires: |
|
|
|
- yarn-build |
|
|
|
filters: |
|
|
|
branches: |
|
|
|
only: main |