Resolve tickets 9114 and 9031 #12

Merged
lsmyrnaios merged 10 commits from develop into master 2024-04-04 15:33:10 +02:00
1 changed files with 45 additions and 76 deletions
Showing only changes of commit 4f1e3a14d4 - Show all commits

121
README.md
View File

@ -1,11 +1,23 @@
# uoa-repository-manager-service (Provide backend)
# OpenAIRE Provide - backend service
## Introduction
OpenAIRE PROVIDE is the content gateway service of OpenAIRE, where data providers are invited to connect scholarly content with OpenAIRE.<br>
OpenAIRE PROVIDE allows repositories, data archives, journals, aggregators, CRIS systems, to enter the OpenAIRE and European Open Science (EOSC) ecosystem and be accessible by millions of researchers, research institutes and networks, research funders, policy makers and citizens.<br>
OpenAIRE PROVIDE lowers any technological barriers, by supporting a series of integrations, therefore, enabling its users to visually access OpenAIRE's services that are responsible for the data harvesting process.
<br><br>
There are four distinctive steps from the initial express of interest for OpenAIRE PROVIDE to the actual content availability on OpenAIRE and EOSC.
<br>
The steps indicate the important subservices of OpenAIRE that perform the following functionalities:
- Validation of data sources with the OpenAIRE guidelines (via the OpenAIRE Validator)
- Registration of data sources to OpenAIRE and global interlinked networks provides links to content for text and data mining, view history of validations, status of harvesting Enrichment of metadata information that describes the data sources to be available through OpenAIRE.
- Subscribe and view/receive notifications to enrich the metadata or the content of the data source (via the OpenAIRE Broker)
- View usage statistics of Open research impact by subscribing to the OpenAIRE UsageCounts service; view aggregated, cleaned usage stats for repository access and broaden your mechanisms for impact assessment.
<br>
## Architecture
[...]
<br>
<br>
<br>
## Building
@ -25,8 +37,6 @@ The backend is a [Maven](https://maven.apache.org/index.html) project. It has be
3. Build Maven project
<br> `mvn clean package`
<br> Produces the file "./target/**uoa-repository-manager-service.jar**" which can be run with: - Run the app with: `java -jar ./target/uoa-repository-manager-service.jar`
<br><br>
<br><br>
#### Build using Docker
The repository contains a **Dockerfile** which can be used to build an image containing the compiled project.
@ -41,34 +51,9 @@ The repository contains a **Dockerfile** which can be used to build an image con
3. Build Docker image
<br> `docker build . -t <docker-image-name>`
## Deployment
### Prerequisites
* [PostgreSQL 9.5+](https://www.postgresql.org/)
[...]
### Instructions
Execute `java -jar ./target/uoa-repository-manager-service.jar`
## Installation
### Prerequisites
* [PostgreSQL 9.5+](https://www.postgresql.org/)
### Infrastructure Installation and Configuration
Install all software found in the list of [Prerequisites](#Prerequisites) using the official documentation.
#### PostgreSQL - Configuration
[...]
<br>
## Configuration
The configuration can be set inside the **src/main/resources/application.yml** file.
### Server-related configuration.
@ -111,7 +96,7 @@ services:
dev-machine: 88.197.53.71 # VM-71
```
#### Configuration about Authentication and authorization infrastructure (AAI).
### Configuration about Authentication and authorization infrastructure (AAI).
```
aai:
baseURL: https://aai.openaire.eu
@ -130,14 +115,7 @@ services:
url: ${services.provide.aai.baseURL}/registry/
```
#### [...]
```
adminEmail: XX
analyticsURL: https://analytics.openaire.eu/addsite.php?
baseUrl: ${services.openaireServicesBaseUrl}/openaire
```
#### Broker's configuration
### Broker's configuration
```
broker:
api: api/
@ -146,7 +124,7 @@ services:
url: https://beta.broker.openaire.eu
```
#### Client's configuration
### Client's configuration
```
clients:
dsm: ${services.provide.baseUrl}
@ -155,7 +133,7 @@ services:
usagestats: ${services.openaireServicesBaseUrl}/usagestats
```
#### Database configuration for Provide.
### Database configuration for Provide.
```
db:
driverClassName: org.postgresql.Driver
@ -164,13 +142,13 @@ services:
username: dnet
```
#### Configuration for the IS LookUp service.
### Configuration for the IS LookUp service.
```
iSLookUpService:
url: https://dev-openaire.d4science.org:443/is/services/isLookUp
```
#### Mail-server configuration.
### Mail-server configuration.
```
mail:
authenticate: true
@ -184,7 +162,7 @@ services:
username: XX
```
#### Redis's configuration
### Redis's configuration
```
redis:
host: vereniki.athenarc.gr
@ -192,10 +170,8 @@ services:
port: 6379
```
#### [...]
### Usage statistics
```
topic_types:
url: ${services.openaireServicesBaseUrl}/provision/mvc/vocabularies/dnet:topic_types.json # TODO - Check this! The requested json file does not exist in the DEV-url below)
usageStatisticsDiagramsBaseURL: https://beta.openaire.eu/stats3/
usageStatisticsNumbersBaseURL: ${services.openaireServicesBaseUrl}/usagestats/datasources/
usagestats:
@ -204,7 +180,7 @@ services:
sushiliteR5Endpoint: ${services.openaireServicesBaseUrl}/usagestats_r5/sushilite/r5/
```
#### Validator - related configuration.
### Validator - related configuration.
```
validator:
results:
@ -213,37 +189,30 @@ services:
url: http://${services.provide.dev-machine}:8080/uoa-validator-service/services/validatorWebService
```
### Miscellaneous
```
topic_types:
url: ${services.openaireServicesBaseUrl}/provision/mvc/vocabularies/dnet:topic_types.json
adminEmail: XX
analyticsURL: https://analytics.openaire.eu/addsite.php?
baseUrl: ${services.openaireServicesBaseUrl}/openaire
```
<br>
<br>
## Deployment
### Prerequisites
* install [PostgreSQL 9.5+](https://www.postgresql.org/)
* Run the app with: `java -jar ./target/uoa-repository-manager-service.jar --spring.config.location=application.yml`
<br>
## Security
## Maintenance
## Recovery
## References
<br>
<br>
<br>
---
## misc
### Notes for Swagger-UI:
- Access it through this url: http://localhost:8480/uoa-repository-manager-service/swagger-ui/index.html
- In order to request data from most endpoints, you have to be a "REGISTERED_USER", otherwise you will get a 403 error code.
- In order to be a registered user, you have to run the [UI-service](https://code-repo.d4science.org/MaDgIK/uoa-repository-manager-ui) , in the same machine, at the same time and login through a browser, using the following url: http://localhost:8480/uoa-repository-manager-service/openid_connect_login
## Introduction
## Architecture
## Bulding
## Deployment
## Installation
## Configuration
## Security
## Maintenance
## Recovery
## References
- In order to be a registered user, you have to run the [UI-service](https://code-repo.d4science.org/MaDgIK/uoa-repository-manager-ui) , in the same machine, at the same time and login through a browser, using the following url: http://localhost:8480/uoa-repository-manager-service/openid_connect_login