From 6d93ac47320031d489fa7025a78964ac34b36859 Mon Sep 17 00:00:00 2001 From: tchawou-daniel Date: Sat, 16 Jan 2021 12:50:29 +0100 Subject: [PATCH] improve config.yml --- .circleci/config.yml | 70 ++++++++++++++++++------------------------- requirements/prod.txt | 2 +- 2 files changed, 30 insertions(+), 42 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 4e17f1f..fb9cffe 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,79 +1,67 @@ -version: 2.1 +version: 2 jobs: build: docker: - image: circleci/python:3.7.4 steps: - checkout - - run: echo "$CONDUIT_SECRET $FLASK_APP $FLASK_DEBUG" - run: name: install pyth dependencies command: | python3 -m venv venv . venv/bin/activate - pip3 install -r requirements/dev.txt + pip install -r requirements/dev.txt - save_cache: paths: - ./venv - key: v2-dependencies-{{ checksum "requirements/dev.txt" }} + key: v3-dependencies-{{ checksum "requirements/dev.txt" }}-{{ checksum "requirements/prod.txt" }} initialise: docker: - image: circleci/python:3.7.4 environment: - DATABASE_URL: postgresql://myuser:somePwd@localhost:5432/myuser + DATABASE_URL: postgresql://myuser:somePwd@localhost:5432/mydb - image: circleci/postgres:9.6.5 environment: - POSTGRES_DB: myuser + POSTGRES_DB: mydb POSTGRES_USER: myuser POSTGRES_PASSWORD: somePwd steps: - checkout - restore_cache: keys: - - v2-dependencies-{{ checksum "requirements/dev.txt" }} - - v2-dependencies- + - v3-dependencies-{{ checksum "requirements/dev.txt" }}-{{ checksum "requirements/prod.txt" }} + - v3-dependencies- - run: name: flask upgrade command: | . venv/bin/activate sleep 1 flask db upgrade - export CONDUIT_SECRET='something-really-secret' - export FLASK_APP=autoapp.py - export FLASK_DEBUG=1 - + environment: + CONDUIT_SECRET: 'something-really-secret' + 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 - run: name: flask test command: | . venv/bin/activate sleep 1 flask test - back-deploy-heroku: - docker: - - image: buildpack-deps:trusty - steps: - - checkout - - run: - name: Heroku Deploy - command: git push https://heroku:$HEROKU_API_KEY@git.heroku.com/$HEROKU_APP_NAME.git master - - run: - name: Smoke Test - command: | - HTTPCODE=`curl -s -o /dev/null -w "%{http_code}" https://$HEROKU_APP_NAME.herokuapp.com/api/articles` - if [ "$HTTPCODE" -ne 200 ];then - echo "heroku app not responding, failing deploy" - exit 1 - fi - - -workflows: - version: 2.1 - build_circleci: - jobs: - - build - - initialise: - requires: - - build - - back-deploy-heroku: - requires: - - docker-build-and-push \ No newline at end of file + environment: + CONDUIT_SECRET: 'something-really-secret' + 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" }} \ No newline at end of file diff --git a/requirements/prod.txt b/requirements/prod.txt index 19a1d8e..7c78619 100644 --- a/requirements/prod.txt +++ b/requirements/prod.txt @@ -9,7 +9,7 @@ marshmallow Flask_Bcrypt flask_apispec Flask -PyJWT +PyJWT=1.7.1 Flask-JWT-Extended unicode_slugify psycopg2