X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=.github%2Fworkflows%2Frun-tests.yaml;h=22d05e6d8ccf0fa8602c97959863d1774363fa80;hb=a267459f652b7ed89dd67d095d7085b3ca2b2d3e;hp=cd07729bc905d93f81a07150ec5ce6204d1d160e;hpb=9f20981eecb43833c38fe20ece52d1a3130f94d7;p=sqlconvert.git diff --git a/.github/workflows/run-tests.yaml b/.github/workflows/run-tests.yaml index cd07729..22d05e6 100644 --- a/.github/workflows/run-tests.yaml +++ b/.github/workflows/run-tests.yaml @@ -7,23 +7,30 @@ jobs: strategy: matrix: + os: [ubuntu-latest, windows-latest] python-version: [2.7, 3.5, 3.6, 3.7, 3.8, 3.9] + include: + - os: ubuntu-latest + os-name: Linux + pip-cache-path: ~/.cache/pip + - os: windows-latest + os-name: w32 + pip-cache-path: ~\AppData\Local\pip\Cache - name: Python ${{ matrix.python-version }} - runs-on: ubuntu-latest + name: Python ${{ matrix.python-version }} @ ${{ matrix.os-name }} + runs-on: ${{ matrix.os }} steps: - # Use preinstalled PostgreSQL - - name: Start PostgreSQL on Ubuntu + - uses: ankane/setup-postgres@v1 + - name: Setup Postgres user run: | - sudo systemctl start postgresql - pg_isready - - name: Create user + sudo -u postgres psql --command="ALTER USER runner CREATEDB PASSWORD 'test'" + if: ${{ runner.os == 'Linux' }} + - name: Setup Postgres 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'" + psql --command="CREATE USER runner CREATEDB PASSWORD 'test'" + if: ${{ runner.os == 'Windows' }} - uses: actions/checkout@v2 - uses: actions/setup-python@v2 @@ -32,8 +39,7 @@ jobs: - name: Cache pip uses: actions/cache@v2 with: - # This path is specific to Linux/Unix - path: ~/.cache/pip + path: ${{ matrix.pip-cache-path }} key: ${{ runner.os }}-pip - name: Install dependencies run: | @@ -47,10 +53,16 @@ jobs: pyver = '%d%d' % tuple(sys.version_info[:2]) toxenv = 'py%s' % pyver toxenv += ',py%s-sqlite' % pyver + if os.name == 'nt': + toxenv += '-w32' toxenv += ',py%s-postgres' % pyver - toxenv += ',py%s-flake8' % pyver + if os.name == 'posix': + toxenv += ',py%s-flake8' % pyver + elif os.name == 'nt': + toxenv += '-w32' with open(os.environ['GITHUB_ENV'], 'a') as f: f.write('TOXENV=' + toxenv + '\n') + f.write('PGPASSWORD=test\n') shell: python - name: Run tox run: |