Skip to content

Commit

Permalink
gh-60: Fix postgresql in ci
Browse files Browse the repository at this point in the history
  • Loading branch information
BharathKumarRavichandran committed Nov 1, 2023
1 parent 789922f commit 18e977d
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 27 deletions.
42 changes: 21 additions & 21 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,14 @@ on:
push:
pull_request:

jobs:
setup-postgresql:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Set up PostgreSQL
run: |
source ci.env
docker run -d --name postgres -e POSTGRES_PASSWORD=$POSTGRES_PASSWORD -p $POSTGRES_PORT:5432 postgres:latest
env:
POSTGRES_HOST: localhost
POSTGRES_PORT: 5432
POSTGRES_DB: ccems-test
POSTGRES_USER: postgres
POSTGRES_PASSWORD: zJc2B%SDoUz%Uvrr

jobs:
lint:
name: lint
runs-on: ubuntu-latest
Expand All @@ -30,7 +27,12 @@ jobs:
unit-test:
name: Unit Tests
runs-on: ubuntu-latest
needs: setup-postgresql
services:
postgres:
image: postgres:latest
env:
POSTGRES_PASSWORD: ${{ env.POSTGRES_PASSWORD }}
POSTGRES_DB: ${{ env.POSTGRES_DB }}
steps:
- name: Checkout code
uses: actions/checkout@v2
Expand All @@ -42,14 +44,10 @@ jobs:
run: |
pip install -r requirements.txt
working-directory: ./
- name: Load environment variables
run: |
export $(xargs <ci.env)
- name: Run unit tests with code coverage
run: |
export $(xargs <ci.env)
export FLASK_ENV=test
export DATABASE_URL_TEST="postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DB}"
export DATABASE_URL_TEST="postgresql://${{ env.POSTGRES_USER }}:${{ env.POSTGRES_PASSWORD }}@${{ env.POSTGRES_HOST }}:${{ env.POSTGRES_PORT }}/${{ env.POSTGRES_DB }}"
echo $DATABASE_URL_TEST
coverage run -m unittest discover -s tests
coverage report -m --fail-under=90
Expand All @@ -58,7 +56,12 @@ jobs:
integration-test:
name: Behave Tests
runs-on: ubuntu-latest
needs: setup-postgresql
services:
postgres:
image: postgres:latest
env:
POSTGRES_PASSWORD: ${{ env.POSTGRES_PASSWORD }}
POSTGRES_DB: ${{ env.POSTGRES_DB }}
steps:
- name: Checkout code
uses: actions/checkout@v2
Expand All @@ -70,14 +73,11 @@ jobs:
run: |
pip install -r requirements.txt
working-directory: ./
- name: Load environment variables
run: |
export $(xargs <ci.env)
- name: Run behave tests
run: |
export $(xargs <ci.env)
export FLASK_ENV=test
export DATABASE_URL_TEST="postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DB}"
export DATABASE_URL_TEST="postgresql://${{ env.POSTGRES_USER }}:${{ env.POSTGRES_PASSWORD }}@${{ env.POSTGRES_HOST }}:${{ env.POSTGRES_PORT }}/${{ env.POSTGRES_DB }}"
echo $DATABASE_URL_TEST
behave
working-directory: ./
7 changes: 1 addition & 6 deletions ci.env
Original file line number Diff line number Diff line change
@@ -1,9 +1,4 @@
FLASK_APP=main
FLASK_ENV=test
FLASK_DEBUG=0
FLASK_SECRET_KEY=5cbda80a3828da43d9eaaf3728d9801d32e468038cccf3d7d911a24d30f80570
POSTGRES_HOST=localhost
POSTGRES_PORT=5432
POSTGRES_DB=ccems-test
POSTGRES_USER=postgres
POSTGRES_PASSWORD=zJc2B%SDoUz%Uvrrg
FLASK_SECRET_KEY=5cbda80a3828da43d9eaaf3728d9801d32e468038cccf3d7d911a24d30f80570

0 comments on commit 18e977d

Please sign in to comment.