Gyakorlat – Ág létrehozása és egyesítése

Befejeződött

A játékvállalatnál a webhely fejlesztői azt tervezik, hogy hozzáadnak egy új Azure Cosmos DB-adatbázist, amely adatokat tárol a vállalat által értékesített játékokról. A fejlesztők megkérték, hogy frissítse a Bicep-kódot a Cosmos DB-erőforrások hozzáadásához. Azonban még nem állnak készen a módosításokra. Csak azt szeretnék, hogy készen álljon a módosításokra, amikor befejezik a módosításokat.

Ebben a gyakorlatban egy új Bicep-modult fog hozzáadni az adattár egy ágához. A folyamat során a következőt fogja elvégezni:

  • Hozzon létre egy ágat, és váltson rá.
  • Módosítsa a Bicep-kódot az ágon.
  • Váltson vissza a fő ágra.
  • Egyesítse az ágat a főbe.

Ág létrehozása és kivétele az adattárban

  1. A Visual Studio Code terminál használatával futtassa a következő parancsot egy új ág létrehozásához és kivételéhez:

    git checkout -b add-database
    
  2. Futtassa a következő parancsot az adattár állapotának ellenőrzéséhez:

    git status
    

    A kimenet az alábbi példához hasonlóan néz ki:

    On branch add-database
    nothing to commit, working tree clean
    

    A kimenet első sora jelzi, hogy a Git a bővítmény-adatbázis ágán található.

  3. A Visual Studio Code-ban tekintse meg az ablak alján, bal oldalán található állapotsort. Figyelje meg, hogy az ág neve adatbázis-bővítményre változott.

    A többi Futtatott Git-parancshoz hasonlóan a Visual Studio Code is naprakész marad a Git-adattár módosításaival, beleértve az ág kivételét is.

Fájl frissítése az ágon

Most, hogy létrehozott egy ágat, hozzáad egy új Bicep-modult a webhely Azure Cosmos DB-fiókjához.

  1. A mappa modulok almappájában hozzon létre egy cosmos-db.bicep nevű új fájlt.

  2. Nyissa meg és mentse az üres cosmos-db.bicep fájlt, hogy a Visual Studio Code betöltse a Bicep-eszközt.

  3. Másolja a következő kódot a cosmos-db.bicep fájlba:

    @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@2022-05-15' = {
      name: cosmosDBAccountName
      location: location
      properties: {
        databaseAccountOfferType: 'Standard'
        locations: [
          {
            locationName: location
          }
        ]
      }
    }
    
    resource cosmosDBDatabase 'Microsoft.DocumentDB/databaseAccounts/sqlDatabases@2022-05-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: {}
        }
      }
    }
    
  4. Mentse és zárja be a cosmos-db.bicep fájlt.

  5. Nyissa meg a main.bicep fájlt.

  6. Adja hozzá a következő paraméterdefiníciókat a appServiceAppName paraméterdefiníció alatt:

    @description('The name of the Cosmos DB account. This name must be globally unique.')
    param cosmosDBAccountName string = 'toyweb-${uniqueString(resourceGroup().id)}'
    
  7. Adja hozzá a következő moduldefiníciót a appService moduldefiníció alatt:

    module cosmosDB 'modules/cosmos-db.bicep' = {
      name: 'cosmos-db'
      params: {
        location: location
        environmentType: environmentType
        cosmosDBAccountName: cosmosDBAccountName
      }
    }
    
  8. Mentse és zárja be a main.bicep fájlt.

Tekintse át a különbségeket, és véglegesítse a módosításokat

A fájlkülönbségek áttekintése után hajtsa végre és véglegesítse a módosításokat. Eldöntheti, hogy a Git CLI-vel vagy a Visual Studio Code-tal véglegesítse a fájlokat. Ez a példa a Git CLI-t használja.

  1. Ha a Visual Studio Code-ban használja a Forrásvezérlőt , tekintse meg a két fájl közötti különbségeket.

    Figyelje meg a main.bicep fájlban kiemelt módosított sorokat.

  2. Tekintse át a véglegesítésre kész fájlokat.

    git status
    

    A kimenet az alábbi példához hasonlóan fog kinézni.

    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")
    
  3. Mindkét fájl módosításainak szakaszba iktatása.

    git add .
    

    A pont (.) az összes módosított fájlt szakaszos állapotba állítva.

  4. Véglegesítse a módosításokat.

    git commit --message "Add Cosmos DB module"
    

    A kimenet az alábbi példához hasonlóan fog kinézni.

    [add-database 513f700] Add Cosmos DB module
      2 files changed, 71 insertions(+)
      create mode 100644 deploy/modules/cosmos-db.bicep
    

Ágak váltása

Most, hogy végrehajtotta a módosításokat az ágon, ellenőrizheti, hogy a módosítások csak a bővítmény-adatbázis ágán láthatók-e.

  1. Nézze meg a ágat. Az alábbi módszerek közül választhat:

    • A Visual Studio Code terminálablakában adja meg a következő parancsot:

      git checkout main
      
    • Az ablak alján található Visual Studio Code állapotsoron válassza ki a bővítmény-adatbázist jelenleg megjelenítő ágnevet.

      Megjelenik az ágak listája. Válassza ki a ágat.

  2. A Visual Studio Code Explorer panelen nyissa meg a main.bicep fájlt.

    Figyelje meg, hogy az Ön által végzett Azure Cosmos DB-módosítások egyike sem szerepel benne. Most, hogy átváltott a ágra, az adatbázismodul nincs ott. Ne aggódjon, biztonságosan tárolva vannak a bővítmény-adatbázis ágán.

Az ág egyesítése

A webhely csapata tesztelte a módosításokat, és készen áll a frissített webhely elindítására az Azure Cosmos DB-adatbázissal együtt. A bővítmény-adatbázis ágát a fő ágba fogja egyesíteni.

  1. Ellenőrizze, hogy a ágon van-e. Ehhez futtassa git status az ág nevét az állapotsoron.

  2. A Visual Studio Code terminálban adja meg a következő parancsot a bővítmény-adatbázis ág módosításainak a ágra való egyesítéséhez:

    git merge add-database
    
  3. A Visual Studio Code Explorer panelen nyissa meg a main.bicep fájlt.

    Figyelje meg, hogy az adatbázismodul most már megjelenik a fájlban. Frissítette az ismert bicep-fájlokat a ágon, hogy belefoglalja a bővítmény-adatbázis ágának módosításait.

  4. A Visual Studio Code terminálban írja be a következő parancsot a bővítmény-adatbázis ágának törléséhez, mert már nincs rá szüksége:

    git branch -d add-database