diff --git a/.circleci/config.yml b/.circleci/config.yml index 66b09d9..a84574a 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -2,29 +2,24 @@ jobs: build: docker: - - - auth: + - auth: password: $DOCKERHUB_PASSWORD username: xaela37 image: "cimg/node:14.15.0" steps: - checkout - - - run: "yarn install" - - - save_cache: + - run: "yarn install" + - save_cache: key: "npm-v1-dependencies-{{ checksum \"yarn.lock\" }}" paths: - node_modules end_to_end: docker: - - - auth: + - auth: password: $DOCKERHUB_PASSWORD username: xaela37 image: "cimg/node:14.15.0" - - - auth: + - auth: password: $DOCKERHUB_PASSWORD username: xaela37 environment: @@ -34,74 +29,74 @@ jobs: image: "circleci/postgres:9.6.2-alpine" steps: - checkout - - - restore_cache: + - restore_cache: keys: - "npm-v1-dependencies-{{ checksum \"yarn.lock\" }}" - - - run: + - run: command: "yarn test:e2e" environment: DATABASE_URL: "postgres://pguser:pass@localhost:5432/pgdb" name: "yarn test" lint: docker: - - - auth: + - auth: password: $DOCKERHUB_PASSWORD username: xaela37 image: "cimg/node:14.15.0" steps: - checkout - - - restore_cache: + - restore_cache: key: "npm-v1-dependencies-{{ checksum \"yarn.lock\" }}" - - - run: + - run: command: |- yarn lint yarn format:check name: "step lint" - test_unit: + test_unit: + steps: + - checkout + - restore_cache: + key: dependencies-{{ checksum "package.json" }}-v1 + - run: + command: yarn test + environment: + DATABASE_URL: postgres://psqluer:psqlpassword@localhost:5432/psqluer + + heroku_deploy: docker: - - - image: "buildpack-deps:trusty" - - heroku_deploy: ~ - steps: + - auth: + password: $DOCKERHUB_PASSWORD + username: xaela37 + image: buildpack-deps:trusty + steps: - checkout - - - run: - command: "git push https://heroku:$HEROKU_API_KEY@git.heroku.com/$HEROKU_APP_NAME.git HEAD:main" - name: "Heroku Deploy" - - - run: + - run: + name: Heroku Deploy + command: git push https://heroku:$HEROKU_API_KEY@git.heroku.com/$HEROKU_APP_NAME.git HEAD:main + - run: + name: Smoke Test command: | - HTTPCODE=`curl -s -o /dev/null -w "%{http_code}" https://$HEROKU_APP_NAME.herokuapp.com/` - if [ "$HTTPCODE" -ne 200 ];then - echo "heroku app not responding, failing deploy" - exit 1 - fi - name: "Smoke Test" + HTTPCODE=`curl -s -o /dev/null -w "%{http_code}" https://backend-final-devops.herokuapp.com/` + if [ "$HTTPCODE" -ne 200 ];then + echo "heroku app not responding, failing deploy" + exit 1 + fi + version: 2 workflows: my_workflow: jobs: - build - - - test_unit: + - test_unit: requires: - build - - - end_to_end: + - end_to_end: requires: - build - - - lint: + - lint: requires: - build - - - heroku_deploy: + - heroku_deploy: requires: - build - test_unit