-
Notifications
You must be signed in to change notification settings - Fork 18
Migration to DSpace7.2.1.
This tutorial assumes using docker containers for deployment of dspace. Docker-compose files contain everything needed to start and run docker, including database, solr, matomo and backend. Docker-compose files referenced in command below can be found in repository: https://github.com/dataquest-dev/dspace-angular later on, they will be migrated to this one: https://github.com/ufal/dspace-angular
Dspace was originally deployed on linux server with nginx and some simple configuration of nginx is necessary.
Currently dspace is run using docker-compose as follows:
docker-compose --env-file .env -f docker/docker-compose.yml -f docker/docker-compose-rest.yml -f docker/matomo-w-db.yml pull
docker-compose --env-file .env -p dq-d7 -f docker/docker-compose.yml -f docker/docker-compose-rest.yml -f docker/matomo-w-db.yml up -d --no-build
To successfully run the commands, docker-compose files must be downloaded from repository above and .env file must be created.
Such file should contain the following:
DSPACE_UI_IMAGE=dataquest/dspace-angular:dspace-7_x
DSPACE_REST_IMAGE=dataquest/dspace:dspace-7_x
DOCKER_OWNER=dataquest
DSPACE_REST_HOST=exapmple.com
REST_URL=http://anotherexample:12345/server
UI_URL=http://example.com
To add administrator and other users, use following commands, docker compose files and .env exactly the same as above.
docker-compose --env-file .env -p dq-d7 -f docker/cli.yml run --rm dspace-cli create-administrator -e [email protected] -f firstname -l lastname -p password -c en -o organization
docker-compose --env-file .env -p dq-d7 -f docker/cli.yml run --rm dspace-cli user --add -m [email protected] -g givenname -s surname -l en -p user -o organization
Obviously, it is possible to change parameters like -e for email, -m for email, -f for first name, -g for given name, -s for surname, -l for last name, -p for password, -o for organization. Only use the arguments for command as specified above. Just modify values if needed.
Changes to configurations must be made, all of which are described on this page.
Dspace was run with following versions:
- Linux Ubuntu 20.04.5 LTS
- Docker version 20.10.23, build 7155243
- docker-compose version 1.25.0
- GÉANT Data Protection Code of Conduct redirection
- Content negotiation
- Define a new complex input field:
- Add the new local types to the
local-types.xml
following the file: https://github.com/dataquest-dev/DSpace/pull/61/files#diff-ba28a8e5b00dccb0ded682aacec780f95ff65469dc3c94a65e3f88dcd5dbee35 - Define a new complex input field in the
submission-forms.xml
following the file: https://github.com/dataquest-dev/DSpace/pull/61/files#diff-77423a453977ddd0ec61d9662007d1433998cff5bace5702e91a1c471815241e . NOTE: ignoreautocomplete
field. - Some input fields could be seen only for a specific Item type (type-bind):
- Use the
type-bind
tag in the input-field. Update the input field in thesubmission-forms.xml
following the: https://github.com/dataquest-dev/DSpace/pull/56/files#diff-47993096c9f4173f69f5e9722712ea54753666c578f5b86b691021d973ce1e19R146 NOTE: Intotype-bind
tag define the Item type. - Autocomplete input field - After typing show suggestions. The suggestions are loaded from the existing Item common metadata
- Update the input field in the
submission-forms.xml
following the: https://github.com/dataquest-dev/DSpace/pull/61/files#diff-77423a453977ddd0ec61d9662007d1433998cff5bace5702e91a1c471815241eR88 - OpenAIRE input fields (funding)
- Copy the
funding
complex input field to thesubmission-forms.xml
following the file: https://github.com/dataquest-dev/DSpace/pull/61/files#diff-77423a453977ddd0ec61d9662007d1433998cff5bace5702e91a1c471815241eR76 , Copy the complex input type definition: https://github.com/dataquest-dev/DSpace/pull/61/files#diff-77423a453977ddd0ec61d9662007d1433998cff5bace5702e91a1c471815241eR2011 , do not forget for suggestions: https://github.com/dataquest-dev/DSpace/pull/61/files#diff-77423a453977ddd0ec61d9662007d1433998cff5bace5702e91a1c471815241eR2011 - Show some input fields only for admin
- Add the
<acl>
tag to the input field in thesubmission-forms.xml
following the: https://github.com/dataquest-dev/DSpace/pull/61/files#diff-77423a453977ddd0ec61d9662007d1433998cff5bace5702e91a1c471815241eR2011 - Upload the CMDI file
- For uploading the CMDI files is added the input field only for admin: https://github.com/dataquest-dev/DSpace/pull/49/files#diff-77423a453977ddd0ec61d9662007d1433998cff5bace5702e91a1c471815241eR217
- Upload the big file
- Update the
clarin-dspace.cfg
following the: https://github.com/dataquest-dev/DSpace/pull/89/files#diff-fbee33b14bf8f2227bbc8585dd6ad227dfd7cec081fbf9169e3d79147ce94aa9R15 - How to upload the big file in the item check the wiki: https://github.com/dataquest-dev/DSpace/wiki/For-Users#uploading--files-which-are-bigger-than-maximum-upload-size
- Item Tombstone - when the item is withdrawn and moved into the another repository
- NOTE: the help desk email must be defined in the
clarin-dspace.cfg
propertylr.help.mail
- How to define the tombstone for the Item, check the wiki: https://github.com/dataquest-dev/DSpace/wiki/For-Users#the-item-tombstones
- External and Dead handle provides more information for Handle.net registry
- Define the
shortener
properties in theclarin-dspace.cfg
following the: https://github.com/dataquest-dev/DSpace/pull/103/files#diff-fbee33b14bf8f2227bbc8585dd6ad227dfd7cec081fbf9169e3d79147ce94aa9R46-R52 - Content negotiation (return just data of the item, or cmdi file)
- Set up the NGINX redirection following the wiki: https://github.com/dataquest-dev/DSpace/wiki/Installation#cmdi-data-for-machines
- Config handle prefix for communities (Items with specific handle are assigned into specific community)
- Define the properties in the
clarin-dspace.cfg
following the: https://github.com/dataquest-dev/DSpace/pull/103/files#diff-fbee33b14bf8f2227bbc8585dd6ad227dfd7cec081fbf9169e3d79147ce94aa9R46-R52 - Configure the EPIC Consortium properties: https://github.com/dataquest-dev/DSpace/pull/103/files#diff-fbee33b14bf8f2227bbc8585dd6ad227dfd7cec081fbf9169e3d79147ce94aa9R23-R26
- Support DOI
- Configure DOI following the files from PR: https://github.com/dataquest-dev/DSpace/pull/131/files
- The new License Step was defined here: https://github.com/dataquest-dev/DSpace/pull/161/files#diff-cbecd668e9534b5ef05a6d8838b62d5f2c3f2ea46fdb1e2f980a2cffeee51d4dR144
- Define the expiration time of the restricted item downloading in the
clarin-dspace.cfg
following: https://github.com/dataquest-dev/DSpace/pull/161/files#diff-fbee33b14bf8f2227bbc8585dd6ad227dfd7cec081fbf9169e3d79147ce94aa9R66 - The search filter (facet) is configured here: https://github.com/dataquest-dev/DSpace/pull/148/files#diff-784f45a662bfd20970c15393a3c5b0ee12aec15b79cd892af35e9f4cac56bfe8
- Configure the featured services in the
clarin-dspace.cfg
following the: https://github.com/dataquest-dev/DSpace/pull/179/files#diff-fbee33b14bf8f2227bbc8585dd6ad227dfd7cec081fbf9169e3d79147ce94aa9R79-R88 - Add the
featured service
to the created item by adding the metadatalocal.featuredService.<FEATURED_SERVICE_NAME>
, value should be in the format<LANGUAGE>|<URL>
. You can check the wiki also: https://github.com/dataquest-dev/DSpace/wiki/For-users#add-featured-services-into-item
- After login by the Shibboleth the user could be redirected to the specific groups following the configuration. The groups assigning after Shib login is configured in the: https://github.com/dataquest-dev/DSpace/pull/170/files#diff-fbee33b14bf8f2227bbc8585dd6ad227dfd7cec081fbf9169e3d79147ce94aa9R74-R106
- Configure the Discojuice Feed API URL in the
clarin-dspace.cfg
following the: https://github.com/dataquest-dev/DSpace/pull/166/files#diff-fbee33b14bf8f2227bbc8585dd6ad227dfd7cec081fbf9169e3d79147ce94aa9R77 - Update DiscoJuice in the FE, check the files:
- https://github.com/dataquest-dev/dspace-angular/pull/112/files#diff-7cf721f5c17bd1c997189ec4b8965bd650388c6d4966d005dbc31ab670ce40ea
- https://github.com/dataquest-dev/dspace-angular/pull/112/files#diff-c08f3c4d13c653e3c1d060d99e8f642338d888f56f91f1a70bcb3c643cd72bf8
- https://github.com/dataquest-dev/dspace-angular/pull/112/files#diff-5050fa841a2b08ab0123b7cd28084b775c909897cbd8b537800f08bc209ebcad
- Set up the OAI-PMH reindex CRON Job
- Define the help desk email and phone number in the
clarin-dspace.cfg