Skip to content

Commit 02b2fcc

Browse files
Restore ManagementConfigurationPlugin
Issue gh-9615
1 parent e2e9388 commit 02b2fcc

22 files changed

+95
-20
lines changed

acl/spring-security-acl.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
apply plugin: 'io.spring.convention.spring-module'
22

33
dependencies {
4-
api platform(project(":spring-security-dependencies"))
4+
management platform(project(":spring-security-dependencies"))
55
api project(':spring-security-core')
66
api 'org.springframework:spring-aop'
77
api 'org.springframework:spring-context'

aspects/spring-security-aspects.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ apply plugin: 'io.spring.convention.spring-module'
22
apply plugin: 'io.freefair.aspectj'
33

44
dependencies {
5-
api platform(project(":spring-security-dependencies"))
5+
management platform(project(":spring-security-dependencies"))
66
api "org.aspectj:aspectjrt"
77
api project(':spring-security-core')
88
api 'org.springframework:spring-beans'

buildSrc/src/main/groovy/io/spring/gradle/convention/AbstractSpringJavaPlugin.groovy

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ public abstract class AbstractSpringJavaPlugin implements Plugin<Project> {
3737
public final void apply(Project project) {
3838
PluginManager pluginManager = project.getPluginManager();
3939
pluginManager.apply(JavaPlugin.class);
40+
pluginManager.apply(ManagementConfigurationPlugin.class)
4041
if (project.file("src/main/groovy").exists()
4142
|| project.file("src/test/groovy").exists()
4243
|| project.file("src/integration-test/groovy").exists()) {
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
/*
2+
* Copyright 2002-2021 the original author or authors.
3+
*
4+
* Licensed under the Apache License, Version 2.0 (the "License");
5+
* you may not use this file except in compliance with the License.
6+
* You may obtain a copy of the License at
7+
*
8+
* https://www.apache.org/licenses/LICENSE-2.0
9+
*
10+
* Unless required by applicable law or agreed to in writing, software
11+
* distributed under the License is distributed on an "AS IS" BASIS,
12+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
* See the License for the specific language governing permissions and
14+
* limitations under the License.
15+
*/
16+
17+
package io.spring.gradle.convention;
18+
19+
import org.gradle.api.Plugin;
20+
import org.gradle.api.Project;
21+
import org.gradle.api.artifacts.ConfigurationContainer;
22+
import org.gradle.api.plugins.JavaPlugin;
23+
import org.gradle.api.plugins.JavaTestFixturesPlugin;
24+
import org.gradle.api.plugins.PluginContainer;
25+
import org.gradle.api.publish.PublishingExtension;
26+
import org.gradle.api.publish.maven.MavenPublication;
27+
import org.gradle.api.publish.maven.plugins.MavenPublishPlugin;
28+
29+
import org.springframework.gradle.propdeps.PropDepsPlugin;
30+
31+
/**
32+
* Creates a Management configuration that is appropriate for adding a platform to that is not exposed externally. If
33+
* the JavaPlugin is applied, the compileClasspath, runtimeClasspath, testCompileClasspath, and testRuntimeClasspath
34+
* will extend from it.
35+
* @author Rob Winch
36+
*/
37+
public class ManagementConfigurationPlugin implements Plugin<Project> {
38+
39+
public static final String MANAGEMENT_CONFIGURATION_NAME = "management";
40+
41+
@Override
42+
public void apply(Project project) {
43+
ConfigurationContainer configurations = project.getConfigurations();
44+
configurations.create(MANAGEMENT_CONFIGURATION_NAME, (management) -> {
45+
management.setVisible(false);
46+
management.setCanBeConsumed(false);
47+
management.setCanBeResolved(false);
48+
49+
PluginContainer plugins = project.getPlugins();
50+
plugins.withType(JavaPlugin.class, (javaPlugin) -> {
51+
configurations.getByName(JavaPlugin.COMPILE_CLASSPATH_CONFIGURATION_NAME).extendsFrom(management);
52+
configurations.getByName(JavaPlugin.RUNTIME_CLASSPATH_CONFIGURATION_NAME).extendsFrom(management);
53+
configurations.getByName(JavaPlugin.TEST_COMPILE_CLASSPATH_CONFIGURATION_NAME).extendsFrom(management);
54+
configurations.getByName(JavaPlugin.TEST_RUNTIME_CLASSPATH_CONFIGURATION_NAME).extendsFrom(management);
55+
});
56+
plugins.withType(JavaTestFixturesPlugin.class, (javaTestFixturesPlugin) -> {
57+
configurations.getByName("testFixturesCompileClasspath").extendsFrom(management);
58+
configurations.getByName("testFixturesRuntimeClasspath").extendsFrom(management);
59+
});
60+
plugins.withType(MavenPublishPlugin.class, (mavenPublish) -> {
61+
PublishingExtension publishing = project.getExtensions().getByType(PublishingExtension.class);
62+
publishing.getPublications().withType(MavenPublication.class, (mavenPublication -> {
63+
mavenPublication.versionMapping((versions) ->
64+
versions.allVariants(versionMapping -> versionMapping.fromResolutionResult())
65+
);
66+
}));
67+
});
68+
plugins.withType(PropDepsPlugin.class, (propDepsPlugin -> {
69+
configurations.getByName("optional").extendsFrom(management);
70+
configurations.getByName("provided").extendsFrom(management);
71+
}));
72+
});
73+
}
74+
}

cas/spring-security-cas.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
apply plugin: 'io.spring.convention.spring-module'
22

33
dependencies {
4-
api platform(project(":spring-security-dependencies"))
4+
management platform(project(":spring-security-dependencies"))
55
api project(':spring-security-core')
66
api project(':spring-security-web')
77
api 'org.jasig.cas.client:cas-client-core'

config/spring-security-config.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ repositories {
99
}
1010

1111
dependencies {
12-
api platform(project(":spring-security-dependencies"))
12+
management platform(project(":spring-security-dependencies"))
1313
// NB: Don't add other compile time dependencies to the config module as this breaks tooling
1414
api project(':spring-security-core')
1515
api 'org.springframework:spring-aop'

core/spring-security-core.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import java.util.concurrent.Callable
33
apply plugin: 'io.spring.convention.spring-module'
44

55
dependencies {
6-
api platform(project(":spring-security-dependencies"))
6+
management platform(project(":spring-security-dependencies"))
77
api project(':spring-security-crypto')
88
api 'org.springframework:spring-aop'
99
api 'org.springframework:spring-beans'

crypto/spring-security-crypto.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
apply plugin: 'io.spring.convention.spring-module'
22

33
dependencies {
4-
api platform(project(":spring-security-dependencies"))
4+
management platform(project(":spring-security-dependencies"))
55
optional 'org.springframework:spring-jcl'
66
optional 'org.bouncycastle:bcpkix-jdk15on'
77

data/spring-security-data.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
apply plugin: 'io.spring.convention.spring-module'
22

33
dependencies {
4-
api platform(project(":spring-security-dependencies"))
4+
management platform(project(":spring-security-dependencies"))
55
api project(':spring-security-core')
66
api 'javax.xml.bind:jaxb-api'
77
api 'org.springframework.data:spring-data-commons'

ldap/spring-security-ldap.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
apply plugin: 'io.spring.convention.spring-module'
22

33
dependencies {
4-
api platform(project(":spring-security-dependencies"))
4+
management platform(project(":spring-security-dependencies"))
55
api project(':spring-security-core')
66
api 'org.springframework:spring-beans'
77
api 'org.springframework:spring-context'

messaging/spring-security-messaging.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
apply plugin: 'io.spring.convention.spring-module'
22

33
dependencies {
4-
api platform(project(":spring-security-dependencies"))
4+
management platform(project(":spring-security-dependencies"))
55
api project(':spring-security-core')
66
api 'org.springframework:spring-beans'
77
api 'org.springframework:spring-context'

oauth2/oauth2-client/spring-security-oauth2-client.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
apply plugin: 'io.spring.convention.spring-module'
22

33
dependencies {
4-
api platform(project(":spring-security-dependencies"))
4+
management platform(project(":spring-security-dependencies"))
55
api project(':spring-security-core')
66
api project(':spring-security-oauth2-core')
77
api project(':spring-security-web')

oauth2/oauth2-core/spring-security-oauth2-core.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
apply plugin: 'io.spring.convention.spring-module'
22

33
dependencies {
4-
api platform(project(":spring-security-dependencies"))
4+
management platform(project(":spring-security-dependencies"))
55
api project(':spring-security-core')
66
api 'org.springframework:spring-core'
77
api 'org.springframework:spring-web'

oauth2/oauth2-jose/spring-security-oauth2-jose.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
apply plugin: 'io.spring.convention.spring-module'
22

33
dependencies {
4-
api platform(project(":spring-security-dependencies"))
4+
management platform(project(":spring-security-dependencies"))
55
api project(':spring-security-core')
66
api project(':spring-security-oauth2-core')
77
api 'org.springframework:spring-core'

oauth2/oauth2-resource-server/spring-security-oauth2-resource-server.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
apply plugin: 'io.spring.convention.spring-module'
22

33
dependencies {
4-
api platform(project(":spring-security-dependencies"))
4+
management platform(project(":spring-security-dependencies"))
55
api project(':spring-security-core')
66
api project(':spring-security-oauth2-core')
77
api project(':spring-security-web')

openid/spring-security-openid.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
apply plugin: 'io.spring.convention.spring-module'
66

77
dependencies {
8-
api platform(project(":spring-security-dependencies"))
8+
management platform(project(":spring-security-dependencies"))
99
api project(':spring-security-core')
1010
api project(':spring-security-web')
1111
api('com.google.inject:guice') {

remoting/spring-security-remoting.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
apply plugin: 'io.spring.convention.spring-module'
22

33
dependencies {
4-
api platform(project(":spring-security-dependencies"))
4+
management platform(project(":spring-security-dependencies"))
55
api project(':spring-security-core')
66
api 'org.springframework:spring-aop'
77
api 'org.springframework:spring-beans'

rsocket/spring-security-rsocket.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
apply plugin: 'io.spring.convention.spring-module'
22

33
dependencies {
4-
api platform(project(":spring-security-dependencies"))
4+
management platform(project(":spring-security-dependencies"))
55
api project(':spring-security-core')
66
api 'io.rsocket:rsocket-core'
77
optional project(':spring-security-oauth2-resource-server')

saml2/saml2-service-provider/spring-security-saml2-service-provider.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ compileOpensaml4MainJava {
4141
}
4242

4343
dependencies {
44-
api platform(project(":spring-security-dependencies"))
44+
management platform(project(":spring-security-dependencies"))
4545
api project(':spring-security-web')
4646
api "org.opensaml:opensaml-core"
4747
api "org.opensaml:opensaml-saml-api"

taglibs/spring-security-taglibs.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
apply plugin: 'io.spring.convention.spring-module'
22

33
dependencies {
4-
api platform(project(":spring-security-dependencies"))
4+
management platform(project(":spring-security-dependencies"))
55
api project(':spring-security-acl')
66
api project(':spring-security-core')
77
api project(':spring-security-web')

test/spring-security-test.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
apply plugin: 'io.spring.convention.spring-module'
22

33
dependencies {
4-
api platform(project(":spring-security-dependencies"))
4+
management platform(project(":spring-security-dependencies"))
55
api project(':spring-security-core')
66
api project(':spring-security-web')
77
api 'org.springframework:spring-core'

web/spring-security-web.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
apply plugin: 'io.spring.convention.spring-module'
22

33
dependencies {
4-
api platform(project(":spring-security-dependencies"))
4+
management platform(project(":spring-security-dependencies"))
55
api project(':spring-security-core')
66
api 'org.springframework:spring-core'
77
api 'org.springframework:spring-aop'

0 commit comments

Comments
 (0)