CI/CD işlem hattıyla tümleştirme

Bu makalede, Azure Uygulaması Yapılandırmasındaki verilerin sürekli tümleştirme ve sürekli dağıtım sisteminde nasıl kullanılacağı açıklanmaktadır.

Azure DevOps İşlem Hattınızda Uygulama Yapılandırması kullanma

Azure DevOps İşlem Hattınız varsa, anahtar-değerleri Uygulama Yapılandırması getirebilir ve bunları görev değişkenleri olarak ayarlayabilirsiniz. Azure Uygulaması Yapılandırma DevOps uzantısı, bu işlevselliği sağlayan bir eklenti modülüdür. Uzantıyı derleme veya yayın görev dizisinde kullanmak için yönergelerini izleyin.

Uygulamanızla Uygulama Yapılandırması verileri dağıtma

uygulamanız Azure Uygulaması Yapılandırmasına bağlıysa ve ulaşamıyorsa çalışmayabilir. Yapılandırma verilerini uygulamayla birlikte dağıtılan ve uygulama başlatma sırasında yerel olarak yüklenen bir dosyaya paketleyerek uygulamanızın dayanıklılığını artırın. Bu yaklaşım, uygulamanızın başlangıçta varsayılan ayar değerlerine sahip olduğunu garanti eder. Kullanılabilir olduğunda Uygulama Yapılandırması deposundaki yeni değişiklikler bu değerlerin üzerine yazılır.

Azure Uygulaması Yapılandırması'nın Export işlevini kullanarak, geçerli yapılandırma verilerini tek bir dosya olarak alma işlemini otomatikleştirebilirsiniz. Ardından bu dosyayı sürekli tümleştirme ve sürekli dağıtım (CI/CD) işlem hattınıza bir derleme veya dağıtım adımına ekleyebilirsiniz.

Aşağıdaki örnekte, hızlı başlangıçlarda sunulan web uygulaması için derleme adımı olarak Uygulama Yapılandırması verilerinin nasıl dahil olduğu gösterilmektedir. Devam etmeden önce Uygulama Yapılandırması ile ASP.NET Core uygulaması oluşturma işlemini tamamlayın.

Bu öğreticideki adımları gerçekleştirmek için herhangi bir kod düzenleyicisini kullanabilirsiniz. Visual Studio Code , Windows, macOS ve Linux platformlarında kullanılabilen mükemmel bir seçenektir.

Önkoşullar

Yerel olarak derlediyseniz, henüz yapmadıysanız Azure CLI'yı indirip yükleyin.

Uygulama Yapılandırması mağazasını dışarı aktarma

  1. .csproj dosyanızı açın ve aşağıdaki betiği ekleyin:

    <Target Name="Export file" AfterTargets="Build">
        <Message Text="Export the configurations to a temp file. " />
        <Exec WorkingDirectory="$(MSBuildProjectDirectory)" Condition="$(ConnectionString) != ''" Command="az appconfig kv export -d file --path $(OutDir)\azureappconfig.json --format json --separator : --connection-string $(ConnectionString)" />
    </Target>
    
  2. Program.cs açın ve yöntemini çağırarak dışarı aktarılan JSON dosyasını kullanacak şekilde güncelleştirin config.AddJsonFile()CreateWebHostBuilder. Ad alanını System.Reflection da ekleyin.

    public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
        WebHost.CreateDefaultBuilder(args)
            .ConfigureAppConfiguration((hostingContext, config) =>
            {
                var directory = System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
                var settings = config.Build();
    
                config.AddJsonFile(Path.Combine(directory, "azureappconfig.json"));
                config.AddAzureAppConfiguration(settings["ConnectionStrings:AppConfig"]);
            })
            .UseStartup<Startup>();
    

Uygulamayı yerel olarak derleme ve çalıştırma

  1. Bağlan ionString adlı bir ortam değişkeni ayarlayın ve bunu Uygulama Yapılandırması deponuzun erişim anahtarına ayarlayın.

    Windows komut istemini kullanarak uygulamayı yerel olarak derlemek ve çalıştırmak için aşağıdaki komutu çalıştırın ve değişikliğin etkili olması için komut istemini yeniden başlatın:

        setx ConnectionString "connection-string-of-your-app-configuration-store"
    
  2. .NET CLI kullanarak uygulamayı derlemek için komut kabuğunda aşağıdaki komutu çalıştırın:

     dotnet build
    
  3. Derleme başarıyla tamamlandıktan sonra web uygulamasını yerel olarak çalıştırmak için aşağıdaki komutu çalıştırın:

     dotnet run
    
  4. Bir tarayıcı penceresi açın ve yerel olarak barındırılan web uygulamasının varsayılan URL'si olan öğesine gidin http://localhost:5000.

    Screenshot that shows Quickstart app launch local page.

Sonraki adımlar

Bu öğreticide, dağıtım işlem hattında kullanılacak Azure Uygulaması Yapılandırma verilerini dışarı aktarmıştınız. Uygulama Yapılandırması kullanma hakkında daha fazla bilgi edinmek için Azure CLI örneklerine geçin.