Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PR for v1.5.0 #132

Merged
merged 77 commits into from
Dec 3, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
77 commits
Select commit Hold shift + click to select a range
529f0eb
Create PR for #116
ThomasJejkal Apr 18, 2023
5bbcfaf
Create PR for #118
ThomasJejkal May 31, 2023
38e6b4b
Fix 118, Added system property org.apache.tomcat.util.buf.UDecoder.AL…
ThomasJejkal May 31, 2023
42e0bf1
Merge pull request #119 from kit-data-manager/issue-118-Improper_deal…
ThomasJejkal May 31, 2023
ded6938
Merge branch 'main' into development
ThomasJejkal Jun 22, 2023
e0a4890
Started updating to spring-boot 3.1.0
ThomasJejkal Jun 28, 2023
b4faa9e
Migration to Spring Boot 3 finished
ThomasJejkal Jul 31, 2023
761482d
Update gradle.yml
ThomasJejkal Jul 31, 2023
24604eb
Merge pull request #117 from kit-data-manager/issue-116-Bump_CodeQL_f…
ThomasJejkal Jul 31, 2023
5e5d0e2
Update dependencies
ThomasJejkal Jul 31, 2023
471d49b
Merge branch 'development' of https://github.com/kit-data-manager/bas…
ThomasJejkal Jul 31, 2023
f7c9bca
Merge branch 'main' into development
ThomasJejkal Jul 31, 2023
65f4d21
Update gradle.yml
ThomasJejkal Jul 31, 2023
634e435
Update docker-publish.yml
ThomasJejkal Jul 31, 2023
bd15c47
Update codeql-analysis.yml
ThomasJejkal Jul 31, 2023
d1dfa64
Bump com.bazaarvoice.jolt:json-utils from 0.1.7 to 0.1.8
dependabot[bot] Jul 31, 2023
32fc297
Fix #131, user-provided @Ids are now removed
ThomasJejkal Aug 1, 2023
591229b
Merge branch 'development' of https://github.com/kit-data-manager/bas…
ThomasJejkal Aug 1, 2023
236da8a
Update changelog, cleanup and documentation of EntityUtils
ThomasJejkal Aug 1, 2023
fb1b487
Bump com.h2database:h2 from 2.1.214 to 2.2.224
dependabot[bot] Sep 18, 2023
5224b9e
Bump de.codecentric:spring-boot-admin-starter-client from 3.1.0 to 3.1.7
dependabot[bot] Sep 25, 2023
0b353d1
Bump com.nimbusds:nimbus-jose-jwt from 9.24.3 to 9.37
dependabot[bot] Oct 16, 2023
6d0bdb1
Create INTERFACE.md
ThomasJejkal Oct 19, 2023
41e46e3
Update INTERFACE.md
ThomasJejkal Oct 19, 2023
13cde44
Update INTERFACE.md
ThomasJejkal Oct 20, 2023
a327185
Update INTERFACE.md
ThomasJejkal Oct 20, 2023
90541bb
Update INTERFACE.md
ThomasJejkal Oct 20, 2023
c0e9ed6
Shrink TOC and add some Emojis
VolkerHartmann Oct 20, 2023
392a988
Unify emojis for 'configuration', put emoji in front of 'Note' and typo.
VolkerHartmann Oct 20, 2023
4969dd2
External emojis replaced by existing ones.
VolkerHartmann Oct 20, 2023
c0caacc
Replace messaging emoji
VolkerHartmann Oct 20, 2023
36536a1
Fix typos.
VolkerHartmann Oct 20, 2023
06f0d74
Fix links in TOC of 'INTERFACE.md'.
VolkerHartmann Oct 23, 2023
9512c51
Fix link in INTERFACE.md
VolkerHartmann Oct 23, 2023
ad2a18c
Fix two more links in INTERFACE.md
VolkerHartmann Oct 23, 2023
742f514
Bump org.springframework.boot from 3.1.0 to 3.1.5
dependabot[bot] Oct 23, 2023
536e50d
Merge pull request #150 from VolkerHartmann/fixInterface.md
ThomasJejkal Oct 25, 2023
cddf61b
Merge branch 'development' into interface_documentation
ThomasJejkal Oct 25, 2023
dd67815
Merge pull request #148 from kit-data-manager/dependabot/gradle/devel…
ThomasJejkal Oct 26, 2023
06c391a
Merge pull request #151 from kit-data-manager/dependabot/gradle/devel…
ThomasJejkal Oct 26, 2023
0f8528d
Merge pull request #146 from kit-data-manager/dependabot/gradle/devel…
ThomasJejkal Oct 26, 2023
87e3e70
Merge pull request #143 from kit-data-manager/dependabot/gradle/devel…
ThomasJejkal Oct 26, 2023
33564f7
Merge pull request #136 from kit-data-manager/dependabot/gradle/devel…
ThomasJejkal Oct 26, 2023
06beae2
Merge pull request #149 from VolkerHartmann/interface_documentation
ThomasJejkal Oct 26, 2023
384ca75
Bump org.springframework:spring-messaging from 6.0.2 to 6.0.13
dependabot[bot] Oct 30, 2023
16b2aed
Bump org.owasp.dependencycheck from 8.3.1 to 8.4.2
dependabot[bot] Oct 30, 2023
449a502
Bump org.springframework.cloud:spring-cloud-starter-netflix-eureka-cl…
dependabot[bot] Oct 30, 2023
5ac9317
Tidy up note about relational databases in INTERFACE.md
pjoKIT Nov 15, 2023
c07433f
Merge pull request #156 from kit-data-manager/dependabot/gradle/devel…
dependabot[bot] Nov 20, 2023
c3482c5
Merge pull request #155 from kit-data-manager/dependabot/gradle/devel…
dependabot[bot] Nov 20, 2023
14b5b5e
Merge pull request #154 from kit-data-manager/dependabot/gradle/devel…
dependabot[bot] Nov 20, 2023
d5c866e
Bump org.springframework.security:spring-security-config
dependabot[bot] Nov 20, 2023
8579cc4
Bump org.springframework.data:spring-data-elasticsearch
dependabot[bot] Nov 20, 2023
fce43ec
Merge pull request #153 from kit-data-manager/dependabot/gradle/devel…
dependabot[bot] Nov 20, 2023
5f5f307
Merge pull request #157 from kit-data-manager/dependabot/gradle/devel…
dependabot[bot] Nov 20, 2023
111010b
Bump org.owasp.dependencycheck from 8.4.2 to 8.4.3
dependabot[bot] Nov 20, 2023
ca4c263
Bump org.springframework.security:spring-security-web
dependabot[bot] Nov 20, 2023
d041dd6
Bump de.codecentric:spring-boot-admin-starter-client from 3.1.7 to 3.1.8
dependabot[bot] Nov 20, 2023
1bdf236
Bump org.postgresql:postgresql from 42.6.0 to 42.7.0
dependabot[bot] Nov 20, 2023
9be8dc7
Merge pull request #162 from kit-data-manager/dependabot/gradle/devel…
dependabot[bot] Nov 21, 2023
73ffa5e
Merge pull request #161 from kit-data-manager/dependabot/gradle/devel…
dependabot[bot] Nov 21, 2023
219414c
Merge pull request #160 from kit-data-manager/dependabot/gradle/devel…
dependabot[bot] Nov 21, 2023
ae50c23
Bump org.springframework:spring-messaging from 6.0.13 to 6.1.0
dependabot[bot] Nov 21, 2023
4b8fb9d
Merge pull request #158 from kit-data-manager/dependabot/gradle/devel…
dependabot[bot] Nov 21, 2023
3635d1b
Merge pull request #159 from kit-data-manager/dependabot/gradle/devel…
dependabot[bot] Nov 21, 2023
660e86f
Bump org.springframework.cloud:spring-cloud-starter-config
dependabot[bot] Nov 27, 2023
d9f17db
Bump io.freefair.maven-publish-java from 8.0.1 to 8.4
dependabot[bot] Nov 27, 2023
3989fcd
Fixed elastic configuration, updated OpenAPI version number for next …
ThomasJejkal Dec 2, 2023
6152283
Merge pull request #166 from kit-data-manager/dependabot/gradle/devel…
dependabot[bot] Dec 2, 2023
a98cb5a
Bump io.freefair.lombok from 8.0.1 to 8.4
dependabot[bot] Dec 2, 2023
ca149ea
Merge pull request #164 from kit-data-manager/dependabot/gradle/devel…
dependabot[bot] Dec 2, 2023
7811e41
Merge pull request #163 from kit-data-manager/dependabot/gradle/devel…
dependabot[bot] Dec 2, 2023
075bfe0
Bump org.owasp.dependencycheck from 8.4.3 to 9.0.2
dependabot[bot] Dec 2, 2023
f67c514
Merge pull request #169 from kit-data-manager/dependabot/gradle/devel…
dependabot[bot] Dec 2, 2023
748ad66
Updated spring-security to 6.2.0, fixed CORS configuration
ThomasJejkal Dec 2, 2023
7e90888
Cleanup EntityUtils.java
ThomasJejkal Dec 3, 2023
d12abcd
Update README.md
ThomasJejkal Dec 3, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ jobs:

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
uses: github/codeql-action/init@v2
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
Expand All @@ -53,7 +53,7 @@ jobs:
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v1
uses: github/codeql-action/autobuild@v2

# ℹ️ Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl
Expand All @@ -67,4 +67,4 @@ jobs:
# make release

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1
uses: github/codeql-action/analyze@v2
2 changes: 1 addition & 1 deletion .github/workflows/docker-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ jobs:
uses: actions/setup-java@v2
with:
distribution: 'zulu'
java-version: 11
java-version: 17
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build with Gradle
Expand Down
5 changes: 2 additions & 3 deletions .github/workflows/gradle.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,12 @@ name: build with gradle

on:
push:
branches: [ master, main, dev ]
branches: [ master, main, development ]
pull_request:
branches: [ master, main ]

env:
# JDK version used for building jar file
currentBuildVersion: 8
currentBuildVersion: 17
jobs:
build:
runs-on: ${{ matrix.operating-system }}
Expand Down
32 changes: 27 additions & 5 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,36 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

Security

Added

Changed
* Java 17 is now mandatory
* Indexing support now requires Elastic 8+

Fixed
* Correctly ignore user-provided primary keys (https://github.com/kit-data-manager/base-repo/pull/131)

Security
* Bump spring-boot to 3.1.0
* Bump spring-cloud-starter-config to 4.0.3
* Bump spring-cloud-starter-netflix-eureka-client to 4.0.2
* Bump spring-cloud-gateway-mvc to 4.0.6
* Bump spring-data-elasticsearch to 5.1.2
* Bump spring-messaging to 6.0.2
* Bump spring-security-web to 6.1.1
* Bump spring-security-config to 6.1.1
* Bump spring-boot-admin-starter-client to 3.1.0
* Bump io.spring.dependency-management to 1.1.0
* Bump io.freefair.lombok to 8.0.1
* Bump io.freefair.maven-publish-java to 8.0.1
* Bump org.owasp.dependencycheck to 8.3.1
* Bump net.researchgate.release to 3.0.2
* Bump com.gorylenko.gradle-git-properties to 2.4.1
* Bump javers-core to 7.0.0
* Bump httpclient to 4.5.14
* Bump postgresql to 42.6.0
* Bump spring-restdocs-mockmvc to 3.0.0
* Bump mockito-inline to 5.2.0
* Bump repo-core to 1.2.1
* Bump service-base to 1.2.0

## [1.4.0] - 2023-03-17

Expand Down
117 changes: 117 additions & 0 deletions INTERFACE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
# Interfaces Overview for base-repo

This document aims to answer questions on how to configure external dependencies and which public interfaces are offered by base-repo in a comprehensive way.
It is meant to be used for getting an overview and guidance in addition to the official documentation, which is available at the official [base-repo web page](https://kit-data-manager.github.io/webpage/base-repo/).

> ℹ️ **Note:**
> This document applies to the base-repo version it is shipped with. If you have a specific version running, please refer to `INTERFACE.md` of this particular release.

## TOC

- [Interfaces Overview for base-repo](#interfaces-overview-for-base-repo)
* [External Dependencies](#external-dependencies-) 📤
+ [Relational Database (mandatory)](#relational-database-mandatory-) ⛁
+ [Local Filesystem (mandatory)](#local-filesystem-mandatory-) 📂
+ [Messaging (optional)](#messaging-optional-) 💬
+ [Enhanced Search (optional)](#enhanced-search-optional-) 🔍
+ [Access Control (optional)](#access-control-optional-) 🔐
* [Public Interfaces](#public-interfaces-) 📥
+ [HTTP / REST](#http--rest)
+ [Elasticsearch Proxy](#elasticsearch-proxy-) 🔍
+ [OAI-PMH](#oai-pmh)
+ [Digital Object Interface Protocol (DOIP)](#digital-object-interface-protocol-doip)


## External Dependencies 📤

External dependencies are third-party services that are required for base-repo to work properly or that can be added optionally to provide additional functionality. Typically, external dependencies require
additional software to be installed and configured, before they can be included in the base-repo configuration, which is typically done via the main configuration file `application.properties`.

### Relational Database (mandatory) ⛁
A relational database is required by base-repo to store administrative metadata for resources and content information. If not configured properly, base-repo will fail to start.

#### Configuration ⚙️
- H2 In-Memory (driver included, used for testing, not recommended for production) [Example](https://github.com/kit-data-manager/base-repo/blob/4e90c6aeaced4715d419482f3cb127cddc85bd37/src/test/resources/test-config/application-test.properties#L31-L34)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For better readability it may be better to use a tag instead of the id of the commit.
e.g.: https://github.com/kit-data-manager/base-repo/blob/v1.4.0/src/test/resources/test-config/application-test.properties#L31-34
Cons:
May cause problems when referencing future tags.

- H2 File-Based (driver included, used for basic Docker setup, not recommended for production) [Example](https://github.com/kit-data-manager/base-repo/blob/4e90c6aeaced4715d419482f3cb127cddc85bd37/config/application-docker.properties#L17C1-L24)
- PostgreSQL (driver included, requires a running PostgreSQL server, used for production) [PostgreSQL](https://www.postgresql.org/), [Example](https://github.com/kit-data-manager/base-repo/blob/4e90c6aeaced4715d419482f3cb127cddc85bd37/config/application-default.properties#L38-L45)

> ℹ️ **Note:**
> Other relational databases, e.g., MariaDB, SQLite, or Oracle, may also work but require additional actions. To allow base-repo to connect, the source code repository must be cloned, an appropriate JDBC driver has to be added to `build.gradle`
> and base-repo has be be compiled. Proper JDBC drivers are typically provided on the database's Web page. Afterwards, the database can be configured in `application.properties` similar to PostgreSQL but with database-specific property naming. Please refer
> to the driver documentation for details.

### Local Filesystem (mandatory) 📂
Access to the local filesystem is required by base-repo to store and manage uploaded data. base-repo only needs access to a single folder, which can be located on the local hard drive or mounted, e.g., via NFS.

#### Configuration ⚙️
- see `application.properties` [Documentation1](https://github.com/kit-data-manager/base-repo/blob/4e90c6aeaced4715d419482f3cb127cddc85bd37/config/application-default.properties#L137-L139), [Documentation2](https://github.com/kit-data-manager/base-repo/blob/4e90c6aeaced4715d419482f3cb127cddc85bd37/config/application-default.properties#L154-L165)

### Messaging (optional) 💬
AMQP-based messaging is an optional feature of base-repo, which allows base-repo to emit messages about creation, modification, and deletion events related to resources and content information. These messages can be received by registered consumers and processed in an asynchronous way.

#### Configuration ⚙️
- RabbitMQ (dependencies included, serves as messaging distributor, requires a running RabbitMQ server) [RabbitMQ](https://www.rabbitmq.com/), [Documentation](https://kit-data-manager.github.io/webpage/base-repo/documentation/messaging-configuration.html)

### Enhanced Search (optional) 🔍
By default, base-repo offers basic search via RESTful API by example document or certain query parameters. Optionally, enhanced search via a search index can be enabled and used for fine-grained and facetted search operations.

#### Configuration ⚙️
- Elasticsearch (dependencies included, serves as seach index, requires a running Elasticsearch server) [Elasticsearch] (https://www.elastic.co/de/elasticsearch/), [Documentation](https://kit-data-manager.github.io/webpage/base-repo/documentation/search-configuration.html), [Example](https://github.com/kit-data-manager/base-repo/blob/4e90c6aeaced4715d419482f3cb127cddc85bd37/config/application-default.properties#L104-L107)


### Access Control (optional) 🔐
By default, base-repo itself is open for all kinds of operations, i.e., read and write, where write access should be restricted on the user interface level, e.g., by a password-protected area for critical operations. Optionally, authentication and authorization via JSON Web Tokens (JWT) issued by a Keycloak instance, can be configured.

#### Configuration ⚙️
- Keycloak (dependencies included, serves as identity provider, requires a running Keycloak server) [Keycloak](https://www.keycloak.org/), [Documentation (TODO)](), [Example](https://github.com/kit-data-manager/base-repo/blob/4e90c6aeaced4715d419482f3cb127cddc85bd37/config/application-default.properties#L192-L201)

## Public Interfaces 📥

Public Interfaces are used to access base-repo in order to obtain its contents, typically this happens via HTTP/REST. Depending on the interface, special clients or protocols must be used to access a specific public interface.

### HTTP / REST
The default way to access base-repo is via RESTful interfaces. They allow to create, update, and delete resources and content information, as well as upload and download data.

#### Documentation 📖
- [OpenAPI](https://kit-data-manager.github.io/webpage/base-repo/documentation/api-docs.html)
- [Usage with Examples](https://kit-data-manager.github.io/webpage/base-repo/documentation/index.html)

#### Application Examples 📋
- Scripts
- Graphical frontends ([frontend-collection/repo-management.html](https://github.com/kit-data-manager/frontend-collection))

### Elasticsearch Proxy 🔍
If [Enhanced Search](#enhanced-search-optional-) is enabled, an additional REST endpoint becomes available, which allows to tunnel search queries to the underlying Elasticsearch instance. The advantage for proxying Elasticsearch access is, that access restrictions enabled via [Access Control](#access-control-optional-) are included in the query such that only results accessible by the caller are returned.

#### Documentation 📖
- [Search Configuration](https://kit-data-manager.github.io/webpage/base-repo/documentation/search-configuration.html)

#### Application Examples 📋
- Scripts
- Graphical frontends ([frontend-collection/elastic-search-base-repo.html](https://github.com/kit-data-manager/frontend-collection))

### OAI-PMH
[OAI-PMH](https://www.openarchives.org/pmh/) is a standardized harvesting protocol that allows to build up external search indices that can be kept up to data by regular harvesting changes from an OAI-PMH source. For base-repo, OAI-PMH functionality can be optionally added via plugin.

#### Source Code 📋
- [OAI-PMH-Controller-Plugin](https://git.scc.kit.edu/kitdatamanager/2.0/oai-pmh-controller-plugin)

#### Documentation 📖
- [Plugin Configuration](https://git.scc.kit.edu/kitdatamanager/2.0/oai-pmh-controller-plugin)
- [base-repo Integration](https://github.com/kit-data-manager/base-repo#enhanced-startup)

> ℹ️ **Note:**
> Currently, the plugin is only available from an internal repository, which will change in near future. Furthermore, the plugin might not work with the current version of base-repo, but will be revised as soon as it becomes publicly available.

### Digital Object Interface Protocol (DOIP)
[DOIP](https://www.dona.net/sites/default/files/2018-11/DOIPv2Spec_1.pdf) is a novel protocol to provide generic access to digital resources. Instead of using HTTP-based communication, the protocol acts directly on top of TCP/IP and is therefore mainly relevant for special ecosystems.

#### Source Code 📋
- [DOIP-Plugin](https://git.scc.kit.edu/kitdatamanager/2.0/doip-plugin)

#### Documentation 📖
- [Plugin Configuration](https://git.scc.kit.edu/kitdatamanager/2.0/doip-plugin)
- [base-repo Integration](https://github.com/kit-data-manager/base-repo#enhanced-startup)

> ℹ️ **Note:**
> Currently, the plugin is only available from an internal repository, which will change in near future. Furthermore, the plugin might not work with the current version of base-repo, but will be revised as soon as it becomes publicly available.
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ data resource management, e.g. register DataCite-oriented metadata and upload/do

In order to build this microservice you'll need:

* Java SE Development Kit 11 or higher
* Java SE Development Kit 17 or higher

After obtaining the sources change to the folder where the sources are located perform the following steps:

Expand All @@ -39,7 +39,7 @@ libraries and finally build the base-repo microservice itself. As a result, a fa

* PostgreSQL 9.1 or higher
* RabbitMQ 3.7.3 or higher (in case you want to use the messaging feature, which is recommended)
* Elastic 7.X or higher (in case you want to use the search feature)
* Elastic 8.X or higher (in case you want to use the search feature)

### Setup

Expand Down
73 changes: 36 additions & 37 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
plugins {
id "org.springframework.boot" version "2.7.5"
id "io.spring.dependency-management" version "1.1.0"
id "io.freefair.lombok" version "6.5.1"
id "io.freefair.maven-publish-java" version "6.5.1"
id "com.github.kt3k.coveralls" version "2.12.0"
id "org.owasp.dependencycheck" version "7.3.0"
id 'org.springframework.boot' version '3.1.5'
id 'io.spring.dependency-management' version '1.1.0'
id 'io.freefair.lombok' version '8.4'
id 'io.freefair.maven-publish-java' version '8.4'
id 'org.owasp.dependencycheck' version '9.0.2'
id 'org.asciidoctor.jvm.convert' version '3.3.2'
id "net.researchgate.release" version "3.0.2"
id "com.gorylenko.gradle-git-properties" version "2.4.1"
id 'net.researchgate.release' version '3.0.2'
id 'com.gorylenko.gradle-git-properties' version '2.4.1'
id 'java'
id 'jacoco'
}
Expand All @@ -29,9 +28,9 @@ repositories {
//}

ext {
set('javersVersion', "6.8.0")
set('springBootVersion', "2.7.5")
set('springDocVersion', "1.6.9")
set('javersVersion', "7.0.0")
set('springBootVersion', "3.1.0")
set('springDocVersion', "2.1.0")
set('keycloakVersion', "19.0.0")

// directory for generated code snippets during tests
Expand All @@ -42,8 +41,8 @@ println "Running gradle version: $gradle.gradleVersion"
println "Building ${name} version: ${version}"
println "JDK version: ${JavaVersion.current()}"

sourceCompatibility = 1.8
targetCompatibility = 1.8
sourceCompatibility = 1.17
targetCompatibility = 1.17

if (System.getProperty('profile') == 'minimal') {
println 'Using minimal profile for building ' + project.getName()
Expand All @@ -60,57 +59,57 @@ dependencies {
implementation "org.springframework.boot:spring-boot-starter-data-rest"
implementation "org.springframework.boot:spring-boot-starter-mail"
implementation "org.springframework.boot:spring-boot-starter-actuator"
implementation 'org.springframework.data:spring-data-elasticsearch:4.4.6'
implementation 'org.springframework.data:spring-data-elasticsearch:5.2.0'

implementation "org.springframework:spring-messaging:5.3.23"
implementation "org.springframework.security:spring-security-web:5.7.5"
implementation "org.springframework.security:spring-security-config:5.7.5"
implementation "org.springframework:spring-messaging:6.1.0"
implementation "org.springframework.security:spring-security-web:6.2.0"
implementation "org.springframework.security:spring-security-config:6.2.0"

// cloud support
implementation "org.springframework.cloud:spring-cloud-starter-config:3.1.5"
implementation "org.springframework.cloud:spring-cloud-starter-netflix-eureka-client:3.1.4"
implementation "org.springframework.cloud:spring-cloud-gateway-mvc:3.1.4"
implementation 'de.codecentric:spring-boot-admin-starter-client:2.7.10'
implementation "org.springframework.cloud:spring-cloud-starter-config:4.0.4"
implementation "org.springframework.cloud:spring-cloud-starter-netflix-eureka-client:4.0.3"
implementation "org.springframework.cloud:spring-cloud-gateway-mvc:4.0.6"
implementation 'de.codecentric:spring-boot-admin-starter-client:3.1.8'


// springdoc
implementation "org.springdoc:springdoc-openapi-ui:${springDocVersion}"
implementation "org.springdoc:springdoc-openapi-data-rest:${springDocVersion}"
implementation "org.springdoc:springdoc-openapi-webmvc-core:${springDocVersion}"
implementation "org.springdoc:springdoc-openapi-starter-webmvc-ui:${springDocVersion}"
implementation "org.springdoc:springdoc-openapi-starter-common:${springDocVersion}"
implementation "org.springdoc:springdoc-openapi-starter-webmvc-api:${springDocVersion}"

implementation "edu.kit.datamanager:repo-core:1.1.2"
implementation "edu.kit.datamanager:service-base:1.1.1"
implementation "edu.kit.datamanager:repo-core:1.2.1"
implementation "edu.kit.datamanager:service-base:1.2.0"

//implementation "com.github.victools:jsonschema-generator:4.23.0"

//Keycloak
// implementation "org.keycloak:keycloak-spring-boot-starter:${keycloakVersion}"
implementation "com.nimbusds:nimbus-jose-jwt:9.24.3"
implementation "io.jsonwebtoken:jjwt-api:0.11.5"
implementation "io.jsonwebtoken:jjwt-impl:0.11.5"
implementation "io.jsonwebtoken:jjwt-jackson:0.11.5"
implementation "com.nimbusds:nimbus-jose-jwt:9.37"
// implementation "io.jsonwebtoken:jjwt-api:0.11.5"
//implementation "io.jsonwebtoken:jjwt-impl:0.11.5"
//implementation "io.jsonwebtoken:jjwt-jackson:0.11.5"

implementation "org.javers:javers-core:${javersVersion}"
implementation "com.github.fge:json-patch:1.9"
implementation "com.bazaarvoice.jolt:jolt-core:0.1.7"
implementation "com.bazaarvoice.jolt:json-utils:0.1.7"
implementation "com.bazaarvoice.jolt:json-utils:0.1.8"

implementation "javax.xml.bind:jaxb-api:2.3.1"
// implementation "javax.xml.bind:jaxb-api:2.3.1"

runtimeOnly "org.apache.httpcomponents:httpclient:4.5.13"
runtimeOnly "org.apache.httpcomponents:httpclient:4.5.14"

// driver for postgres
implementation "org.postgresql:postgresql:42.5.0"
implementation "org.postgresql:postgresql:42.7.0"
//driver for h2
implementation "com.h2database:h2:2.1.214"
implementation "com.h2database:h2:2.2.224"

testImplementation "org.springframework.restdocs:spring-restdocs-mockmvc:2.0.6.RELEASE"
testImplementation "org.springframework.restdocs:spring-restdocs-mockmvc:3.0.0"
testImplementation "org.springframework.boot:spring-boot-starter-test"
testImplementation "org.springframework:spring-test"
testImplementation "org.springframework.security:spring-security-test"

//Java 11 Support
testImplementation "org.mockito:mockito-inline:4.9.0"
testImplementation "org.mockito:mockito-inline:5.2.0"
testImplementation "junit:junit:4.13.2"
}

Expand Down
1 change: 1 addition & 0 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,4 @@ action.custom-2=release
action.custom-2.args=--configure-on-demand -w -x check -Dprofile=minimal clean build asciidoctor
action.custom-3=jacoco
action.custom-3.args=--configure-on-demand -w -x check clean build jacocoTestReport
netbeans.org-netbeans-modules-web-clientproject-api.js_2e_libs_2e_folder=js/libs
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6.1-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
Loading
Loading