From 9f20981eecb43833c38fe20ece52d1a3130f94d7 Mon Sep 17 00:00:00 2001 From: Oleg Broytman Date: Thu, 9 Sep 2021 03:16:54 +0300 Subject: [PATCH] CI(GHActions): Setup PostgreSQL, run postgres tests --- .github/workflows/run-tests.yaml | 16 ++++++++++++++-- tox.ini | 14 +++++++------- 2 files changed, 21 insertions(+), 9 deletions(-) diff --git a/.github/workflows/run-tests.yaml b/.github/workflows/run-tests.yaml index 6fb882e..cd07729 100644 --- a/.github/workflows/run-tests.yaml +++ b/.github/workflows/run-tests.yaml @@ -13,6 +13,18 @@ jobs: runs-on: ubuntu-latest steps: + + # Use preinstalled PostgreSQL + - name: Start PostgreSQL on Ubuntu + run: | + sudo systemctl start postgresql + pg_isready + - name: Create user + run: | + echo 'localhost:*:test:runner:test' > ~/.pgpass + chmod u=rw,go= ~/.pgpass + sudo -u postgres psql --command="CREATE USER runner CREATEDB ENCRYPTED PASSWORD 'test'" + - uses: actions/checkout@v2 - uses: actions/setup-python@v2 with: @@ -35,8 +47,8 @@ jobs: pyver = '%d%d' % tuple(sys.version_info[:2]) toxenv = 'py%s' % pyver toxenv += ',py%s-sqlite' % pyver - if os.name == 'posix': - toxenv += ',py%s-flake8' % pyver + toxenv += ',py%s-postgres' % pyver + toxenv += ',py%s-flake8' % pyver with open(os.environ['GITHUB_ENV'], 'a') as f: f.write('TOXENV=' + toxenv + '\n') shell: python diff --git a/tox.ini b/tox.ini index c318bdb..376fae5 100644 --- a/tox.ini +++ b/tox.ini @@ -56,19 +56,19 @@ commands = [testenv:{py27,py34,py35,py36,py37,py38,py39}-postgres] commands = {[testenv]commands} - -dropdb -U postgres -w test - createdb -U postgres -w test - {envpython} -m pytest --cov=sqlconvert -D postgres://postgres:@localhost/test - dropdb -U postgres -w test + -dropdb --username=runner test + createdb --username=runner test + {envpython} -m pytest --cov=sqlconvert -D postgres://runner:test@localhost/test + dropdb --username=runner test [testenv:{py27,py34,py35,py36,py37,py38,py39}-postgres-w32] platform = win32 commands = {[testenv]commands} - -dropdb -U postgres -w test - createdb -U postgres -w test + -dropdb --username=postgres --no-password test + createdb --username=postgres --no-password test pytest --cov=sqlconvert -D "postgres://postgres:Password12!@localhost/test" - dropdb -U postgres -w test + dropdb --username=postgres --no-password test # flake8 [testenv:{py27,py34,py35,py36,py37,py38,py39}-flake8] -- 2.39.5