Browse Source

💚 change method and workflow

main
Julien Dudek 6 years ago
parent
commit
3815f0500a
  1. 42
      .circleci/config.yml

42
.circleci/config.yml

@ -9,39 +9,42 @@ jobs:
# specify the version you desire here # specify the version you desire here
# use `-browsers` prefix for selenium tests, e.g. `3.6.1-browsers` # use `-browsers` prefix for selenium tests, e.g. `3.6.1-browsers`
- image: circleci/python:3.6.4 - image: circleci/python:3.6.4
environment: # environment variables for primary container
PIPENV_VENV_IN_PROJECT: true
DATABASE_URL: postgresql://root@localhost/circle_test?sslmode=disable
# Specify service dependencies here if necessary # Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images # CircleCI maintains a library of pre-built images
# documented at https://circleci.com/docs/2.0/circleci-images/ # documented at https://circleci.com/docs/2.0/circleci-images/
# - image: circleci/postgres:9.4 # - image: circleci/postgres:9.4
- image: circleci/python:3.6.4
environment: # environment variables for the Postgres container.
POSTGRES_USER: root
POSTGRES_DB: circle_test
working_directory: ~/repo working_directory: ~/repo
steps: steps:
- checkout - checkout
- run: sudo chown -R circleci:circleci /usr/local/bin
- run: sudo chown -R circleci:circleci /usr/local/lib/python3.8/site-package
# Download and cache dependencies # Download and cache dependencies
- restore_cache: - restore_cache:
keys: keys:
- v5-dependencies-{{ checksum "requirements/dev.txt" }}-{{ checksum "requirements/prod.txt" }}
- v5-dependencies-
- v6-dependencies-{{ checksum "requirements/dev.txt" }}-{{ checksum "requirements/prod.txt" }}
- v6-dependencies-
# fallback to using the latest cache if no exact match is found # fallback to using the latest cache if no exact match is found
- run: - run:
name: install dependencies name: install dependencies
command: | command: |
python3 -m venv venv
. venv/bin/activate
export FLASK_APP=autoapp.py
pip install -r requirements/dev.txt pip install -r requirements/dev.txt
environment:
CONDUIT_SECRET: 'something-really-secret'
FLASK_APP: /home/circleci/repo/autoapp.py
FLASK_DEBUG: 1
flask db upgrade
flask test
- save_cache: - save_cache:
paths: paths:
- venv - venv
key: v5-dependencies-{{ checksum "requirements/dev.txt" }}-{{ checksum "requirements/prod.txt" }}
key: v6-dependencies-{{ checksum "requirements/dev.txt" }}-{{ checksum "requirements/prod.txt" }}
@ -49,13 +52,14 @@ jobs:
docker: docker:
# specify the version you desire here # specify the version you desire here
# use `-browsers` prefix for selenium tests, e.g. `3.6.1-browsers` # use `-browsers` prefix for selenium tests, e.g. `3.6.1-browsers`
- image: circleci/python:3.6.4
# Specify service dependencies here if necessary # Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images # CircleCI maintains a library of pre-built images
# documented at https://circleci.com/docs/2.0/circleci-images/ # documented at https://circleci.com/docs/2.0/circleci-images/
- image: postgres:9.6.2-alpine - image: postgres:9.6.2-alpine
environment: environment:
PIPENV_VENV_IN_PROJECT: true PIPENV_VENV_IN_PROJECT: true
DATABASE_URL: postgresql://root@localhost/circle_test?sslmode=disable
POSTGRES_USER: myUsr POSTGRES_USER: myUsr
POSTGRES_PASSOWRD: somePwd POSTGRES_PASSOWRD: somePwd
POSTGRES_DB: myUsr POSTGRES_DB: myUsr
@ -64,17 +68,20 @@ jobs:
steps: steps:
- checkout - checkout
- run: sudo chown -R circleci:circleci /usr/local/bin
- run: sudo chown -R circleci:circleci /usr/local/lib/python3.8/site-packages
# Download and cache dependencies # Download and cache dependencies
- restore_cache: - restore_cache:
keys: keys:
- v5-dependencies-{{ checksum "requirements/dev.txt" }}-{{ checksum "requirements/prod.txt" }}
- v5-dependencies-
- v6-dependencies-{{ checksum "requirements/dev.txt" }}-{{ checksum "requirements/prod.txt" }}
- v6-dependencies-
# fallback to using the latest cache if no exact match is found # fallback to using the latest cache if no exact match is found
- run: - run:
name: bd upgrade name: bd upgrade
command: | command: |
export FLASK_APP=autoapp.py
. venv/bin/activate . venv/bin/activate
sleep 1 sleep 1
flask db upgrade flask db upgrade
@ -102,7 +109,7 @@ jobs:
- save_cache: - save_cache:
paths: paths:
- venv - venv
key: v5-dependencies-{{ checksum "requirements/dev.txt" }}-{{ checksum "requirements/prod.txt" }}
key: v6-dependencies-{{ checksum "requirements/dev.txt" }}-{{ checksum "requirements/prod.txt" }}
back-deploy-heroku: back-deploy-heroku:
docker: docker:
@ -139,9 +146,6 @@ workflows:
build-back-deploy: build-back-deploy:
jobs: jobs:
- build - build
- test:
requires:
- build
- back-deploy-heroku: - back-deploy-heroku:
requires: requires:
- build - build

Loading…
Cancel
Save