Обслуживание простых текстовых файлов с сервера конфигурации Spring Cloud с серверной частью S3

#spring #amazon-s3 #spring-cloud #spring-cloud-config

Вопрос:

Мы пытаемся перенести наш сервер конфигурации Spring Cloud с серверной части Git на S3. Это нормально работает для обычных конфигурационных файлов yaml, но мы также используем его для обслуживания обычных текстовых файлов, и у нас возникают проблемы с его работой.

В соответствии с этим вопросом https://github.com/spring-cloud/spring-cloud-config/issues/1506 и документация здесь https://cloud.spring.io/spring-cloud-static/spring-cloud-config/2.2.3.RELEASE/reference/html/#spring-cloud-config-serving-plain-text-aws-s3 это должно сработать, но в документации описан формат URL-адреса для серверной части Git, но не для серверной части S3.

Ранее мы использовали:

https://config-host/a/b/master/myfile.txt

И это сработало. Какой формат мы должны использовать для S3?

Я пытался

https://config-host/test/b/c/myfile.txt

и заметил это в журналах:

 2021-07-30 17:46:35.787  WARN 1 --- [  XNIO-1 task-3] o.s.c.config.server.support.PathUtils    : Resource path "https://s3.us-west-2.amazonaws.com/my-bucket/test" was successfully resolved but resource "https://s3.us-west-2.amazonaws.com/my-bucket/test/myfile.txt" is neither under the current location "https://s3.us-west-2.amazonaws.com/my-bucket/test" nor under any of the allowed locations [Amazon s3 resource [bucket='my-bucket' and object='test']]
 

(после того, как положил myfile.txt в тестовой папке в моем ведре)

Может быть, здесь есть проблема с кодировкой — т. е. test/myfile.txt ?

Мы используем spring-cloud 2020.0.3 и spring-cloud-aws 2.3.0

Комментарии:

1. это правило предотвращает обход каталогов репозиториями на основе файловых систем. Если возникла проблема, скорее всего, это ошибка

2. Поднял вопрос github.com/spring-cloud/spring-cloud-config/issues/1939