This repository contains configuration files and documentation about getting InvenioRDM productive.
This includes values.yaml
files for helm based database setup, messaging setup, etc. and documentation
of the decisions made.
Every component is documented in it's own subdirectory.
The deployment of InvenioRDM consists of several products:
- PostgreSQL
- RabbitMQ
- ElasticSearch
- Redis
The documentations on how to setup the components are available for PostgreSQL, RabbitMQ, ElasticSearch and Redis.
For this task I've created a VirtualBox image from the latest CentOS 7 with the
dependencies intalled. Don't forget to activate the network connection after startup
of the VM.
With pip
installed call
sudo pip install -U invenio-cli
to upgrade to the latest available version of invenio-cli
. Before using it to scaffold
the new version of InvenioRDM make sure you are using the correct version of node/npm! Then call
invenio-cli init rdm -c vx.y
Make sure to choose the correct Python version available (actually 3.9).
The InvenioRDM instance is mainly configured in the values.yaml
of the InvenioRDM helm chart. However, make sure
the main configuration file invenio.cfg
contains the section
SQLALCHEMY_ENGINE_OPTIONS = {
'pool_pre_ping': True,
'max_overflow': 10,
'pool_size': 5,
'pool_recycle': 3600,
'pool_timeout': 30,
}
Next call
invenio-cli install --pre
Especially important for WWU:
- produce a file names.yaml
- produce a file subjects_gnd.yaml
- produce a file subjects_ddc_german.yaml
- produce a file resource_types.yaml and put them into the app_data/vocabularies directory. The latest three files must be added to app_data/vocabularies.yaml. The names.yaml will be imported another way.
Build the docker image with
docker build -t ulb.wwu.io/wwurdm/invenio:x.y.0 . --build-arg include_assets=true
docker push ulb.wwu.io/wwurdm/invenio:x.y.0
First, creat a certificate, run
kubectl apply -f certificate.yml -n invenio