Øvelse – Udgiv en skabelonspecifikation
Dit team har nogle sikkerhedshærdet Bicep-filer, der overholder din virksomheds nye styringsmodel. En af de hærdede Bicep-filer installerer en Linux-baseret Azure App Service-app. I denne øvelse skal du bruge en udrulningspipeline til at publicere Bicep-filen som en skabelonspecifikation.
Under processen skal du:
- Føj en lintfase til pipelinen.
- Tilføj en pipelinefase for at publicere skabelonspecifikationen.
- Kontrollér, at pipelinen starter og afsluttes.
- Kontrollér specifikationerne for den publicerede skabelon i Azure.
Føj en lintfase til din pipeline
Dit lager indeholder et udkast til en pipelinedefinition, som du kan bruge som udgangspunkt.
I Visual Studio Code skal du udvide mappen template-specs/linux-app-service mappe i roden af lageret.
Åbn filen pipeline.yml.
Erstat
# To be added
med følgende definition af lintfase nederst i filen:stages: - stage: Lint jobs: - job: LintCode displayName: Lint code steps: - script: | az bicep build --file $(TemplateSpecFilePath) name: LintBicepCode displayName: Run Bicep linter
Dit lager har en bicepconfig.json fil, der konfigurerer linteren til at udsende fejl i stedet for advarsler. Eventuelle fejl under lintfasen medfører, at pipelinen mislykkes.
Drikkepenge
YAML-filer er følsomme for indrykning. Uanset om du skriver eller indsætter denne kode, skal du sørge for, at indrykningen er korrekt. Senere i denne øvelse får du vist den komplette YAML-pipelinedefinition, så du kan kontrollere, at filen stemmer overens.
Føj en publiceringsfase til din pipeline
Nu kan du tilføje endnu en fase for at publicere skabelonspecifikationen til Azure.
Tilføj følgende kode i slutningen af filen pipeline.yml:
- stage: Publish jobs: - job: Publish steps: - task: AzureCLI@2 name: Publish displayName: Publish template spec inputs: azureSubscription: $(ServiceConnectionName) scriptType: 'bash' scriptLocation: 'inlineScript' inlineScript: | az ts create \ --resource-group $(AzureResourceGroupName) \ --name $(TemplateSpecName) \ --version $(Build.BuildNumber) \ --template-file $(TemplateSpecFilePath) \ --location $(AzureRegion) \ --yes
I denne fase tjekkes koden ud fra dit lager, og der logges på Azure ved hjælp af den tjenesteforbindelse, du har oprettet. Derefter køres kommandoen
az ts create
for at publicere skabelonspecifikationen på Azure.Drikkepenge
For at gøre tingene enkle bruger pipelinen pipelinens buildnummer som versionsnummeret for skabelonspecifikationen. I det næste undermodul får du mere at vide om et mere komplekst versionsstyringsskema.
Gem ændringerne i filen.
Bekræft og bekræft din pipelinedefinition
Kontrollér, at din pipeline.yml-fil ligner følgende eksempel:
trigger: batch: true branches: include: - main paths: include: - 'template-specs/linux-app-service/**' variables: - name: ServiceConnectionName value: ToyReusable - name: AzureResourceGroupName value: ToyReusable - name: AzureRegion value: westus3 - name: TemplateSpecName value: linux-app-service - name: TemplateSpecFilePath value: template-specs/linux-app-service/main.bicep pool: vmImage: ubuntu-latest stages: - stage: Lint jobs: - job: LintCode displayName: Lint code steps: - script: | az bicep build --file $(TemplateSpecFilePath) name: LintBicepCode displayName: Run Bicep linter - stage: Publish jobs: - job: Publish steps: - task: AzureCLI@2 name: Publish displayName: Publish template spec inputs: azureSubscription: $(ServiceConnectionName) scriptType: 'bash' scriptLocation: 'inlineScript' inlineScript: | az ts create \ --resource-group $(AzureResourceGroupName) \ --name $(TemplateSpecName) \ --version $(Build.BuildNumber) \ --template-file $(TemplateSpecFilePath) \ --location $(AzureRegion) \ --yes
Hvis den ikke gør det, skal du opdatere den, så den stemmer overens med dette eksempel, og derefter gemme den.
Bekræft og send dine ændringer til Git-lageret ved at køre følgende kommandoer i Visual Studio Code-terminalen:
git add . git commit -m "Add lint and publish stages to Linux App Service template spec pipeline" git push
Umiddelbart efter du har pushet, starter Azure Pipelines en ny pipelinekørsel.
Overvåg pipelinen
Vælg Pipelines>Pipelinesi browseren.
Vælg den aktive pipelinekørsel.
Pipelinekørslen vises.
Vent, indtil pipelinen er færdig. Når den gør det, publiceres skabelonspecifikationen på Azure.
Bemærk pipelinens buildnummer, som omfatter dags dato og et entydigt revisionsnummer. På eksempelskærmbillede er buildnummeret 20230407.1.
Gennemse skabelonspecifikationen i Azure
Du kan også få vist de publicerede skabelonspecifikationer på Azure Portal.
I din browser skal du gå til Azure Portal.
Gå til ressourcegruppen ToyReusable, og vælg skabelonen linux-app-service.
Undersøg detaljerne i skabelonspecifikationen.
Bemærk, at seneste version og version er det samme som pipelinens buildnummer. Din pipeline bruger buildnummeret til skabelonspecifikationens versionsnummer.