Spring Cloud Function Лямбда-приложение. Ямл не загружается - PullRequest
0 голосов
/ 06 ноября 2018

Я пытаюсь использовать Spring-Cloud-Function , чтобы написать kotlin AWS Lambda. Когда я пытаюсь запустить его как лямбду AWS как на AWS, так и на Sam , все свойства, которые я добавляю с помощью @Value и которые находятся в resources / application.yaml , не разрешаются.

В соответствии с документацией я могу включить следующую зависимость для запуска предоставляемой функции как автономного веб-приложения:

<dependency>
  <groupId>org.springframework.cloud</groupId>
  <artifactId>spring-cloud-starter-function-web</artifactId>
  <version>${spring-cloud-function.version}</version>
</dependency>

Это оказалось очень полезным для локального запуска перед использованием sam и хорошо для отладки. С тех пор я использовал его, чтобы убедиться, что свойства взяты из application.yaml при запуске в качестве отдельного приложения. Так что нет ничего плохого в моей файловой структуре и коде.

application.yaml

aws:
  region: us-east-1
  bucket:
    directory : "myFiles"

Пример класса, который использует свойство:

@Configuration
class AwsConfig(
    @Value("\${aws.region}")
    private val region: String
) {

   @Bean
   fun s3Client(): AmazonS3 = AmazonS3Client.builder()
        .withClientConfiguration(awsConfig())
        .withRegion(region)
        .build()


   private fun awsConfig(): ClientConfiguration = ClientConfiguration()

}

Структура проекта:

.
├── pom.xml
├── serverless.yaml
└── src
    └── main
        ├── kotlin
        └── resources
            └── application.yaml

Это известный недостаток Spring-Cloud-Function или что-то еще не так?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...