A custom CKAN extension for International Atomic Energy Agency (IAEA) data portal.
Make sure you have following tools installed on your machine:
- Docker
- Docker-compose
First, set the portal hostname in /etc/hosts
:
echo "127.0.0.1 ckan.iaea.local" >> /etc/hosts
To build the images:
docker compose build
You should set CKAN auth option to allow for datasets without organization:
ckan.auth.create_unowned_dataset = true
# Main organization name for the portal. Default value is 'iaea'
ckanext.iaea.main_organization=iaea
# Allow only editors and admins within this organization to be able to create datasets.
# All other users will be restricted.
# By default this is not set, and that means the CKAN standard auth applies for dataset creation.
ckanext.iaea.allow_dataset_create_from_organization=
To start the containers:
docker compose --profile full up
Now you can start development of your extension.
Try to access the portal at http://ckan.iaea.local:5000.
The default user and pass are set in .env
- variables CKAN_SYSADMIN_NAME
and CKAN_SYSADMIN_PASSWORD
.
Run the docker compose without profile:
docker compose up
This would provide (accessible on the host):
- PostgreSQL server at port
5432
- Redis at port
6379
- Solr at port
8983
- Datapusher at port
8800
We need version 0.0.7
for this extension:
git clone https://github.com/ckan/ckanext-pdfview.git
cd ckanext-pdfview
git checkout 0.0.7
python setup.py develop
git clone https://github.com/datopian/ckanext-authz-service.git
cd ckanext-authz-service
python setup.py develop
pip install -r requirements.py2.txt
git clone https://github.com/okfn/ckanext-sentry.git
cd ckanext-sentry/
python setup.py develop
pip install -r requirements.txt
git clone https://github.com/ckan/ckanext-basiccharts.git
cd ckanext-basiccharts/
python setup.py develop
git clone https://github.com/ckan/ckanext-basiccharts.git
cd ckanext-basiccharts
python setup.py develop
git clone https://github.com/datopian/ckanext-visualize.git
cd ckanext-visualize
python setup.py develop
pip install -r requirements.txt
This repository is cloned, to apply a patch for IAEA:
git clone https://github.com/keitaroinc/ckanext-geoview
cd ckanext-geoview
git checkout iaea
python setup.py develop
On tag v0.3.7
:
git clone https://github.com/ckan/ckanext-pages
cd ckanext-pages
git checkout v0.3.7
python setup.py develop
pip install -r requirements.txt
# Initialize the database
paster --plugin=ckanext-pages pages initdb --config=./ckan/development.ini
Cloned, has customization:
git clone https://github.com/keitaroinc/ckanext-dataexplorer-react.git
cd ckanext-dataexplorer-react
git checkout iaea
python setup.py develop
pip install -r requirements.txt
On revision v1.3.0
:
git clone https://github.com/ckan/ckanext-dcat
cd ckanext-dcat
git checkout v1.3.0
python setup.py develop
pip install -r requirements-py2.txt
git clone https://github.com/ckan/ckanext-report.git
cd ckanext-report
python setup.py develop
pip install -r requirements.txt
# Initialize the database
paster --plugin=ckanext-report report initdb --config=./ckan/development.ini
git clone https://github.com/ckan/ckanext-archiver.git
cd ckanext-archiver
python setup.py develop
pip install -r requirements.txt
# Initialize the database for archiver and report
paster --plugin=ckanext-archiver archiver init --config=./ckan/development.ini
paster --plugin=ckanext-report report initdb --config=./ckan/development.ini
git clone [email protected]:keitaroinc/ckanext-qa.git
cd ckanext-qa
python setup.py develop
pip install requirements.txt
# Initialize the database
paster --plugin=ckanext-qa qa init --config=./ckan/development.ini
git clone [email protected]:keitaroinc/ckanext-validation.git
cd ckanext-validation/
git checkout ckan-2.8.2
python setup.py develop
pip install -r requirements.txt
# Initialize the database
paster --plugin=ckanext-validation validation init-db -c ./ckan/development.ini