mirror of
https://github.com/spring-projects/spring-security.git
synced 2025-03-01 19:09:08 +00:00
This change applies repository content filtering to configured repositories, reducing the time spent during dependency resolution. This fixes an issue where requests for 'org.opensaml', 'net.shibboleth.utilities' and 'net.minidev' dependencies were being made in the Spring releases repositories, resulting in many failed requests during dependency resolution and increased resolution times. Closes gh-13582
63 lines
2.7 KiB
Groovy
63 lines
2.7 KiB
Groovy
plugins {
|
|
id 'org.antora' version '1.0.0'
|
|
id 'io.spring.antora.generate-antora-yml' version '0.0.1'
|
|
id 'io.spring.convention.repository'
|
|
}
|
|
|
|
apply plugin: 'io.spring.convention.docs'
|
|
apply plugin: 'java'
|
|
|
|
antora {
|
|
playbook = 'cached-antora-playbook.yml'
|
|
playbookProvider {
|
|
repository = 'spring-projects/spring-security'
|
|
branch = 'docs-build'
|
|
path = 'lib/antora/templates/per-branch-antora-playbook.yml'
|
|
checkLocalBranch = true
|
|
}
|
|
options = [clean: true, fetch: !project.gradle.startParameter.offline, stacktrace: true]
|
|
}
|
|
|
|
tasks.named("generateAntoraYml") {
|
|
asciidocAttributes = project.provider( { generateAttributes() } )
|
|
asciidocAttributes.putAll(providers.provider( { resolvedVersions(project.configurations.testRuntimeClasspath) }))
|
|
}
|
|
|
|
dependencies {
|
|
testImplementation platform(project(':spring-security-dependencies'))
|
|
testImplementation 'com.unboundid:unboundid-ldapsdk'
|
|
testImplementation 'org.apache.directory.server:apacheds-core'
|
|
testImplementation 'org.springframework:spring-core'
|
|
}
|
|
|
|
def generateAttributes() {
|
|
def docsTag = snapshotBuild ? 'current' : project.version
|
|
def ghTag = snapshotBuild ? 'main' : project.version
|
|
def ghUrl = "https://github.com/spring-projects/spring-security/tree/$ghTag"
|
|
def ghOldSamplesUrl = 'https://github.com/spring-projects/spring-security/tree/5.4.x/samples'
|
|
def ghSamplesUrl = "https://github.com/spring-projects/spring-security-samples/tree/$samplesBranch"
|
|
def securityDocsUrl = "https://docs.spring.io/spring-security/site/docs/$docsTag"
|
|
def securityApiUrl = "$securityDocsUrl/api/"
|
|
def securityReferenceUrl = "$securityDocsUrl/reference/html5/"
|
|
def springFrameworkApiUrl = "https://docs.spring.io/spring-framework/docs/$springFrameworkVersion/javadoc-api/"
|
|
def springFrameworkReferenceUrl = "https://docs.spring.io/spring-framework/docs/$springFrameworkVersion/reference/html/"
|
|
def springBootReferenceUrl = "https://docs.spring.io/spring-boot/docs/$springBootVersion/reference/html/"
|
|
|
|
return ['gh-old-samples-url': ghOldSamplesUrl.toString(),
|
|
'gh-samples-url': ghSamplesUrl.toString(),
|
|
'gh-url': ghUrl.toString(),
|
|
'security-api-url': securityApiUrl.toString(),
|
|
'security-reference-url': securityReferenceUrl.toString(),
|
|
'spring-framework-api-url': springFrameworkApiUrl.toString(),
|
|
'spring-framework-reference-url': springFrameworkReferenceUrl.toString(),
|
|
'spring-boot-reference-url': springBootReferenceUrl.toString(),
|
|
'spring-security-version': project.version]
|
|
+ resolvedVersions(project.configurations.testRuntimeClasspath)
|
|
}
|
|
|
|
def resolvedVersions(Configuration configuration) {
|
|
return configuration.resolvedConfiguration
|
|
.resolvedArtifacts
|
|
.collectEntries { [(it.name + '-version'): it.moduleVersion.id.version] }
|
|
}
|