https://github.com/fccn/rcaap-dspace-additions
Addon do Software DSpace para o Serviço de Alojamento
https://github.com/fccn/rcaap-dspace-additions
Last synced: 4 months ago
JSON representation
Addon do Software DSpace para o Serviço de Alojamento
- Host: GitHub
- URL: https://github.com/fccn/rcaap-dspace-additions
- Owner: fccn
- License: apache-2.0
- Created: 2021-09-08T09:00:34.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2026-02-05T15:16:16.000Z (4 months ago)
- Last Synced: 2026-02-06T01:43:44.334Z (4 months ago)
- Language: PLpgSQL
- Homepage: https://projeto.rcaap.pt/SARI
- Size: 9.61 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Índice
- [Instalação DSpace 7++](#instalação-dspace-7)
- [Configuração](#configuração)
- [Migração](#migração)
- [Docker](#docker)
# Instalação DSpace 7++
Obter o código DSpace **versão 7.6.1**. (nas instruções abaixo, substituir [dspace-version] por `dspace-7.6.1`)
```
git clone --branch [dspace-version] https://github.com/DSpace/DSpace.git DSpace
```
Depois, garantir que o DSpace não tem os `additions` default.
```
cd DSpace/dspace/modules/
mv additions /tmp/
```
Fazer clone do projeto para a diretoria additions em `DSpace/dspace/modules/`:
```
git clone https://github.com/fccn/rcaap-dspace-additions.git additions
```
Mudar de diretoria para additions
```
cd additions
```
Colocar as nossas configurações default:
```
rsync -r --remove-source-files ./src/main/resources/config/ ../../config
```
Colocar as nossas modificações SOLR:
```
rsync -r --remove-source-files ./src/main/resources/solr/ ../../solr
```
Depois, colocar o módulo server:
```
rsync -r --remove-source-files ./src/main/resources/server/ ../server
```
Colocar também os ficheiros executáveis que estão no additions:
```
rsync -r --remove-source-files --chmod=Fu=rwx,Fg=rx,Fo=rx ./src/main/resources/bin/ ../../bin
```
Definir o esquema de **virtual metadata** do OpenAIRE como sendo o default
```
cd ../..
mv config/spring/api/virtual-metadata.xml config/spring/api/virtual-metadata.xml.origin
mv config/spring/api/virtual-metadata.xml.openaire4 config/spring/api/virtual-metadata.xml
```
# Configuração
## Configuração Ciência Vitae
Será necessário adicionar as seguintes configurações ao local.cfg para suporte da API do CV:
```
# cienciavitae api
cienciavitae.url = [URL] Exemplo URL:www.cienciavitae.pt
cienciavitae.api.url = ${cienciavitae.url}/api/v1.1
cienciavitae.api.username = USER
cienciavitae.api.password = PASS
```
O ficheiro pom.xml nos `additions`, depois de seguir os passos da instalação, deverá já incluir a dependência necessária da biblioteca (neste caso, **não é necessário alterar**):
```
....
pt.rcaap
cienciavitae.model
0.0.1-SNAPSHOT
....
```
Depois de seguir os passos de instalação, deverá também existir um ficheiro na diretoria `[DSpace]/config/spring/api/external-cienciavitae.xml` com a configuração do serviço. Caso contrário, o ficheiro a usar estará disponível em: https://github.com/fccn/rcaap-dspace-additions/blob/main/src/main/resources/config/spring/api/external-cienciavitae.xml
## Configuração Depósito a partir do Ciência Vitae
Será necessário colocar no local.cfg as seguintes configurações:
```
# Enable SWORDv2
swordv2-server.enabled = true
swordv2-server.url = ${dspace.server.url}/swordv2
# Ciencia Vitae specific SWORD import mapping stylesheet
crosswalk.submission.MODS.stylesheet = crosswalks/mods-rcaap_cienciavitae-submission.xsl
```
Depois de seguir os passos de instalação, deverá também existir um ficheiro na diretoria `[DSpace]/config/crosswalks/mods-rcaap_cienciavitae-submission.xsl` com a configuração do serviço. Caso contrário, o ficheiro a usar estará disponível em: https://github.com/fccn/rcaap-dspace-additions/blob/main/src/main/resources/config/crosswalks/mods-rcaap_cienciavitae-submission.xsl
Nota: Esta versão do xslt usa para o dc.type openaire4. Contudo, para quem não estiver a usar esta versão, deve optar por incluir a seguinte configuração:
```
dc
type
en_US
Para repositórios que NÃO usem o esquema oiare e sim o esquema degois, devem alterar o oaire/citation de acordo com:
oaire.citation.startPage -> degois.publication.firstPage
oaire.citation.endPage --> depois.publicaiton.firstPage
oaire.publication.title -> degois.publication.title
oaire.publication.location -> degois.publication.location
Os restantes oaire.citation mapear para degois.publication
```
## Configuraração Renates
Será necessário adicionar as seguintes configurações ao local.cfg para suporte da API do Renates:
```
# Renates (TID) API configurations
renates.api.url = https://renates.dgeec.mec.pt/ws/renatesws.asmx/Tese
```
Depois de seguir os passos de instalação, deverá também existir um ficheiro na diretoria `[DSpace]/config/spring/api/external-services-renates.xml` com a configuração do serviço. Caso contrário, o ficheiro a usar estará disponível em: https://github.com/fccn/rcaap-dspace-additions/blob/main/src/main/resources/config/spring/api/external-services-renates.xml
## Configuraração Tarefas de Curadoria
Será necessário adicionar as seguintes configurações ao local.cfg para suporte das tarefas de curadoria específicas RCAAP:
```
# RCAAP Curation tasks
plugin.named.org.dspace.curate.CurationTask = org.dspace.ctask.general.VerifyTID = VerifyTID
plugin.named.org.dspace.curate.CurationTask = org.dspace.ctask.general.CheckDuplicates = CheckDuplicates
plugin.named.org.dspace.curate.CurationTask = org.dspace.ctask.general.EmbargoJustification = JustificationEmbargo
plugin.named.org.dspace.curate.CurationTask = org.dspace.ctask.general.DoiValidator = DoiValidator
plugin.named.org.dspace.curate.CurationTask = org.dspace.ctask.general.PolicyCheck = PolicyCheck
```
# Migração
Este projeto consiste nos incrementos necessários a tornar um DSpace num SARI.
## ANTES DA MIGRAÇÃO - Curadoria prévia na migração DSpace5++ - DSpace7++
Query necessária para identificar publicações com autores repetidos (se bem que estas repetições são ignoradas no processo de migração):
```
SELECT handle FROM handle
WHERE resource_id IN
(SELECT resource_id from metadatavalue
INNER JOIN authorprofile on uuid = authority
WHERE resource_type_id = 2
GROUP BY resource_id, authority
HAVING count(*) > 1)
AND resource_type_id = 2;
```
Por inconsistencias, poderá existir duplicação de `item_id` para o workspaceitem. É necessário esta query para saber se há registos repetidos:
```
select item_id, count (*) from workspaceitem group by item_id having count(*)>1;
```
# Docker
Fazer clone do projeto:
```
git clone https://github.com/fccn/rcaap-dspace-additions.git
```
Fazer o build da imagem Docker (dspace):
```
docker build -t rcaap/dspace -f Dockerfile .
```
Fazer o build da imagem Docker (cli):
```
docker build -t rcaap/dspace-cli -f Dockerfile.cli .
```
E fazer o push das imagens para o Docker Hub para poder ser instalado em qualquer local:
```
docker push rcaap/dspace
```
```
docker push rcaap/dspace-cli
```
As imagens ficarão disponibilizadas aqui:
https://hub.docker.com/u/rcaap