swagger
This commit is contained in:
parent
f155e1ca8a
commit
9fa00108d2
|
@ -0,0 +1,14 @@
|
|||
package eu.dnetlib.services.collector;
|
||||
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
|
||||
@Controller
|
||||
public class SwaggerController {
|
||||
|
||||
@RequestMapping("/")
|
||||
public String apiDoc() {
|
||||
return "redirect:swagger-ui/index.html";
|
||||
}
|
||||
|
||||
}
|
|
@ -1,5 +1,6 @@
|
|||
server.title = D-NET Collector API
|
||||
server.description = Simple service to collect metadata
|
||||
server.public_url =
|
||||
server.servlet.context-path=/mail
|
||||
server.public_url =
|
||||
|
||||
maven.pom.path = /META-INF/maven/eu.dnetlib.docker/dnet-collector/effective-pom.xml
|
||||
|
|
|
@ -3,13 +3,15 @@ package eu.dnetlib.utils.mail;
|
|||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import eu.dnetlib.base.AbstractDnetController;
|
||||
import eu.dnetlib.errors.DnetException;
|
||||
import eu.dnetlib.params.EmailMessage;
|
||||
|
||||
@RestController("/mail")
|
||||
@RestController
|
||||
@RequestMapping("/api")
|
||||
public class EmailSenderController extends AbstractDnetController {
|
||||
|
||||
@Autowired
|
||||
|
|
|
@ -0,0 +1,14 @@
|
|||
package eu.dnetlib.utils.mail;
|
||||
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
|
||||
@Controller
|
||||
public class SwaggerController {
|
||||
|
||||
@RequestMapping("/")
|
||||
public String apiDoc() {
|
||||
return "redirect:swagger-ui/index.html";
|
||||
}
|
||||
|
||||
}
|
|
@ -1,5 +1,6 @@
|
|||
server.title = D-NET Mail Sender API
|
||||
server.description = Simple service that sends mails
|
||||
server.servlet.context-path=/mail
|
||||
server.public_url =
|
||||
|
||||
maven.pom.path = /META-INF/maven/eu.dnetlib.docker/dnet-email/effective-pom.xml
|
||||
|
@ -8,3 +9,4 @@ mail.smtpHost = localhost
|
|||
mail.smtpPort = 587
|
||||
mail.smtpUser =
|
||||
mail.smtpPassword =
|
||||
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
server {
|
||||
listen $NGINX_PORT default_server;
|
||||
listen [::]:$NGINX_PORT default_server;
|
||||
|
||||
root /var/www/html;
|
||||
|
||||
index index.html index.htm index.nginx-debian.html;
|
||||
|
||||
server_name _;
|
||||
|
||||
location / {}
|
||||
|
||||
location /mail/ {
|
||||
proxy_pass http://email:8080/mail/;
|
||||
}
|
||||
}
|
|
@ -2,49 +2,65 @@ version: "3"
|
|||
services:
|
||||
collect:
|
||||
build: ./apps/collector
|
||||
ports:
|
||||
- "8080:8080"
|
||||
expose:
|
||||
- ${SPRING_BOOT_PORT}
|
||||
networks:
|
||||
- backend
|
||||
depends_on:
|
||||
- postgresdb
|
||||
- maindb
|
||||
environment:
|
||||
- SPRING_DATASOURCE_URL=jdbc:postgresql://postgresdb:5432/dnet_is
|
||||
- SPRING_DATASOURCE_USERNAME=dnet
|
||||
- SPRING_DATASOURCE_PASSWORD=ax45vs#1A
|
||||
- SPRING_DATASOURCE_URL=jdbc:postgresql://maindb:${PG_PORT}/${PG_MAIN_DB}
|
||||
- SPRING_DATASOURCE_USERNAME=${PG_USER}
|
||||
- SPRING_DATASOURCE_PASSWORD=${PG_PASSWORD}
|
||||
|
||||
email:
|
||||
build: ./apps/email
|
||||
ports:
|
||||
- "8081:8081"
|
||||
expose:
|
||||
- ${SPRING_BOOT_PORT}
|
||||
networks:
|
||||
- backend
|
||||
depends_on:
|
||||
- postgresdb
|
||||
- maindb
|
||||
environment:
|
||||
- SPRING_DATASOURCE_URL=jdbc:postgresql://postgresdb:5432/dnet_is
|
||||
- SPRING_DATASOURCE_USERNAME=dnet
|
||||
- SPRING_DATASOURCE_PASSWORD=ax45vs#1A
|
||||
- SPRING_DATASOURCE_URL=jdbc:postgresql://maindb:${PG_PORT}/${PG_MAIN_DB}
|
||||
- SPRING_DATASOURCE_USERNAME=${PG_USER}
|
||||
- SPRING_DATASOURCE_PASSWORD=${PG_PASSWORD}
|
||||
|
||||
postgresdb:
|
||||
maindb:
|
||||
image: postgres:15.4
|
||||
restart: always
|
||||
ports:
|
||||
- "5432:5432"
|
||||
expose:
|
||||
- ${PG_PORT}
|
||||
networks:
|
||||
- backend
|
||||
environment:
|
||||
POSTGRES_USER: dnet
|
||||
POSTGRES_PASSWORD: ax45vs#1A
|
||||
POSTGRES_DB: dnet_is
|
||||
POSTGRES_USER: ${PG_USER}
|
||||
POSTGRES_PASSWORD: ${PG_PASSWORD}
|
||||
POSTGRES_DB: ${PG_MAIN_DB}
|
||||
volumes:
|
||||
- ./data/sql/schema.sql:/docker-entrypoint-initdb.d/init.sql
|
||||
- pgdata:/var/lib/postgresql/data
|
||||
- pg_main_data:/var/lib/postgresql/data
|
||||
|
||||
mdstoredb:
|
||||
image: postgres:15.4
|
||||
restart: always
|
||||
expose:
|
||||
- ${PG_PORT}
|
||||
networks:
|
||||
- backend
|
||||
environment:
|
||||
POSTGRES_USER: ${PG_USER}
|
||||
POSTGRES_PASSWORD: ${PG_PASSWORD}
|
||||
POSTGRES_DB: ${PG_MDSTORE_DB}
|
||||
volumes:
|
||||
- ./data/sql/mdstore_schema.sql:/docker-entrypoint-initdb.d/init.sql
|
||||
- pg_mdstore_data:/var/lib/postgresql/data
|
||||
|
||||
|
||||
solr:
|
||||
image: solr:9.3.0
|
||||
ports:
|
||||
- "8983:8983"
|
||||
expose:
|
||||
- ${SOLR_PORT}
|
||||
networks:
|
||||
- backend
|
||||
volumes:
|
||||
|
@ -53,11 +69,24 @@ services:
|
|||
- solr-precreate
|
||||
- gettingstarted
|
||||
|
||||
|
||||
reverse-proxy:
|
||||
image: nginx
|
||||
volumes:
|
||||
- ./data/nginx-templates:/etc/nginx/templates
|
||||
ports:
|
||||
- ${PROXY_PORT}:${PROXY_PORT}
|
||||
networks:
|
||||
- frontend
|
||||
- backend
|
||||
environment:
|
||||
- NGINX_PORT=${PROXY_PORT}
|
||||
|
||||
networks:
|
||||
backend:
|
||||
frontend:
|
||||
|
||||
volumes:
|
||||
solrdata:
|
||||
pgdata:
|
||||
|
||||
pg_main_data:
|
||||
pg_mdstore_data:
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
#!/bin/sh
|
||||
|
||||
mvn clean install
|
||||
|
||||
export PROXY_PORT=8888
|
||||
export SPRING_BOOT_PORT=8080
|
||||
export SOLR_PORT=8983
|
||||
|
||||
export PG_PORT=5432
|
||||
export PG_USER=dnet
|
||||
export PG_PASSWORD=ax45vs#1A
|
||||
export PG_MAIN_DB=dnet_is
|
||||
export PG_MDSTORE_DB=dnet_mdstores
|
||||
|
||||
docker-compose up --force-recreate --build
|
||||
|
|
@ -34,10 +34,10 @@
|
|||
<artifactId>maven-model</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- Swagger -->
|
||||
<!-- Swagger -->
|
||||
<dependency>
|
||||
<groupId>org.springdoc</groupId>
|
||||
<artifactId>springdoc-openapi-ui</artifactId>
|
||||
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- for /metrics and /health controllers -->
|
||||
|
|
|
@ -14,7 +14,7 @@ import org.apache.maven.model.io.xpp3.MavenXpp3Reader;
|
|||
import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springdoc.core.GroupedOpenApi;
|
||||
import org.springdoc.core.models.GroupedOpenApi;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.core.io.ClassPathResource;
|
||||
|
|
8
pom.xml
8
pom.xml
|
@ -201,10 +201,10 @@
|
|||
|
||||
<!-- Swagger -->
|
||||
<dependency>
|
||||
<groupId>org.springdoc</groupId>
|
||||
<artifactId>springdoc-openapi-ui</artifactId>
|
||||
<version>1.6.10</version>
|
||||
</dependency>
|
||||
<groupId>org.springdoc</groupId>
|
||||
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
|
||||
<version>2.2.0</version>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
|
||||
|
|
Loading…
Reference in New Issue