Dela via


Integrera med en CI/CD-pipeline

Den här artikeln beskriver hur du använder data från Azure App Configuration i ett system för kontinuerlig integrering och kontinuerlig distribution.

Använda App Configuration i din Azure DevOps-pipeline

Om du har en Azure DevOps-pipeline kan du hämta nyckelvärden från App Configuration och ange dem som aktivitetsvariabler. Azure App Configuration DevOps-tillägget är en tilläggsmodul som tillhandahåller den här funktionen. Hämta den här modulen och se Pull-inställningar från App Configuration med Azure Pipelines för instruktioner om hur du använder den i dina Azure Pipelines.

Distribuera appkonfigurationsdata med ditt program

Programmet kan inte köras om det är beroende av Azure App Configuration och inte kan nå det. Förbättra programmets återhämtning genom att paketera konfigurationsdata till en fil som distribueras med programmet och läses in lokalt under programstarten. Den här metoden garanterar att ditt program har standardinställningsvärden vid start. Dessa värden skrivs över av nyare ändringar i ett appkonfigurationsarkiv när det är tillgängligt.

Med hjälp av funktionen Exportera i Azure App Configuration kan du automatisera processen med att hämta aktuella konfigurationsdata som en enda fil. Du kan sedan bädda in den här filen i ett bygg- eller distributionssteg i din CI/CD-pipeline (kontinuerlig integrering och kontinuerlig distribution).

I följande exempel visas hur du inkluderar appkonfigurationsdata som ett byggsteg för webbappen som introducerades i snabbstarterna. Innan du fortsätter slutför du Skapa en ASP.NET Core-app med App Configuration först.

Du kan använda valfri kodredigerare för att utföra stegen i den här självstudien. Visual Studio Code är ett utmärkt alternativ på Plattformarna Windows, macOS och Linux.

Förutsättningar

Om du skapar lokalt laddar du ned och installerar Azure CLI om du inte redan har gjort det.

Exportera ett appkonfigurationsarkiv

  1. Öppna .csproj-filen och lägg till följande skript:

    <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. Öppna Program.cs och uppdatera CreateWebHostBuilder metoden för att använda den exporterade JSON-filen genom att anropa config.AddJsonFile() metoden. System.Reflection Lägg även till namnområdet.

    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>();
    

Skapa och köra appen lokalt

  1. Ange en miljövariabel med namnet ConnectionString och ställ in den på åtkomstnyckeln till appkonfigurationsarkivet.

    Om du vill skapa och köra appen lokalt med hjälp av Windows-kommandotolken kör du följande kommando och startar om kommandotolken så att ändringen börjar gälla:

        setx ConnectionString "connection-string-of-your-app-configuration-store"
    
  2. Om du vill skapa appen med hjälp av .NET CLI kör du följande kommando i kommandogränssnittet:

     dotnet build
    
  3. När bygget har slutförts kör du följande kommando för att köra webbappen lokalt:

     dotnet run
    
  4. Öppna ett webbläsarfönster och gå till http://localhost:5000, vilket är standard-URL:en för webbappen lokalt.

    Skärmbild som visar startsidan för snabbstartsappen.

Nästa steg

I den här självstudien exporterade du Azure App Configuration-data som ska användas i en distributionspipeline. Om du vill veta mer om hur du använder App Configuration fortsätter du till Azure CLI-exemplen.