TODO: Put a description of your extension here: What does it do? What features does it have? Consider including some screenshots or embedding a video!
TODO: For example, you might want to mention here which versions of CKAN this extension works with.
If your extension works across different versions you can add the following table:
Compatibility with core CKAN versions:
CKAN version | Compatible? |
---|---|
2.9 | not tested |
2.10 | yes |
Suggested values:
- "yes"
- "not tested" - I can't think of a reason why it wouldn't work
- "not yet" - there is an intention to get it working
- "no"
TODO: Add any additional install steps to the list below. For example installing any non-Python dependencies or adding any required config settings.
To install ckanext-gdi-userportal:
-
Activate your CKAN virtual environment, for example:
. /usr/lib/ckan/default/bin/activate
-
Clone the source and install it on the virtualenv
git clone https://github.com/GenomicDataInfrastructure/ckanext-gdi-userportal.git cd ckanext-gdi_userportal pip install -e . pip install -r requirements.txt
-
Add
gdi_userportal
to theckan.plugins
setting in your CKAN config file (by default the config file is located at/etc/ckan/default/ckan.ini
). -
Restart CKAN. For example if you've deployed CKAN with Apache on Ubuntu:
sudo service apache2 reload
None at present
TODO: Document any optional config settings here. For example:
# The minimum number of hours to wait before re-checking a resource
# (optional, default: 24).
ckanext.gdi_userportal.some_setting = some_default_value
To install ckanext-gdi-userportal for development, activate your CKAN virtualenv and do:
git clone https://github.com/GenomicDataInfrastructure/ckanext-gdi-userportal.git
cd ckanext-gdi-userportal
python setup.py develop
pip install -r dev-requirements.txt
Add needed docker images:
Postgres:
docker run -d \
--name ckan-postgres \
-e POSTGRES_USER=ckan_default \
-e POSTGRES_PASSWORD=password \
-e POSTGRES_DB=ckan_default \
-v /path/to/your/data:/var/lib/postgresql/data \
-p 5432:5432 \
postgres
Solr:
docker run --name ckan-solr -p 8983:8983 -d ckan/ckan-solr:2.10-solr9
Redis:
docker run --name ckan-redis -p 6379:6379 -d redis:7
Add a new ckan.ini in your local repository and add the below values:
sqlalchemy.url = postgresql://ckan_default:password@localhost:5432/ckan_default
ckanext.dcat.rdf.profiles = euro_dcat_ap
ckan.harvest.s3_rdf.aws_access_key = changeme
ckan.harvest.s3_rdf.aws_secret_key = changeme
ckan sysadmin add <username> # Replace <username> with the actual username you want to create
To initialize local db:
ckan db init
To initialize db with harvester tables:
ckan db upgrade -p harvest
To clean the db:
ckan db clean
To run the tests, do:
pytest --ckan-ini=test.ini
If ckanext-gdi-userportal should be available on PyPI you can follow these steps to publish a new version:
-
Update the version number in the
setup.py
file. See PEP 440 for how to choose version numbers. -
Make sure you have the latest version of necessary packages:
pip install --upgrade setuptools wheel twine
-
Create a source and binary distributions of the new version:
python setup.py sdist bdist_wheel && twine check dist/*
Fix any errors you get.
-
Upload the source distribution to PyPI:
twine upload dist/*
-
Commit any outstanding changes:
git commit -a git push
-
Tag the new release of the project on GitHub with the version number from the
setup.py
file. For example if the version number insetup.py
is 1.0.0 then do:git tag 1.0.0 git push --tags
This work is licensed under multiple licenses. Because keeping this section up-to-date is challenging, here is a brief summary as of January 2024:
- All original source code is licensed under Apache-2.0.
- All documentation is licensed under CC-BY-4.0.
- Some configuration and data files are licensed under CC-BY-4.0.
- For more accurate information, check the individual files.