Spring Cloud Config Server提供嵌套的纯文本文件

时间:2019-04-09 23:10:18

标签: spring spring-cloud configserver

我已经启动并运行了Config Server,其相关application.yml设置为

application.properties

我想访问的文件不是myfile.txt,类似/myapp/nested/folder/myfile.txt 。如果我有git布局

/{name}/{profile}/{label}/{path}

我希望能够访问该文件。根据{{​​3}}的说法,我应该可以通过count来做到这一点,但是我无法获得任何工作路径。

TL; DR:如何通过Config Server从git存储库中检索嵌套的配置文件?

1 个答案:

答案 0 :(得分:0)

TL; DR:文档错误。端点/{name}/{profile}/{label}/{path}应写为/{application}/{profile}/{label}/{path}。您只需要确保您的searchPaths/{path}之一可以解析您的文件即可。


首先,{label}与往常一样是git分支名称(可能是“ master”)。

第二,{path}可以是文件的绝对路径。它使用/,即myapp/nested/folder/myfile.txt,而不是(_){application}中要求的{label}

第三,将问题中的搜索路径设置为'{application}''{application}/{profile}',以及默认搜索路径/,即git repo的根目录。这些将Config Server搜索纯文本文件的位置定义为:

/{expanded application}/{path}
/{expanded application}/{profile}/{path}
/{path}

请注意,只有{application}可以使用(_)扩展到多个文件夹,并且只有{path}可以包含/的多个文件夹。例如,对于这些searchPaths和位于/myapp/nested/folder/myfile.txt的文件,以下请求有效:

/asdf/asdf/master/myapp/nested/folder/myfile.txt
/myapp/asdf/master/nested/folder/myfile.txt
/myapp/nested/master/folder/myfile.txt
/myapp(_)nested(_)folder/asdf/master/myfile.txt
/myapp(_)nested/folder/master/myfile.txt

其中asdf可以是任意字符串。