Stirling-PDF/enterprise/build.gradle

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

126 lines
5.4 KiB
Groovy
Raw Normal View History

plugins {
id 'java-library'
id 'io.spring.dependency-management' version '1.1.7'
}
group = 'stirling.software'
version = '0.46.0'
repositories {
mavenCentral()
maven { url = "https://build.shibboleth.net/maven/releases" }
maven { url = "https://maven.pkg.github.com/jcefmaven/jcefmaven" }
}
java {
// 17 is lowest but we support and recommend 21
sourceCompatibility = JavaVersion.VERSION_17
}
ext {
lombokVersion = "1.18.38"
}
sourceSets {
main {
java {
if (System.getenv("DOCKER_ENABLE_SECURITY") == "false") {
exclude 'stirling/software/enterprise/security/UserAuthenticationFilter.java'
exclude 'stirling/software/enterprise/security/UserBasedRateLimitingFilter.java'
exclude 'stirling/software/enterprise/security/CustomAuthenticationSuccessHandler.java'
exclude 'stirling/software/enterprise/security/CustomLogoutSuccessHandler.java'
exclude 'stirling/software/enterprise/security/FirstLoginFilter.java'
exclude 'stirling/software/enterprise/security/IPRateLimitingFilter.java'
exclude 'stirling/software/enterprise/security/RateLimitResetScheduler.java'
exclude 'stirling/software/enterprise/security/CustomAuthenticationFailureHandler.java'
exclude 'stirling/software/enterprise/security/InitialSecuritySetup.java'
exclude 'stirling/software/enterprise/security/configuration/**'
exclude 'stirling/software/enterprise/security/controller/**'
exclude 'stirling/software/enterprise/security/database/**'
exclude 'stirling/software/enterprise/security/oauth2/**'
exclude 'stirling/software/enterprise/security/saml2/**'
exclude 'stirling/software/enterprise/security/service/**'
exclude 'stirling/software/enterprise/security/session/**'
exclude 'stirling/software/enterprise/security/model/ApiKeyAuthenticationToken.java'
exclude 'stirling/software/enterprise/security/model/AttemptCounter.java'
exclude 'stirling/software/enterprise/security/model/Authority.java'
exclude 'stirling/software/enterprise/security/model/BackupNotFoundException.java'
exclude 'stirling/software/enterprise/security/model/PersistentLogin.java'
exclude 'stirling/software/enterprise/security/model/SessionEntity.java'
exclude 'stirling/software/enterprise/security/model/User.java'
}
}
test {
java {
if (System.getenv("DOCKER_ENABLE_SECURITY") == "false") {
exclude 'stirling/software/enterprise/security/**'
}
}
}
}
}
configurations.all {
exclude group: 'commons-logging', module: 'commons-logging'
exclude group: "org.springframework.boot", module: "spring-boot-starter-tomcat"
}
dependencyManagement {
imports {
mavenBom 'org.springframework.boot:spring-boot-dependencies:3.4.5'
}
}
dependencies {
implementation project(':common')
implementation 'org.springframework.boot:spring-boot-starter-jetty'
implementation 'io.swagger.core.v3:swagger-core-jakarta:2.2.30'
implementation 'org.springframework:spring-webmvc:6.2.6'
implementation 'com.posthog.java:posthog:1.2.0'
// https://mvnrepository.com/artifact/com.bucket4j/bucket4j_jdk17
implementation 'com.bucket4j:bucket4j_jdk17-core:8.14.0'
implementation 'io.github.pixee:java-security-toolkit:1.2.1'
implementation 'org.bouncycastle:bcprov-jdk18on:1.80'
if (System.getenv('DOCKER_ENABLE_SECURITY') != 'false') {
implementation 'io.micrometer:micrometer-registry-prometheus'
implementation 'org.springframework.boot:spring-boot-starter-security'
implementation 'org.thymeleaf.extras:thymeleaf-extras-springsecurity5:3.1.3.RELEASE'
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation 'org.springframework.boot:spring-boot-starter-oauth2-client'
implementation "org.springframework.session:spring-session-core:3.4.3"
implementation "org.springframework:spring-jdbc:6.2.6"
implementation 'com.unboundid.product.scim2:scim2-sdk-client:2.3.5'
// Don't upgrade h2database
runtimeOnly "com.h2database:h2:2.3.232"
runtimeOnly "org.postgresql:postgresql:42.7.5"
constraints {
implementation "org.opensaml:opensaml-core:$openSamlVersion"
implementation "org.opensaml:opensaml-saml-api:$openSamlVersion"
implementation "org.opensaml:opensaml-saml-impl:$openSamlVersion"
}
implementation "org.springframework.security:spring-security-saml2-service-provider:$springSecuritySamlVersion"
// implementation 'org.springframework.security:spring-security-core:$springSecuritySamlVersion'
implementation 'com.coveo:saml-client:5.0.0'
}
compileOnly "org.projectlombok:lombok:$lombokVersion"
annotationProcessor "org.projectlombok:lombok:$lombokVersion"
testImplementation platform('org.junit:junit-bom:5.10.0')
testImplementation 'org.junit.jupiter:junit-jupiter'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
// testRuntimeOnly 'org.mockito:mockito-inline:5.2.0'
}
test {
useJUnitPlatform()
}