Code development platform for open source projects from the European Union institutions :large_blue_circle: EU Login authentication by SMS has been phased out. To see alternatives please check here

Skip to content
Snippets Groups Projects
Commit d14655a8 authored by Marco Amoia's avatar Marco Amoia
Browse files

Merge branch 'release' into 'main'

Update version 1.2.0

See merge request !130
parents e54d688c a6118c88
No related branches found
No related tags found
2 merge requests!132Update version 1.3.0-RC,!130Update version 1.2.0
Pipeline #280109 failed
Showing
with 184 additions and 3408 deletions
......@@ -3,13 +3,13 @@ kind: ConfigMap
metadata:
name: {{ .Chart.Name }}-configmap
data:
SPRING_DATASOURCE_URL: "{{ .Values.db.url }}"
SPRING_DATASOURCE_USERNAME: "{{ .Values.db.username }}"
SPRING_DATASOURCE_PASSWORD: "{{ .Values.db.password }}"
SPRING_DATASOURCE_URL: {{ tpl .Values.db.url . | quote }}
SPRING_DATASOURCE_USERNAME: {{ .Values.db.username | quote }}
SPRING_DATASOURCE_PASSWORD: {{ .Values.db.password | quote }}
MICROSERVICE_IDENTITY_PROVIDER_URL: "{{ .Values.microservices.identityProviderUrl }}"
MICROSERVICE_USERS_ROLES_URL: "{{ .Values.microservices.usersRolesUrl }}"
MICROSERVICE_IDENTITY_PROVIDER_URL: {{ tpl .Values.microservices.identityProviderUrl . | quote }}
MICROSERVICE_USERS_ROLES_URL: {{ tpl .Values.microservices.usersRolesUrl . | quote }}
{{- if ne ((.Values.scheduledTask).rejectionOfStaleOnboardingRequests).cron nil }}
SCHEDULEDTASK_REJECTIONOFSTALEONBOARDINGREQUESTS_CRON: "{{ ((.Values.scheduledTask).rejectionOfStaleOnboardingRequests).cron }}"
SCHEDULEDTASK_REJECTIONOFSTALEONBOARDINGREQUESTS_CRON: {{ ((.Values.scheduledTask).rejectionOfStaleOnboardingRequests).cron | quote }}
{{- end }}
......@@ -106,9 +106,9 @@ tolerations: []
affinity: {}
db:
url: "jdbc:postgresql://postgresql.{{ .Release.Namespace }}.svc.cluster.local:5432/onboarding"
username: "onboarding"
password: "onboarding"
url: jdbc:postgresql://postgresql.{{ .Release.Namespace }}.svc.cluster.local:5432/onboarding
username: onboarding
password: onboarding
microservices:
identityProviderUrl: http://identity-provider.{{ .Release.Namespace }}.svc.cluster.local:8080
......
openapi: 3.0.1
info:
title: OpenAPI definition
version: 1.1.0
description: OpenAPI definition for the Onboarding component of the SIMPL project
license:
name: European Union Public License (EUPL) 1.2
url: https://interoperable-europe.ec.europa.eu/sites/default/files/custom-page/attachment/eupl_v1.2_en.pdf
title: Onboarding OpenAPI definition
version: 1.2.0
servers:
- description: onboarding
url: /v1
tags:
- description: API for managing Onboarding Templates
name: Onboarding Templates
- description: API for managing Onboarding Validation Rules
name: Onboarding Validation Rules
- description: API for managing Mime Types
name: Mime Types
- description: API for managing Onboarding Requests Management
......@@ -16,6 +22,8 @@ tags:
name: Onboarding Statuses
- description: API for managing Participant Types
name: Participant Types
- description: API for retrieving information about the running application
name: Application Info
paths:
/onboardingProcedureTemplates/{onboardingProcedureTemplateId}/validationRules:
get:
......@@ -113,7 +121,7 @@ paths:
description: Forbidden
summary: Create an onboarding validation rule
tags:
- onboardingValidationRule
- Onboarding Validation Rules
/onboardingProcedureTemplates/{onboardingProcedureTemplateId}/validationRules/{validationRuleId}:
get:
description: Retrieve an onboarding validation rule by id
......@@ -158,7 +166,7 @@ paths:
description: Forbidden
summary: Retrieve an onboarding validation rule by id
tags:
- onboardingValidationRule
- Onboarding Validation Rules
put:
description: Update an onboarding validation rule
operationId: updateValidationRule
......@@ -221,7 +229,7 @@ paths:
description: Forbidden
summary: Update an onboarding validation rule
tags:
- onboardingValidationRule
- Onboarding Validation Rules
/onboardingProcedureTemplates/{onboardingProcedureTemplateId}:
delete:
description: Deletes the onboarding template by id.
......@@ -567,6 +575,7 @@ paths:
- Onboarding Requests Management
/onboardingRequests/{id}/submit:
post:
description: Submits the onboarding request
operationId: submit
parameters:
- explode: false
......@@ -586,12 +595,14 @@ paths:
description: OK
security:
- oauth2AuthCode: []
summary: Submits the onboarding request
tags:
- Onboarding Requests Management
x-simpl-roles:
- APPLICANT
/onboardingRequests/{id}/requestRevisions:
/onboardingRequests/{id}/requestRevision:
post:
description: Approve the onboarding request
operationId: requestRevision
parameters:
- explode: false
......@@ -611,10 +622,12 @@ paths:
description: OK
security:
- oauth2AuthCode: []
summary: Approve the onboarding request
tags:
- Onboarding Requests Management
/onboardingRequests/{id}/reject:
post:
description: Rejects the onboarding request
operationId: reject
parameters:
- explode: false
......@@ -640,6 +653,7 @@ paths:
description: OK
security:
- oauth2AuthCode: []
summary: Rejects the onboarding request
tags:
- Onboarding Requests Management
x-simpl-roles:
......@@ -732,6 +746,7 @@ paths:
- NOTARY
/onboardingRequests/{id}/approve:
post:
description: Approve the onboarding request
operationId: approve
parameters:
- explode: false
......@@ -757,6 +772,7 @@ paths:
description: OK
security:
- oauth2AuthCode: []
summary: Approve the onboarding request
tags:
- Onboarding Requests Management
x-simpl-roles:
......@@ -1085,6 +1101,8 @@ paths:
- NOTARY
/onboardingRequests/{onboardingRequestId}/documents/{documentId}:
delete:
description: Deletes a document from a particular onboarding request by the
document id
operationId: deleteDocument
parameters:
- explode: false
......@@ -1108,6 +1126,7 @@ paths:
description: No Content
security:
- oauth2AuthCode: []
summary: Deletes a document by id
tags:
- Onboarding Requests Management
x-simpl-roles:
......@@ -1190,6 +1209,22 @@ paths:
- Mime Types
x-simpl-roles:
- T2IAA_M
/info/version:
get:
description: Retrieve information about the version of the running application
operationId: version
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/ApplicationVersion'
description: Version information returned successfully
security:
- oauth2AuthCode: []
summary: Retrieve information about the version of the running application
tags:
- Application Info
components:
examples:
get-validation-rules-response: {}
......@@ -1691,6 +1726,7 @@ components:
required:
- rejectionCause
type: object
x-implements: eu.europa.ec.simpl.api.onboarding.v1.model.Reject
OnboardingRequest:
description: Onboarding request representation
example:
......@@ -2853,6 +2889,28 @@ components:
format: uri
type: string
type: object
ApplicationVersion:
example:
git:
commit:
id: id
time: time
branch: branch
build:
artifact: artifact
name: name
time: time
version: version
group: group
properties:
git:
$ref: '#/components/schemas/ApplicationVersion_git'
build:
$ref: '#/components/schemas/ApplicationVersion_build'
required:
- build
- git
type: object
search_filter_parameter:
properties:
lastStatusUpdateTimestampTo:
......@@ -2878,7 +2936,64 @@ components:
status:
type: string
type: object
ApplicationVersion_git_commit:
example:
id: id
time: time
properties:
id:
type: string
time:
type: string
required:
- id
- time
type: object
ApplicationVersion_git:
example:
commit:
id: id
time: time
branch: branch
properties:
branch:
type: string
commit:
$ref: '#/components/schemas/ApplicationVersion_git_commit'
required:
- branch
- commit
type: object
ApplicationVersion_build:
example:
artifact: artifact
name: name
time: time
version: version
group: group
properties:
artifact:
type: string
name:
type: string
time:
type: string
version:
type: string
group:
type: string
required:
- artifact
- group
- name
- time
- version
type: object
securitySchemes:
mtls:
description: SIMPL mTLS
scheme: http
type: http
oauth2AuthCode:
flows:
authorizationCode:
......
This diff is collapsed.
This diff is collapsed.
PROJECT_VERSION_NUMBER="1.1.0"
PROJECT_VERSION_NUMBER="1.2.0"
......@@ -5,7 +5,7 @@
<parent>
<groupId>eu.europa.ec.simpl</groupId>
<artifactId>simpl-parent</artifactId>
<version>1.1.0</version>
<version>1.2.0</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
......@@ -13,7 +13,7 @@
<packaging>jar</packaging>
<name>onboarding</name>
<description>OnBoarding Microservice for SIMPL project</description>
<version>1.1.0</version>
<version>1.2.0</version>
<dependencies>
<dependency>
......@@ -113,11 +113,22 @@
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>build-info</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
</plugin>
<plugin>
<groupId>io.github.git-commit-id</groupId>
<artifactId>git-commit-id-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
......
package eu.europa.ec.simpl.onboarding.controllers;
import eu.europa.ec.simpl.api.common.ApplicationVersionDTO;
import eu.europa.ec.simpl.api.onboarding.v1.exchanges.ApplicationInfoApi;
import eu.europa.ec.simpl.common.services.ApplicationInfoService;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("v1")
public class ApplicationInfoController implements ApplicationInfoApi {
private final ApplicationInfoService service;
public ApplicationInfoController(ApplicationInfoService service) {
this.service = service;
}
@Override
public ApplicationVersionDTO version() {
return service.version();
}
}
......@@ -7,10 +7,10 @@ import jakarta.persistence.Entity;
import jakarta.persistence.FetchType;
import jakarta.persistence.Id;
import jakarta.persistence.JoinColumn;
import jakarta.persistence.Lob;
import jakarta.persistence.ManyToOne;
import jakarta.persistence.Table;
import java.sql.Types;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;
import java.time.Instant;
import java.util.UUID;
import lombok.Getter;
......@@ -19,7 +19,6 @@ import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import org.hibernate.annotations.CreationTimestamp;
import org.hibernate.annotations.JdbcTypeCode;
import org.hibernate.annotations.UpdateTimestamp;
@Accessors(chain = true)
......@@ -42,11 +41,11 @@ public class Comment {
@Column(name = "author", nullable = false)
private String author;
@Lob
@Basic(fetch = FetchType.LAZY)
@ToString.Exclude
@JdbcTypeCode(Types.VARCHAR)
@Column(name = "content", nullable = false, length = 5000)
@Size(min = 1, max = 5000)
@NotBlank
private String content;
@CreationTimestamp
......
......@@ -23,6 +23,7 @@ public interface OnboardingApplicantMapper {
OnboardingApplicantDTO toDto(OnboardingApplicant applicant);
@Mapping(target = "id", ignore = true)
@Mapping(target = "enabled", constant = "true")
@BeanMapping(unmappedTargetPolicy = ReportingPolicy.ERROR)
KeycloakUserDTO toKeycloakUserDto(OnboardingApplicantDTO applicantDTO, List<String> roles);
}
......@@ -3,6 +3,7 @@ package eu.europa.ec.simpl.onboarding.statemachine.common;
import eu.europa.ec.simpl.common.exceptions.RuntimeWrapperException;
import java.util.ArrayList;
import java.util.List;
import java.util.Optional;
import java.util.function.Consumer;
import lombok.Data;
import org.springframework.messaging.support.MessageBuilder;
......@@ -97,9 +98,9 @@ public class GenericStateMachine<S extends State> {
var result = sm.sendEvent(Mono.just(message)).collectList().block();
var exception = message.getHeaders()
.get(EXCEPTION_HOLDER_KEY, ExceptionHolder.class)
.getException();
var exception = Optional.ofNullable(message.getHeaders().get(EXCEPTION_HOLDER_KEY, ExceptionHolder.class))
.map(ExceptionHolder::getException)
.orElse(null);
if (exception != null) {
throw runtimeExceptionOf(exception);
......
......@@ -55,7 +55,6 @@ public class OnboardingStateMachine {
stateMachine.listeners().add(stateListener);
stateMachine.reset(onboardingStateMapper.toOnboardingState(
onboardingRequest.getOnboardingStatus().getValue()));
stateMachine.start();
var payload = new OnboardingPayload<>(onboardingRequest, actionPayload);
payload.setInitiatorUserId(jwtService.isAuthenticated() ? jwtService.getUserId() : null);
......
......@@ -5,7 +5,7 @@ spring:
password: onboarding
server:
port: 8080
port: 8084
logging:
config: classpath:log4j2-local.xml
......
......@@ -23,6 +23,13 @@ microservice:
identity-provider:
url: [IDENTITY_PROVIDER_URL]
management:
info:
git:
enabled: true
build:
enabled: true
scheduledTask:
rejectionOfStaleOnboardingRequests:
cron: "* */15 * * * *"
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment