Ana içeriğe geç

7.3.2.2 Git Entegrasyonu#

Git Nedir?#

Git, yazılım geliştirme süreçlerinde kullanılan bir versiyon kontrol sistemidir.

Config Server ile Nasıl Kullanılır?#

Config-Server Konfigürasyonları#

  • hvl-infra içerisindeki config server docker-compose.yml dosyasında SPRING_PROFILES_ACTIVE alanı git olarak değiştirilir.

Config server varsayılan detaylı git konfigürasyonları aşağıdaki gibidir.

spring:
  cloud:
    config:
      server:
        git:
          uri: ${CONFIG_GIT_URI:https://bitbucket.bulut.ai/scm/javalt/hvl-infra.git}
          search-paths: ${CONFIG_GIT_SEARCH_PATHS:configuration,configuration/framework/spring,configuration/{hvl-cloud-config-profile}/framework/spring,configuration/{hvl-cloud-config-profile}}
          default-label: ${CONFIG_GIT_DEFAULT_LABEL:master}
          clone-on-start: ${CONFIG_GIT_CLONE_ON_START:false}
          order: ${GIT_ORDER:2}
          refresh-rate: ${CONFIG_GIT_REFRESH_RATE:0}

Native Kullanımdan Git Kullanımına Geçiş#

EKSEN tarafından sunulan config server varsayılan olarak hvl-infra projesi ile native modda çalışacak şekilde konfigüre edilmiştir. Bundan dolayı uygulamalar da native moddaki config server ile çalışacak şekilde ayarlı gelmektedir.

Eğer config server git modunda ayağa kaldırılmışsa aşağıdaki adımların intancelar üzerinden düzenlenmesi gerekmektedir. Bu environment olarak veya yaml'lar aracılığı ile yapılabilir.

  1. Uygulamanın environment değerlerine SERVER_CONFIGURATION_LABEL değeri eklenmelidir ve git repository'sinin hangi branchinin kullanılacağı bilgisi verilmelidir.

    Örnek

    SERVER_CONFIGURATION_LABEL=rc(_)3.2.0

    Not: Örnekteki (_) değeri / karakterine denk gelmektedir. / karakteri yerine (_) kullanılmalıdır.

  2. Uygulamadaki LOGGING_CONFIG environment değeri aşağıdaki gibi güncellenmelidir.

    Örnek

    Önceki (native mod kullanımı);

    LOGGING_CONFIG=${spring.cloud.config.uri}/${spring.application.name}/default/framework/log4j2/instance/oauth/session/log4j2.yml

    Sonraki (git mod kullanımı);

    LOGGING_CONFIG=${spring.cloud.config.uri}/${spring.application.name}/default/${spring.cloud.config.label}/framework/log4j2/instance/oauth/session/log4j2.yml

    Sadece default path'inden sonra ${spring.cloud.config.label} eklenmiştir. Bu da 1. adımda uygulanan git repository branch bilgisine (SERVER_CONFIGURATION_LABEL) karşılık gelmektedir. Buna ek olarak (_) değerleri / olarak değiştirilmiştir.