]> git.phdru.name Git - sqlconvert.git/commitdiff
CI(GHActions): Setup PostgreSQL, run postgres tests
authorOleg Broytman <phd@phdru.name>
Thu, 9 Sep 2021 00:16:54 +0000 (03:16 +0300)
committerOleg Broytman <phd@phdru.name>
Fri, 10 Sep 2021 14:47:43 +0000 (17:47 +0300)
.github/workflows/run-tests.yaml
tox.ini

index 6fb882ef91079b36a83cd0e033a4e282a90d50e6..cd07729bc905d93f81a07150ec5ce6204d1d160e 100644 (file)
@@ -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 c318bdb3732af16be2514f48599877b750666285..376fae5ab86b8521e458a7fe7780d3c25e6b6178 100644 (file)
--- 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]