Skip to content

Changes logo, favicon and title #134

Changes logo, favicon and title

Changes logo, favicon and title #134

Workflow file for this run

name: Run Backend Tests
on:
pull_request:
branches: [ "main" ]
paths-ignore:
- 'contrib/**'
- '.github/workflows/cypress.yml'
- '.github/workflows/docker-base-image.yml'
- '.github/workflows/docker-dev-image.yml'
- '.github/workflows/docker-nginx-image.yml'
- '.github/workflows/docker-postgresql-image.yml'
- '.github/workflows/docker-deployment-image.yml'
- '.github/workflows/deploy.yml'
- '.github/ISSUE_TEMPLATE'
- '.github/PULL_REQUEST_TEMPLATE.md'
- '.gitignore'
env:
CKAN_DATASTORE_POSTGRES_DB: datastore_test
CKAN_DATASTORE_POSTGRES_READ_USER: datastore_read
CKAN_DATASTORE_POSTGRES_READ_PWD: pass
CKAN_DATASTORE_POSTGRES_WRITE_USER: datastore_write
CKAN_DATASTORE_POSTGRES_WRITE_PWD: pass
CKAN_POSTGRES_DB: ckan_test
CKAN_POSTGRES_USER: ckan_default
CKAN_POSTGRES_PWD: pass
PGPASSWORD: ckan
PYTEST_COMMON_OPTIONS: -v --ckan-ini=test-core-circle-ci.ini --cov=ckan --cov=ckanext --junitxml=~/junit/result/junit.xml --test-group-count 6 --test-group-random-seed 1
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
test_group: [1, 2, 3, 4, 5, 6]
container: python:3-bullseye
services:
ckan-postgres:
image: postgres:10
env:
POSTGRES_USER: ckan
POSTGRES_PASSWORD: ckan
POSTGRES_DB: ckan
ports:
- 5432:5432
options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
ckan-redis:
image: redis:3
ckan-solr:
image: ckan/ckan-solr:2.9-solr8
ports:
- 8983:8983
steps:
- uses: actions/checkout@v3
- name: Install dependencies
run: |
# OS Dependencies
#apt update
apt-get update -y
apt-get install -y postgresql-client
apt-get install -y python3-dev libxml2-dev libxslt1-dev zlib1g-dev libffi-dev libssl-dev
# CkAN dependencies
pip install -r requirement-setuptools.txt
pip install -r requirements.txt
pip install -r dev-requirements.txt
python setup.py develop
pip check
- name: Init environment
run: |
# Database Creation
psql --host=ckan-postgres --username=ckan --command="CREATE USER ${CKAN_POSTGRES_USER} WITH PASSWORD '${CKAN_POSTGRES_PWD}' NOSUPERUSER NOCREATEDB NOCREATEROLE;"
createdb --encoding=utf-8 --host=ckan-postgres --username=ckan --owner=${CKAN_POSTGRES_USER} ${CKAN_POSTGRES_DB}
psql --host=ckan-postgres --username=ckan --command="CREATE USER ${CKAN_DATASTORE_POSTGRES_READ_USER} WITH PASSWORD '${CKAN_DATASTORE_POSTGRES_READ_PWD}' NOSUPERUSER NOCREATEDB NOCREATEROLE;"
psql --host=ckan-postgres --username=ckan --command="CREATE USER ${CKAN_DATASTORE_POSTGRES_WRITE_USER} WITH PASSWORD '${CKAN_DATASTORE_POSTGRES_WRITE_PWD}' NOSUPERUSER NOCREATEDB NOCREATEROLE;"
createdb --encoding=utf-8 --host=ckan-postgres --username=ckan --owner=${CKAN_DATASTORE_POSTGRES_WRITE_USER} ${CKAN_DATASTORE_POSTGRES_DB}
# Database Initialization
ckan -c test-core-circle-ci.ini datastore set-permissions | psql --host=ckan-postgres --username=ckan
psql --host=ckan-postgres --username=ckan --dbname=${CKAN_DATASTORE_POSTGRES_DB} --command="CREATE extension tablefunc;"
ckan -c test-core-circle-ci.ini db init
# gunzip test_durations.gz
- name: Run tests
run: |
mkdir -p ~/junit/result
# python -m pytest ${PYTEST_COMMON_OPTIONS} --splits 4 --group ${{matrix.test_group}} --splitting-algorithm least_duration
python -m pytest ${PYTEST_COMMON_OPTIONS} --test-group ${{matrix.test_group}}
- name: Store backend test results
uses: actions/upload-artifact@v3
with:
name: store-test-results
path: ~/junit
- name: Run coveralls
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: coveralls --service=github