Övning – Skapa och sammanfoga en gren
Tillbaka på leksaksföretaget planerar dina webbplatsutvecklare att lägga till en ny Azure Cosmos DB-databas för att lagra data om leksakerna som företaget säljer. Utvecklarna bad dig att uppdatera Bicep-koden för att lägga till Cosmos DB-resurserna. De är dock inte redo att göra ändringarna ännu. De vill bara att du ska förbereda ändringarna när ändringarna är klara.
I den här övningen lägger du till en ny Bicep-modul på en gren av lagringsplatsen. Under processen gör du följande:
- Skapa en gren och växla till den.
- Ändra din Bicep-kod på grenen.
- Växla tillbaka till huvudgrenen.
- Sammanfoga grenen till main.
Skapa och checka ut en gren på lagringsplatsen
Genom att använda Visual Studio Code-terminalen kör du följande kommando för att skapa och kolla in en ny gren:
git checkout -b add-database
Kör följande kommando för att kontrollera lagringsplatsens status:
git status
Utdata ser ut ungefär som i följande exempel:
On branch add-database nothing to commit, working tree clean
Den första raden i utdata anger att Git finns på grenen add-database .
I Visual Studio Code tittar du på statusfältet längst ned till vänster i fönstret. Observera att grennamnet har ändrats till add-database.
Precis som med de andra Git-kommandona som du har kört är Visual Studio Code uppdaterat med ändringarna i Git-lagringsplatsen, inklusive när du checkar ut en gren.
Uppdatera en fil på din gren
Nu när du har skapat en gren lägger du till en ny Bicep-modul för webbplatsens Azure Cosmos DB-konto.
I undermappen för distributionsmappensmoduler skapar du en ny fil med namnet cosmos-db.bicep.
Öppna och spara den tomma cosmos-db.bicep-filen så att Visual Studio Code läser in Bicep-verktyget.
Kopiera följande kod till cosmos-db.bicep:
@description('The Azure region into which the resources should be deployed.') param location string @description('The type of environment. This must be nonprod or prod.') @allowed([ 'nonprod' 'prod' ]) param environmentType string @description('The name of the Cosmos DB account. This name must be globally unique.') param cosmosDBAccountName string var cosmosDBDatabaseName = 'ProductCatalog' var cosmosDBDatabaseThroughput = (environmentType == 'prod') ? 1000 : 400 var cosmosDBContainerName = 'Products' var cosmosDBContainerPartitionKey = '/productid' resource cosmosDBAccount 'Microsoft.DocumentDB/databaseAccounts@2024-11-15' = { name: cosmosDBAccountName location: location properties: { databaseAccountOfferType: 'Standard' locations: [ { locationName: location } ] } } resource cosmosDBDatabase 'Microsoft.DocumentDB/databaseAccounts/sqlDatabases@2024-11-15' = { parent: cosmosDBAccount name: cosmosDBDatabaseName properties: { resource: { id: cosmosDBDatabaseName } options: { throughput: cosmosDBDatabaseThroughput } } resource container 'containers' = { name: cosmosDBContainerName properties: { resource: { id: cosmosDBContainerName partitionKey: { kind: 'Hash' paths: [ cosmosDBContainerPartitionKey ] } } options: {} } } }
Spara och stäng filen cosmos-db.bicep .
Öppna filen main.bicep.
Lägg till följande parameterdefinitioner under parameterdefinitionen
appServiceAppName
:@description('The name of the Cosmos DB account. This name must be globally unique.') param cosmosDBAccountName string = 'toyweb-${uniqueString(resourceGroup().id)}'
Lägg till följande moduldefinition under moduldefinitionen
appService
:module cosmosDB 'modules/cosmos-db.bicep' = { name: 'cosmos-db' params: { location: location environmentType: environmentType cosmosDBAccountName: cosmosDBAccountName } }
Spara och stäng filen main.bicep .
Granska skillnaderna och genomför ändringarna
När du har granskat filskillnaderna mellanlagra och checka in ändringarna. Du kan välja om du vill använda Git CLI eller Visual Studio Code för att checka in filerna. I det här exemplet används Git CLI.
Med hjälp av källkontroll i Visual Studio Code kan du titta på skillnaderna för båda filerna.
Lägg märke till de ändrade raderna som är markerade i filen main.bicep .
Granska de filer som är redo att checkas in.
git status
Utdata ser ut som i följande exempel.
On branch add-database Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git restore <file>..." to discard changes in working directory) modified: deploy/main.bicep Untracked files: (use "git add <file>..." to include in what will be committed) deploy/modules/cosmos-db.bicep no changes added to commit (use "git add" and/or "git commit -a")
Mellanlagra ändringarna för båda filerna.
git add .
Punkten (
.
) stegar alla filer som har ändrats.Genomför ändringarna.
git commit --message "Add Cosmos DB module"
Utdata ser ut som i följande exempel.
[add-database 513f700] Add Cosmos DB module 2 files changed, 71 insertions(+) create mode 100644 deploy/modules/cosmos-db.bicep
Växla grenar
Nu när du har gjort ändringarna på din gren kan du kontrollera att ändringarna endast visas på grenen add-database .
Kolla in huvudgrenen. Du kan välja någon av följande metoder:
I terminalfönstret i Visual Studio Code anger du följande kommando:
git checkout main
I statusfältet i Visual Studio Code längst ned i fönstret väljer du det grennamn som för närvarande visar tilläggsdatabasen.
En lista med grenar visas. Välj huvudgrenen.
I fönstret Visual Studio Code Explorer öppnar du filen main.bicep .
Observera att ingen av de Azure Cosmos DB-ändringar som du har gjort ingår. Nu när du har bytt till huvudgrenen finns inte databasmodulen där. Oroa dig inte, de lagras säkert på din add-database-gren .
Slå samman grenen
Webbplatsteamet har testat ändringarna och är nu redo att starta den uppdaterade webbplatsen med Azure Cosmos DB-databasen inkluderad. Du sammanfogar grenen add-database till huvudgrenen.
Kontrollera att du är på huvudgrenen genom att köra
git status
och genom att titta på grennamnet i statusfältet.I Visual Studio Code-terminalen anger du följande kommando för att sammanfoga ändringarna från grenen add-database till huvudgrenen:
git merge add-database
I fönstret Visual Studio Code Explorer öppnar du filen main.bicep .
Observera att databasmodulen nu visas i filen. Nu har du uppdaterat dina kända Bicep-filer på huvudgrenen så att de inkluderar ändringarna från din add-database-gren.
I Visual Studio Code-terminalen anger du följande kommando för att ta bort grenen add-database eftersom du inte längre behöver den:
git branch -d add-database