Rövid útmutató: A GitHub Actions használata az Azure Database for PostgreSQL-hez való csatlakozáshoz – rugalmas kiszolgáló
A következőkre vonatkozik: Azure Database for PostgreSQL – Önálló azure database for PostgreSQL – rugalmas kiszolgáló
Fontos
Azure Database for PostgreSQL – Az önálló kiszolgáló a kivezetési útvonalon van. Határozottan javasoljuk, hogy frissítsen az Azure Database for PostgreSQL rugalmas kiszolgálóra. A rugalmas Azure Database for PostgreSQL-kiszolgálóra való migrálással kapcsolatos további információkért lásd: Mi történik az önálló Azure Database for PostgreSQL-kiszolgálóval?
Ismerkedjen meg a GitHub Actions szolgáltatással egy munkafolyamattal, amellyel adatbázis-frissítéseket helyezhet üzembe a rugalmas Azure Database for PostgreSQL-kiszolgálón.
Előfeltételek
A következők szükségesek:
- Egy Azure-fiók, aktív előfizetéssel. Fiók ingyenes létrehozása.
- Egy GitHub-adattár mintaadatokkal (
data.sql
). Ha nincs GitHub-fiókja, regisztráljon ingyenesen. - Rugalmas Azure Database for PostgreSQL-kiszolgálópéldány.
Munkafolyamat-fájl áttekintése
A GitHub Actions-munkafolyamatokat egy YAML-fájl (.yml) definiálja az /.github/workflows/
adattár elérési útján. Ez a definíció a munkafolyamatot alkotó különböző lépéseket és paramétereket tartalmazza.
A fájl két szakaszból áll:
Section | Tevékenységek |
---|---|
Hitelesítés | 1. Üzembehelyezési hitelesítő adatok létrehozása. |
Telepítés | 1. Helyezze üzembe az adatbázist. |
Üzembehelyezési hitelesítő adatok létrehozása
Hozzon létre egy egyszerű szolgáltatást az az ad sp create-for-rbac paranccsal az Azure CLI-ben. Futtassa ezt a parancsot az Azure Cloud Shell használatával az Azure Portalon, vagy a Kipróbálás gombra kattintva.
az ad sp create-for-rbac --name "myML" --role contributor \
--scopes /subscriptions/<subscription-id>/resourceGroups/<group-name> \
--json-auth
A paraméter --json-auth
az Azure CLI 2.51.0-s verzióiban >érhető el. A használat --sdk-auth
előtti verziók elavultsági figyelmeztetéssel.
A fenti példában cserélje le a helyőrzőket az előfizetés azonosítójára, az erőforráscsoport nevére és az alkalmazás nevére. A kimenet egy JSON-objektum, amelynek szerepkör-hozzárendelési hitelesítő adatai az alábbiakhoz hasonló hozzáférést biztosítanak az App Service-alkalmazáshoz. Másolja ezt a JSON-objektumot későbbre.
{
"clientId": "<GUID>",
"clientSecret": "<GUID>",
"subscriptionId": "<GUID>",
"tenantId": "<GUID>",
(...)
}
Másolja a rugalmas Azure Database for PostgreSQL-kiszolgálót kapcsolati sztring
Az Azure Portalon nyissa meg rugalmas Azure Database for PostgreSQL-kiszolgálópéldányát, és nyissa meg Gépház> Csatlakozás ion-sztringeket. Másolja az ADO.NET kapcsolati sztringet. Cserélje le a helyőrző értékeket a következőre your_database
: és your_password
. A kapcsolati sztring ehhez hasonlóan néz ki.
Fontos
- Az önálló Azure Database for PostgreSQL-kiszolgálóhoz használja a következőt
user=adminusername@servername
: . Vegye figyelembe, hogy a@servername
szükséges. - Rugalmas Azure Database for PostgreSQL-kiszolgáló esetén használja
user= adminusername
a@servername
.
psql host={servername.postgres.database.azure.com} port=5432 dbname={your_database} user={adminusername} password={your_database_password} sslmode=require
A kapcsolati sztring GitHub-titkos kódként használja.
A GitHub titkos kulcsainak konfigurálása
A GitHubon nyissa meg az adattárat.
Nyissa meg a Gépház a navigációs menüben.
Válassza ki a Biztonsági > titkos kulcsok és változók > műveletek lehetőséget.
Válassza az Új tárház titkos kódját.
Illessze be az Azure CLI parancs teljes JSON-kimenetét a titkos kód értékmezőjébe. Adja meg a titkos nevet
AZURE_CREDENTIALS
.Válassza az Add secret (Titkos kód hozzáadása) lehetőséget.
Munkafolyamat hozzáadása
Nyissa meg a GitHub-adattár műveletek elemét.
Válassza a Munkafolyamat beállítása lehetőséget.
Töröljön mindent a
on:
munkafolyamat-fájl szakasza után. A fennmaradó munkafolyamat például így nézhet ki.name: CI on: push: branches: [ main ] pull_request: branches: [ main ]
Nevezze át a munkafolyamatot
PostgreSQL for GitHub Actions
, és adja hozzá a kivételt és a bejelentkezési műveleteket. Ezek a műveletek ellenőrzik a webhely kódját, és hitelesítik az Azure-ban a korábban létrehozott GitHub-titkos kód(ok) használatával.name: PostgreSQL for GitHub Actions on: push: branches: [ main ] pull_request: branches: [ main ] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - uses: azure/login@v1 with: creds: ${{ secrets.AZURE_CREDENTIALS }}
Az Azure PostgreSQL Deploy művelet használatával csatlakozzon rugalmas Azure Database for PostgreSQL-kiszolgálópéldányához. Cserélje le
POSTGRESQL_SERVER_NAME
a kiszolgáló nevére. Rendelkeznie kell egy rugalmas Azure Database for PostgreSQL-kiszolgálóadatfájllal, amely az adattár gyökérszintjén van elnevezvedata.sql
.- uses: azure/postgresql@v1 with: connection-string: ${{ secrets.AZURE_POSTGRESQL_CONNECTION_STRING }} server-name: POSTGRESQL_SERVER_NAME plsql-file: './data.sql'
Végezze el a munkafolyamatot úgy, hogy hozzáad egy műveletet az Azure-ból való kijelentkezéshez. Itt található a befejezett munkafolyamat. A fájl megjelenik az
.github/workflows
adattár mappájában.name: PostgreSQL for GitHub Actions on: push: branches: [ main ] pull_request: branches: [ main ] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - uses: azure/login@v1 with: client-id: ${{ secrets.AZURE_CREDENTIALS }} - uses: azure/postgresql@v1 with: server-name: POSTGRESQL_SERVER_NAME connection-string: ${{ secrets.AZURE_POSTGRESQL_CONNECTION_STRING }} plsql-file: './data.sql' # Azure logout - name: logout run: | az logout
Az üzembe helyezés áttekintése
Nyissa meg a GitHub-adattár műveletek elemét.
Nyissa meg az első eredményt a munkafolyamat futtatásának részletes naplóinak megtekintéséhez.
Az erőforrások eltávolítása
Ha már nincs szükség rugalmas Azure Database for PostgreSQL-kiszolgálóadatbázisra és -adattárra, törölje az üzembe helyezett erőforrásokat az erőforráscsoport és a GitHub-adattár törlésével.