1 changed files with 86 additions and 30 deletions
@ -1,60 +1,116 @@ |
|||
# Python CircleCI 2.0 configuration file |
|||
# |
|||
# Check https://circleci.com/docs/2.0/language-python/ for more details |
|||
# |
|||
version: 2 |
|||
jobs: |
|||
install: |
|||
build: |
|||
docker: |
|||
- image: circleci/python:3.6.10 |
|||
- image: circleci/postgres:9.6.2 |
|||
# specify the version you desire here |
|||
# use `-browsers` prefix for selenium tests, e.g. `3.6.1-browsers` |
|||
- image: circleci/python:3.6.4 |
|||
|
|||
# Specify service dependencies here if necessary |
|||
# CircleCI maintains a library of pre-built images |
|||
# documented at https://circleci.com/docs/2.0/circleci-images/ |
|||
# - image: circleci/postgres:9.4 |
|||
|
|||
working_directory: ~/repo |
|||
|
|||
steps: |
|||
- checkout |
|||
|
|||
# Download and cache dependencies |
|||
- restore_cache: |
|||
keys: |
|||
- dependencies-{{ checksum "requirements/dev.txt" }}-{{ checksum "requirements/prod.txt" }} |
|||
- dependencies- |
|||
- v1-dependencies-{{ checksum "requirements/dev.txt" }} |
|||
- v1-dependencies- |
|||
# fallback to using the latest cache if no exact match is found |
|||
|
|||
- run: |
|||
name: install python and dependencies |
|||
name: install dependencies |
|||
command: | |
|||
python3 -m venv venv |
|||
. venv/bin/activate |
|||
pip install -r requirements/dev.txt |
|||
|
|||
- run: |
|||
name: db upgrade |
|||
environment: |
|||
CONDUIT_SECRET: 'something-really-secret' |
|||
FLASK_APP: /home/circleci/repo/autoapp.py |
|||
FLASK_DEBUG: 1 |
|||
POSTGRES_USER: postgres |
|||
POSTGRES_DB: bdtest |
|||
POSTGRES_PASSWORD: somePwd |
|||
POSTGRES_PORT: 5432 |
|||
DATABASE_URL: postgresql://postgres:somePwd@localhost:5432/postgres |
|||
|
|||
- save_cache: |
|||
paths: |
|||
- venv |
|||
key: v1-dependencies-{{ checksum "requirements/dev.txt" }} |
|||
|
|||
|
|||
|
|||
test: |
|||
docker: |
|||
# specify the version you desire here |
|||
# use `-browsers` prefix for selenium tests, e.g. `3.6.1-browsers` |
|||
- image: circleci/python:3.6.4 |
|||
# Specify service dependencies here if necessary |
|||
# CircleCI maintains a library of pre-built images |
|||
# documented at https://circleci.com/docs/2.0/circleci-images/ |
|||
- image: postgres:9.6.2-alpine |
|||
environment: |
|||
POSTGRES_USER: myUsr |
|||
POSTGRES_PASSOWRD: somePwd |
|||
POSTGRES_DB: myUsr |
|||
|
|||
working_directory: ~/repo |
|||
|
|||
steps: |
|||
- checkout |
|||
|
|||
# Download and cache dependencies |
|||
- restore_cache: |
|||
keys: |
|||
- v1-dependencies-{{ checksum "requirements/dev.txt" }} |
|||
- v1-dependencies- |
|||
# fallback to using the latest cache if no exact match is found |
|||
|
|||
- run: |
|||
name: bd upgrade |
|||
command: | |
|||
echo $FLASK_APP |
|||
echo $FLASK_DEBUG |
|||
echo $DATABASE_URL |
|||
. venv/bin/activate |
|||
sleep 1 |
|||
flask db upgrade |
|||
- run: |
|||
name: flask test |
|||
environment: |
|||
CONDUIT_SECRET: 'something-really-secret' |
|||
FLASK_APP: /home/circleci/repo/autoapp.py |
|||
DATABASE_URL: postgresql://myUsr:somePwd@localhost:5432/myUsr |
|||
FLASK_DEBUG: 1 |
|||
POSTGRES_USER: postgres |
|||
POSTGRES_DB: bdtest |
|||
POSTGRES_PASSWORD: somePwd |
|||
POSTGRES_PORT: 5432 |
|||
DATABASE_URL: postgresql://postgres:somePwd@localhost:5432/postgres |
|||
TESTENV: "pour tester les var env" |
|||
|
|||
|
|||
|
|||
|
|||
# run tests! |
|||
# this example uses Django's built-in test-runner |
|||
# other common Python testing frameworks include pytest and nose |
|||
# https://pytest.org |
|||
# https://nose.readthedocs.io |
|||
- run: |
|||
name: run tests |
|||
command: | |
|||
echo $DATABASE_URL |
|||
echo $TESTENV |
|||
. venv/bin/activate |
|||
flask test |
|||
environment: |
|||
CONDUIT_SECRET: 'something-really-secret' |
|||
FLASK_APP: /home/circleci/repo/autoapp.py |
|||
FLASK_DEBUG: 1 |
|||
DATABASE_URL: postgresql://myUsr:somePwd@localhost:5432/myUsr |
|||
|
|||
- save_cache: |
|||
paths: |
|||
- ./venv |
|||
key: dependencies-{{ checksum "requirements/dev.txt" }}-{{ checksum "requirements/prod.txt" }} |
|||
- venv |
|||
key: v1-dependencies-{{ checksum "requirements/dev.txt" }} |
|||
workflows: |
|||
version: 2 |
|||
build-back: |
|||
jobs: |
|||
- install |
|||
- build |
|||
- test: |
|||
requires: |
|||
- build |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue