|
|
@ -122,22 +122,24 @@ public class PolarisConfigFileLocator implements PropertySourceLocator {
|
|
|
|
|
|
|
|
|
|
|
|
// priority: application-${profile} > application > boostrap-${profile} > boostrap
|
|
|
|
// priority: application-${profile} > application > boostrap-${profile} > boostrap
|
|
|
|
String[] activeProfiles = environment.getActiveProfiles();
|
|
|
|
String[] activeProfiles = environment.getActiveProfiles();
|
|
|
|
|
|
|
|
String[] defaultProfiles = environment.getDefaultProfiles();
|
|
|
|
|
|
|
|
List<String> profileList = new ArrayList<>();
|
|
|
|
|
|
|
|
if (ArrayUtils.isNotEmpty(activeProfiles)) {
|
|
|
|
|
|
|
|
profileList.addAll(Arrays.asList(activeProfiles));
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (ArrayUtils.isNotEmpty(defaultProfiles)) {
|
|
|
|
|
|
|
|
profileList.addAll(Arrays.asList(defaultProfiles));
|
|
|
|
|
|
|
|
}
|
|
|
|
// build application config files
|
|
|
|
// build application config files
|
|
|
|
buildInternalApplicationConfigFiles(internalConfigFiles, namespace, serviceName, activeProfiles);
|
|
|
|
buildInternalApplicationConfigFiles(internalConfigFiles, namespace, serviceName, profileList);
|
|
|
|
// build bootstrap config files
|
|
|
|
// build bootstrap config files
|
|
|
|
buildInternalBootstrapConfigFiles(internalConfigFiles, namespace, serviceName, activeProfiles);
|
|
|
|
buildInternalBootstrapConfigFiles(internalConfigFiles, namespace, serviceName, profileList);
|
|
|
|
|
|
|
|
|
|
|
|
return internalConfigFiles;
|
|
|
|
return internalConfigFiles;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private void buildInternalApplicationConfigFiles(List<ConfigFileMetadata> internalConfigFiles, String namespace, String serviceName, String[] profiles) {
|
|
|
|
private void buildInternalApplicationConfigFiles(
|
|
|
|
List<String> profileList = new ArrayList<>();
|
|
|
|
List<ConfigFileMetadata> internalConfigFiles, String namespace, String serviceName, List<String> profileList) {
|
|
|
|
if (ArrayUtils.isNotEmpty(profiles)) {
|
|
|
|
|
|
|
|
profileList.addAll(Arrays.asList(profiles));
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else {
|
|
|
|
|
|
|
|
profileList.addAll(Arrays.asList(environment.getDefaultProfiles()));
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
for (String profile : profileList) {
|
|
|
|
for (String profile : profileList) {
|
|
|
|
if (!StringUtils.hasText(profile)) {
|
|
|
|
if (!StringUtils.hasText(profile)) {
|
|
|
|
continue;
|
|
|
|
continue;
|
|
|
@ -150,14 +152,8 @@ public class PolarisConfigFileLocator implements PropertySourceLocator {
|
|
|
|
internalConfigFiles.add(new DefaultConfigFileMetadata(namespace, serviceName, "application.yml"));
|
|
|
|
internalConfigFiles.add(new DefaultConfigFileMetadata(namespace, serviceName, "application.yml"));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private void buildInternalBootstrapConfigFiles(List<ConfigFileMetadata> internalConfigFiles, String namespace, String serviceName, String[] profiles) {
|
|
|
|
private void buildInternalBootstrapConfigFiles(
|
|
|
|
List<String> profileList = new ArrayList<>();
|
|
|
|
List<ConfigFileMetadata> internalConfigFiles, String namespace, String serviceName, List<String> profileList) {
|
|
|
|
if (ArrayUtils.isNotEmpty(profiles)) {
|
|
|
|
|
|
|
|
profileList.addAll(Arrays.asList(profiles));
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else {
|
|
|
|
|
|
|
|
profileList.addAll(Arrays.asList(environment.getDefaultProfiles()));
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
for (String profile : profileList) {
|
|
|
|
for (String profile : profileList) {
|
|
|
|
if (!StringUtils.hasText(profile)) {
|
|
|
|
if (!StringUtils.hasText(profile)) {
|
|
|
|
continue;
|
|
|
|
continue;
|
|
|
|