Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in / Register
Toggle navigation
S
spring-boot
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
DEMO
spring-boot
Commits
3c7a0d3b
Commit
3c7a0d3b
authored
Jun 04, 2021
by
Phillip Webb
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch '2.4.x'
Closes gh-26754
parents
75f31f6b
d1b256a1
Changes
13
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
33 additions
and
8 deletions
+33
-8
StandardConfigDataLocationResolver.java
...ot/context/config/StandardConfigDataLocationResolver.java
+3
-0
ConfigDataEnvironmentPostProcessorIntegrationTests.java
...g/ConfigDataEnvironmentPostProcessorIntegrationTests.java
+17
-2
application-import-with-profile-variant-and-direct-profile-import-dev.properties
...-profile-variant-and-direct-profile-import-dev.properties
+1
-1
application-import-with-profile-variant-and-direct-profile-import.properties
...with-profile-variant-and-direct-profile-import.properties
+1
-1
application-import-with-profile-variant-dev.properties
...es/application-import-with-profile-variant-dev.properties
+1
-1
application-import-with-profile-variant-imported-dev.properties
...ation-import-with-profile-variant-imported-dev.properties
+1
-1
application-import-with-profile-variant-imported.properties
...plication-import-with-profile-variant-imported.properties
+1
-1
application-import-with-profile-variant.properties
...ources/application-import-with-profile-variant.properties
+1
-1
application-profile-specific-import-with-import-import-p1.properties
...-profile-specific-import-with-import-import-p1.properties
+1
-0
application-profile-specific-import-with-import-import-p2.properties
...-profile-specific-import-with-import-import-p2.properties
+1
-0
application-profile-specific-import-with-import-import.properties
...ion-profile-specific-import-with-import-import.properties
+1
-0
application-profile-specific-import-with-import-p1.properties
...ication-profile-specific-import-with-import-p1.properties
+2
-0
application-profile-specific-import-with-import.properties
...pplication-profile-specific-import-with-import.properties
+2
-0
No files found.
spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/config/StandardConfigDataLocationResolver.java
View file @
3c7a0d3b
...
@@ -136,6 +136,9 @@ public class StandardConfigDataLocationResolver
...
@@ -136,6 +136,9 @@ public class StandardConfigDataLocationResolver
@Override
@Override
public
List
<
StandardConfigDataResource
>
resolveProfileSpecific
(
ConfigDataLocationResolverContext
context
,
public
List
<
StandardConfigDataResource
>
resolveProfileSpecific
(
ConfigDataLocationResolverContext
context
,
ConfigDataLocation
location
,
Profiles
profiles
)
{
ConfigDataLocation
location
,
Profiles
profiles
)
{
if
(
context
.
getParent
()
!=
null
)
{
return
null
;
}
return
resolve
(
getProfileSpecificReferences
(
context
,
location
,
profiles
));
return
resolve
(
getProfileSpecificReferences
(
context
,
location
,
profiles
));
}
}
...
...
spring-boot-project/spring-boot/src/test/java/org/springframework/boot/context/config/ConfigDataEnvironmentPostProcessorIntegrationTests.java
View file @
3c7a0d3b
...
@@ -614,7 +614,8 @@ class ConfigDataEnvironmentPostProcessorIntegrationTests {
...
@@ -614,7 +614,8 @@ class ConfigDataEnvironmentPostProcessorIntegrationTests {
this
.
application
.
setAdditionalProfiles
(
"dev"
);
this
.
application
.
setAdditionalProfiles
(
"dev"
);
ConfigurableApplicationContext
context
=
this
.
application
ConfigurableApplicationContext
context
=
this
.
application
.
run
(
"--spring.config.location=classpath:application-import-with-profile-variant.properties"
);
.
run
(
"--spring.config.location=classpath:application-import-with-profile-variant.properties"
);
assertThat
(
context
.
getEnvironment
().
getProperty
(
"my.value"
)).
isEqualTo
(
"iwasimported-dev"
);
assertThat
(
context
.
getEnvironment
().
getProperty
(
"my.value"
))
.
isEqualTo
(
"application-import-with-profile-variant-dev"
);
}
}
@Test
@Test
...
@@ -622,7 +623,8 @@ class ConfigDataEnvironmentPostProcessorIntegrationTests {
...
@@ -622,7 +623,8 @@ class ConfigDataEnvironmentPostProcessorIntegrationTests {
this
.
application
.
setAdditionalProfiles
(
"dev"
);
this
.
application
.
setAdditionalProfiles
(
"dev"
);
ConfigurableApplicationContext
context
=
this
.
application
.
run
(
ConfigurableApplicationContext
context
=
this
.
application
.
run
(
"--spring.config.location=classpath:application-import-with-profile-variant-and-direct-profile-import.properties"
);
"--spring.config.location=classpath:application-import-with-profile-variant-and-direct-profile-import.properties"
);
assertThat
(
context
.
getEnvironment
().
getProperty
(
"my.value"
)).
isEqualTo
(
"iwasimported-dev"
);
assertThat
(
context
.
getEnvironment
().
getProperty
(
"my.value"
))
.
isEqualTo
(
"application-import-with-profile-variant-imported-dev"
);
}
}
@Test
@Test
...
@@ -746,6 +748,19 @@ class ConfigDataEnvironmentPostProcessorIntegrationTests {
...
@@ -746,6 +748,19 @@ class ConfigDataEnvironmentPostProcessorIntegrationTests {
assertThat
(
environment
.
getProperty
(
"test2"
)).
isEqualTo
(
"test2"
);
assertThat
(
environment
.
getProperty
(
"test2"
)).
isEqualTo
(
"test2"
);
}
}
@Test
// gh-26752
void
runWhenHasProfileSpecificImportWithImportDoesNotImportSecondProfileSpecificFile
()
{
ConfigurableApplicationContext
context
=
this
.
application
.
run
(
"--spring.config.name=application-profile-specific-import-with-import"
);
ConfigurableEnvironment
environment
=
context
.
getEnvironment
();
assertThat
(
environment
.
containsProperty
(
"application-profile-specific-import-with-import"
)).
isTrue
();
assertThat
(
environment
.
containsProperty
(
"application-profile-specific-import-with-import-p1"
)).
isTrue
();
assertThat
(
environment
.
containsProperty
(
"application-profile-specific-import-with-import-p2"
)).
isFalse
();
assertThat
(
environment
.
containsProperty
(
"application-profile-specific-import-with-import-import"
)).
isTrue
();
assertThat
(
environment
.
containsProperty
(
"application-profile-specific-import-with-import-import-p1"
)).
isFalse
();
assertThat
(
environment
.
containsProperty
(
"application-profile-specific-import-with-import-import-p2"
)).
isFalse
();
}
private
Condition
<
ConfigurableEnvironment
>
matchingPropertySource
(
final
String
sourceName
)
{
private
Condition
<
ConfigurableEnvironment
>
matchingPropertySource
(
final
String
sourceName
)
{
return
new
Condition
<
ConfigurableEnvironment
>(
"environment containing property source "
+
sourceName
)
{
return
new
Condition
<
ConfigurableEnvironment
>(
"environment containing property source "
+
sourceName
)
{
...
...
spring-boot-project/spring-boot/src/test/resources/application-import-with-profile-variant-and-direct-profile-import-dev.properties
View file @
3c7a0d3b
spring.config.import
=
classpath:application-import-with-profile-variant-imported-dev.properties
spring.config.import
=
classpath:application-import-with-profile-variant-imported-dev.properties
my.value
=
notimported
-dev
my.value
=
application-import-with-profile-variant-and-direct-profile-import
-dev
spring-boot-project/spring-boot/src/test/resources/application-import-with-profile-variant-and-direct-profile-import.properties
View file @
3c7a0d3b
spring.config.import
=
classpath:application-import-with-profile-variant-imported.properties
spring.config.import
=
classpath:application-import-with-profile-variant-imported.properties
my.value
=
notimported
my.value
=
application-import-with-profile-variant-and-direct-profile-import
spring-boot-project/spring-boot/src/test/resources/application-import-with-profile-variant-dev.properties
View file @
3c7a0d3b
my.value
=
notimported
-dev
my.value
=
application-import-with-profile-variant
-dev
spring-boot-project/spring-boot/src/test/resources/application-import-with-profile-variant-imported-dev.properties
View file @
3c7a0d3b
my.value
=
iwas
imported-dev
my.value
=
application-import-with-profile-variant-
imported-dev
spring-boot-project/spring-boot/src/test/resources/application-import-with-profile-variant-imported.properties
View file @
3c7a0d3b
my.value
=
iwas
imported
my.value
=
application-import-with-profile-variant-
imported
spring-boot-project/spring-boot/src/test/resources/application-import-with-profile-variant.properties
View file @
3c7a0d3b
spring.config.import
=
classpath:application-import-with-profile-variant-imported.properties
spring.config.import
=
classpath:application-import-with-profile-variant-imported.properties
my.value
=
notimported
my.value
=
application-import-with-profile-variant
spring-boot-project/spring-boot/src/test/resources/application-profile-specific-import-with-import-import-p1.properties
0 → 100644
View file @
3c7a0d3b
application-profile-specific-import-with-import-import-p1
=
true
spring-boot-project/spring-boot/src/test/resources/application-profile-specific-import-with-import-import-p2.properties
0 → 100644
View file @
3c7a0d3b
application-profile-specific-import-with-import-import-p2
=
true
spring-boot-project/spring-boot/src/test/resources/application-profile-specific-import-with-import-import.properties
0 → 100644
View file @
3c7a0d3b
application-profile-specific-import-with-import-import
=
true
spring-boot-project/spring-boot/src/test/resources/application-profile-specific-import-with-import-p1.properties
0 → 100644
View file @
3c7a0d3b
application-profile-specific-import-with-import-p1
=
true
spring.config.import
=
application-profile-specific-import-with-import-import.properties
spring-boot-project/spring-boot/src/test/resources/application-profile-specific-import-with-import.properties
0 → 100644
View file @
3c7a0d3b
spring.profiles.active
=
p1,p2
application-profile-specific-import-with-import
=
true
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment