diff --git a/.circleci/config.yml b/.circleci/config.yml index 5493678..53e5213 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,34 +1,52 @@ -version: 2.1 +workflows: + version: 2 + build_circleci: + jobs: + - build + - test: + requires: + - build + + +version: 2 jobs: build: docker: - image: circleci/python:3.7.4 + working_directory: ~/repo steps: - checkout + - restore_cache: + keys: + - v3-dependencies-{{ checksum "requirements/dev.txt" }}-{{ checksum "requirements/prod.txt" }} + - v3-dependencies- - run: - name: install pyth dependencies + name: install dependencies command: | python3 -m venv venv . venv/bin/activate pip install -r requirements/dev.txt environment: CONDUIT_SECRET: 'something-really-secret' - FLASK_APP: autoapp.py + FLASK_APP: /home/circleci/repo/autoapp.py FLASK_DEBUG: 1 + - save_cache: paths: - - ./venv + - venv key: v3-dependencies-{{ checksum "requirements/dev.txt" }}-{{ checksum "requirements/prod.txt" }} - start_test: + + test: docker: - image: circleci/python:3.7.4 + - image: postgres:9.6.2-alpine environment: - DATABASE_URL: postgresql://myuser:somePwd@localhost:5432/mydb - - image: circleci/postgres:9.6.5 - environment: + POSTGRES_USER: myUser + POSTGRES_PASSOWRD: somePwd POSTGRES_DB: mydb - POSTGRES_USER: myuser - POSTGRES_PASSWORD: somePwd + + working_directory: ~/repo + steps: - checkout - restore_cache: @@ -36,44 +54,38 @@ jobs: - v3-dependencies-{{ checksum "requirements/dev.txt" }}-{{ checksum "requirements/prod.txt" }} - v3-dependencies- - run: - name: flask upgrade + name: bd upgrade command: | . venv/bin/activate sleep 1 flask db upgrade - environment: + environment: CONDUIT_SECRET: 'something-really-secret' - FLASK_APP: autoapp.py - DATABASE_URL: postgresql://myuser:somePwd@localhost:5432/mydb + FLASK_APP: /home/circleci/repo/autoapp.py + DATABASE_URL: postgresql://myUser:somePwd@localhost:5432/mydb FLASK_DEBUG: 1 POSTGRES_USER: myUser POSTGRES_DB: mydb POSTGRES_PASSWORD: somePwd - POSTGRES_PORT: 5432 + POSTGRES_PORT: 5432 + - run: - name: flask test + name: run tests command: | . venv/bin/activate - sleep 1 - flask test - environment: + flask db migrate + flask test + environment: CONDUIT_SECRET: 'something-really-secret' - FLASK_APP: autoapp.py - DATABASE_URL: postgresql://myuser:somePwd@localhost:5432/mydb + FLASK_APP: /home/circleci/repo/autoapp.py + DATABASE_URL: postgresql://myUser:somePwd@localhost:5432/mydb FLASK_DEBUG: 1 POSTGRES_USER: myUser POSTGRES_DB: mydb POSTGRES_PASSWORD: somePwd POSTGRES_PORT: 5432 + - save_cache: paths: - - ./venv - key: v3-dependencies-{{ checksum "requirements/dev.txt" }}-{{ checksum "requirements/prod.txt" }} -workflows: - version: 2.1 - build_circleci: - jobs: - - build - - start_test: - requires: - - build \ No newline at end of file + - venv + key: v3-dependencies-{{ checksum "requirements/dev.txt" }}-{{ checksum "requirements/prod.txt" }} \ No newline at end of file