正在使用子文件夹从 spring 云配置存储库中获取属性
Fetching properties from spring cloud config repo with sub folders
我正在尝试为我的配置存储库创建一个文件夹结构。
root
├── serviceA
│ ├── application-dev.properties
│ └── application-prod.properties
├── serviceB
│ ├── application-dev.properties
│ └── application-prod.properties
在我的配置服务器中,我的 application.yml
中有以下内容
server:
port: 8081
spring:
application:
name: cloud-config-server
cloud:
config:
server:
monitor:
github:
enabled: true
gitee:
enabled: true
git:
password: ${PASSWORD}
username: ${USERNAME}
uri: ${LINK_TO_CONFIG}
default-label: master
search-paths: serviceA, serviceB
当 运行 服务器请求 http://localhost:8081/serviceA/prod
或 http://localhost:8081/serviceB/prod
我得到相同的结果
{
"name":"serviceA",
"profiles":[
"prod"
],
"label":null,
"version":"9df32c9dbd11be65e892caf878ddc8d16906a849",
"state":null,
"propertySources":[
{
"name":"GITHUB_URI/springcloudconfigrepo/serviceB/application-prod.properties",
"source":{
"profile":"some-service-prod"
}
},
{
"name":"GITHUB_URI//springcloudconfigrepo/serviceA/application-prod.properties",
"source":{
"profile":"another-service-prod"
}
}
]
}
我的问题是,如何才能仅获取 serviceA(或 serviceB)的属性?
我在 github 上的 spring 云配置服务器是 here
您需要将 searchPaths
的配置设置为您的应用程序名称。
配置应如下所示:
spring:
cloud:
config:
server:
git:
uri: ${LINK_TO_CONFIG}
searchPaths: '{application}'
我正在尝试为我的配置存储库创建一个文件夹结构。
root
├── serviceA
│ ├── application-dev.properties
│ └── application-prod.properties
├── serviceB
│ ├── application-dev.properties
│ └── application-prod.properties
在我的配置服务器中,我的 application.yml
server:
port: 8081
spring:
application:
name: cloud-config-server
cloud:
config:
server:
monitor:
github:
enabled: true
gitee:
enabled: true
git:
password: ${PASSWORD}
username: ${USERNAME}
uri: ${LINK_TO_CONFIG}
default-label: master
search-paths: serviceA, serviceB
当 运行 服务器请求 http://localhost:8081/serviceA/prod
或 http://localhost:8081/serviceB/prod
我得到相同的结果
{
"name":"serviceA",
"profiles":[
"prod"
],
"label":null,
"version":"9df32c9dbd11be65e892caf878ddc8d16906a849",
"state":null,
"propertySources":[
{
"name":"GITHUB_URI/springcloudconfigrepo/serviceB/application-prod.properties",
"source":{
"profile":"some-service-prod"
}
},
{
"name":"GITHUB_URI//springcloudconfigrepo/serviceA/application-prod.properties",
"source":{
"profile":"another-service-prod"
}
}
]
}
我的问题是,如何才能仅获取 serviceA(或 serviceB)的属性?
我在 github 上的 spring 云配置服务器是 here
您需要将 searchPaths
的配置设置为您的应用程序名称。
配置应如下所示:
spring:
cloud:
config:
server:
git:
uri: ${LINK_TO_CONFIG}
searchPaths: '{application}'