-
Notifications
You must be signed in to change notification settings - Fork 53
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #3 from vrk-kpa/AV-1703_ckan-2.9-support
Av 1703 ckan 2.9 support
- Loading branch information
Showing
33 changed files
with
858 additions
and
714 deletions.
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
name: Tests | ||
on: [push, pull_request] | ||
jobs: | ||
lint: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- uses: actions/setup-python@v2 | ||
with: | ||
python-version: '3.6' | ||
- name: Install requirements | ||
run: pip install flake8 pycodestyle | ||
- name: Check syntax | ||
run: flake8 . --count --select=E901,E999,F821,F822,F823 --show-source --statistics --exclude ckan | ||
- name: Run flake8 | ||
run: flake8 . --count --max-line-length=127 --statistics --exclude ckan | ||
|
||
test: | ||
needs: lint | ||
strategy: | ||
matrix: | ||
ckan-version: [2.9, 2.9-py2, 2.8, 2.7] | ||
fail-fast: false | ||
|
||
name: CKAN ${{ matrix.ckan-version }} | ||
runs-on: ubuntu-latest | ||
container: | ||
image: openknowledge/ckan-dev:${{ matrix.ckan-version }} | ||
services: | ||
solr: | ||
image: ckan/ckan-solr:${{ matrix.ckan-version }} | ||
postgres: | ||
image: ckan/ckan-postgres-dev:${{ matrix.ckan-version }} | ||
env: | ||
POSTGRES_USER: postgres | ||
POSTGRES_PASSWORD: postgres | ||
POSTGRES_DB: postgres | ||
options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 | ||
redis: | ||
image: redis:3 | ||
env: | ||
CKAN_SQLALCHEMY_URL: postgresql://ckan_default:pass@postgres/ckan_test | ||
CKAN_DATASTORE_WRITE_URL: postgresql://datastore_write:pass@postgres/datastore_test | ||
CKAN_DATASTORE_READ_URL: postgresql://datastore_read:pass@postgres/datastore_test | ||
CKAN_SOLR_URL: http://solr:8983/solr/ckan | ||
CKAN_REDIS_URL: redis://redis:6379/1 | ||
|
||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: Install requirements | ||
run: | | ||
apk add file | ||
pip install -r requirements.txt | ||
pip install -r dev-requirements.txt | ||
pip install -e . | ||
# Replace default path to CKAN core config file with the one on the container | ||
sed -i -e 's/use = config:.*/use = config:\/srv\/app\/src\/ckan\/test-core.ini/' test.ini | ||
- name: Setup extension (CKAN >= 2.9) | ||
if: ${{ matrix.ckan-version != '2.7' && matrix.ckan-version != '2.8' }} | ||
run: | | ||
ckan -c test.ini db init | ||
ckan -c test.ini qa init | ||
- name: Setup extension (CKAN < 2.9) | ||
if: ${{ matrix.ckan-version == '2.7' || matrix.ckan-version == '2.8' }} | ||
run: | | ||
paster --plugin=ckan db init -c test.ini | ||
paster --plugin=ckanext-qa qa init -c test.ini | ||
- name: Run tests | ||
run: pytest --ckan-ini=test.ini --cov=ckanext.qa --disable-warnings ckanext/qa/tests |
This file was deleted.
Oops, something went wrong.
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
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
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
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
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,85 @@ | ||
# -*- coding: utf-8 -*- | ||
|
||
import sys | ||
import click | ||
import ckanext.qa.utils as utils | ||
|
||
|
||
def get_commands(): | ||
return [qa] | ||
|
||
|
||
@click.group() | ||
def qa(): | ||
""" | ||
QA analysis of CKAN resources | ||
Usage:: | ||
ckan -c <path to CKAN config file> qa init | ||
- Creates the database tables that QA expects for storing | ||
results | ||
ckan -c <path to CKAN config file> qa [options] update [dataset/group name/id] | ||
- QA analysis on all resources in a given dataset, or on all | ||
datasets if no dataset given | ||
ckan -c <path to CKAN config file> qa sniff {filepath} | ||
- Opens the file and determines its type by the contents | ||
ckan -c <path to CKAN config file> qa view [dataset name/id] | ||
- See package score information | ||
ckan -c <path to CKAN config file> qa clean | ||
- Remove all package score information | ||
ckan -c <path to CKAN config file> qa migrate1 | ||
- Migrates the way results are stored in task_status, | ||
with commit 6f63ab9e 20th March 2013 | ||
(from key='openness_score'/'openness_score_failure_count' to | ||
key='status') | ||
The commands should be run from the ckanext-qa directory and expect | ||
a development.ini file to be present. Most of the time you will | ||
specify the config explicitly though:: | ||
ckan -c <path to CKAN config file> qa update | ||
""" | ||
|
||
|
||
@qa.command() | ||
def init(): | ||
utils.init_db() | ||
|
||
|
||
@qa.command() | ||
@click.argument('ids', nargs=-1) | ||
@click.option('-q', '--queue', help='Send to a particular queue') | ||
def update(ids, queue): | ||
utils.update(ids, queue) | ||
|
||
|
||
@qa.command() | ||
@click.argument('filepaths', nargs=-1) | ||
def sniff(filepaths): | ||
if len(filepaths) < 1: | ||
print('Not enough arguments', filepaths) | ||
sys.exit(1) | ||
|
||
utils.sniff(filepaths) | ||
|
||
|
||
@qa.command() | ||
@click.argument('package_ref') | ||
def view(package_ref=None): | ||
utils.view(package_ref) | ||
|
||
|
||
@qa.command() | ||
def clean(): | ||
utils.clean() | ||
|
||
|
||
@qa.command() | ||
def migrate1(): | ||
utils.migrate1() |
Oops, something went wrong.