Test #1116
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Test | |
on: | |
push: {} | |
pull_request: {} | |
workflow_dispatch: {} | |
schedule: | |
- cron: '30 06 * * *' | |
jobs: | |
test: | |
name: Run tests and linters | |
runs-on: ubuntu-22.04 | |
env: | |
LANG: en_US.utf8 | |
DEBIAN_FRONTEND: noninteractive | |
PG_MAJOR: 15 | |
container: | |
image: ubuntu:jammy | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set postgresql uid/gid | |
run: | | |
groupadd -r postgres --gid=999 | |
useradd -r -d /var/lib/postgresql -g postgres --uid=999 postgres | |
- name: Set locale to utf-8 | |
run: | | |
apt-get update | |
apt-get install -y ca-certificates locales | |
rm -rf /var/lib/apt/lists/* | |
localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8 | |
- name: Install PostgreSQL ${PG_MAJOR} and Python | |
run: | | |
echo 'deb http://apt.postgresql.org/pub/repos/apt/ jammy-pgdg main' $PG_MAJOR > /etc/apt/sources.list.d/pgdg.list | |
echo 'deb https://ppa.launchpadcontent.net/deadsnakes/ppa/ubuntu/ jammy main' > /etc/apt/sources.list.d/deadsnakes-ubuntu-ppa.list | |
apt-get -o Acquire::AllowInsecureRepositories=true -o Acquire::AllowDowngradeToInsecureRepositories=true update | |
apt-get -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" -o APT::Get::AllowUnauthenticated=true install -y postgresql-common sudo libpq-dev python2.7-dev python3.11-dev python3.11-lib2to3 build-essential curl postgresql-$PG_MAJOR postgresql-contrib-$PG_MAJOR | |
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py | |
python3.11 get-pip.py | |
pip3.11 install tox | |
- name: Start PostgreSQL | |
run: | | |
chown -R postgres:postgres . | |
mkdir -p /var/log/postgresql | |
chown postgres:postgres /var/log/postgresql | |
sudo -u postgres /usr/lib/postgresql/${PG_MAJOR}/bin/pg_ctl -D /etc/postgresql/${PG_MAJOR}/main -l /var/log/postgresql/postgresql-${PG_MAJOR}-main.log start | |
- name: Run tox | |
run: sudo -u postgres tox |