Как исключить @ConfigurationProperties из перезагрузки в kubernetes ConfigMap

#spring-boot #kubernetes #spring-cloud

#весенняя загрузка #kubernetes #весна-облако

Вопрос:

В моем приложении у меня есть компонент ds с префиксом, поэтому я могу определить его в application.properties по профилю

 @Bean
@ConfigurationProperties(prefix = "atomikos.db")
public AbstractDataSourceBean dbDataSource() {
    AtomikosNonXADataSourceBean atomikosDataSource = new AtomikosNonXADataSourceBean();    
    return atomikosDataSource;
}
  

согласно этой статье, этот компонент будет перезагружен при изменении ConfigMap, но как я могу исключить его и по-прежнему использовать application.properties для определения свойств этого компонента в соответствии с профилем? В производственной системе я просто не могу воссоздать соединение с БД

Ответ №1:

Согласно последней документации, вы должны установить

 spring.cloud.refresh.never-refreshable=my.package.ClassName
  

где my.package.ClassName — это тип компонента, который вы не хотите обновлять.