Rychlý start: Připojení k flexibilnímu serveru Azure Database for PostgreSQL pomocí GitHub Actions
PLATÍ PRO: Flexibilní server Azure Database for PostgreSQL
Začněte pracovat s GitHub Actions pomocí pracovního postupu pro nasazení aktualizací databáze na flexibilní server Azure Database for PostgreSQL.
Požadavky
Potřebujete:
- Účet Azure s aktivním předplatným. Vytvoření účtu zdarma
- Úložiště GitHub s ukázkovými daty (
data.sql
). Pokud nemáte účet GitHubu, zaregistrujte se zdarma. - Flexibilní instance serveru Azure Database for PostgreSQL.
Přehled souboru pracovního postupu
Pracovní postup GitHub Actions je definovaný souborem YAML (.yml) v /.github/workflows/
cestě ve vašem úložišti. Tato definice obsahuje různé kroky a parametry, které tvoří pracovní postup.
Soubor má dvě části:
Sekce | Úlohy |
---|---|
Authentication | 1. Vygenerujte přihlašovací údaje pro nasazení. |
Nasazení | 1. Nasaďte databázi. |
Generování přihlašovacích údajů pro nasazení
Pomocí příkazu az ad sp create-for-rbac v Azure CLI vytvořte instanční objekt. Spusťte tento příkaz pomocí Azure Cloud Shellu na webu Azure Portal nebo výběrem tlačítka Vyzkoušet .
az ad sp create-for-rbac --name "myML" --role contributor \
--scopes /subscriptions/<subscription-id>/resourceGroups/<group-name> \
--json-auth
--json-auth
Parametr je k dispozici ve verzích >Azure CLI = 2.51.0. Verze před tímto použitím --sdk-auth
s upozorněním na vyřazení.
V předchozím příkladu nahraďte zástupné symboly ID vašeho předplatného, názvem skupiny prostředků a názvem aplikace. Výstupem je objekt JSON s přihlašovacími údaji pro přiřazení role, které poskytují přístup k vaší aplikaci App Service podobně jako v následujícím příkladu. Zkopírujte tento objekt JSON pro pozdější použití.
{
"clientId": "<GUID>",
"clientSecret": "<GUID>",
"subscriptionId": "<GUID>",
"tenantId": "<GUID>",
(...)
}
Kopírování flexibilního serveru Azure Database for PostgreSQL připojovací řetězec
Na webu Azure Portal přejděte do instance flexibilního serveru Azure Database for PostgreSQL a v nabídce prostředků v části Nastavení vyberte Připojit. Na této stránce pomocí pole se seznamem Název databáze vyberte název databáze, ke které se chcete připojit. Rozbalte část Připojit z oddílu aplikace a zkopírujte ADO.NET připojovací řetězec a nahraďte hodnotu {your_password}
zástupného symbolu skutečným heslem. Připojovací řetězec vypadá nějak takto.
Server={servername.postgres.database.azure.com};Database={your_database};Port=5432;User Id={adminusername};Password={your_password};Ssl Mode=Require;
Připojovací řetězec použijete jako tajný kód GitHubu.
Konfigurace tajných kódů GitHubu
Na GitHubu přejděte do svého úložiště.
V navigační nabídce přejděte na Nastavení .
Vyberte Akce tajných kódů zabezpečení > a proměnných>.
Vyberte Nový tajný klíč úložiště.
Celý výstup JSON z příkazu Azure CLI vložte do pole hodnoty tajného kódu. Dejte tajnému názvu
AZURE_CREDENTIALS
.Vyberte Add secret (Přidat tajný kód).
Přidání pracovního postupu
Přejděte na Akce pro úložiště GitHub.
Vyberte Nastavit pracovní postup sami.
Odstraňte všechno za oddílem
on:
souboru pracovního postupu. Váš zbývající pracovní postup může například vypadat takto.name: CI on: push: branches: [ main ] pull_request: branches: [ main ]
Přejmenujte pracovní postup
PostgreSQL for GitHub Actions
a přidejte akce rezervace a přihlášení. Tyto akce si projděte kód webu a ověřte se v Azure pomocí tajných kódů GitHubu, které jste vytvořili dříve.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 }}
Pomocí akce Nasazení Azure PostgreSQL se připojte k instanci flexibilního serveru Azure Database for PostgreSQL. Nahraďte
POSTGRESQL_SERVER_NAME
názvem serveru. Měli byste mít datový soubor flexibilního serveru Azure Database for PostgreSQL pojmenovanýdata.sql
na kořenové úrovni úložiště.- uses: azure/postgresql@v1 with: connection-string: ${{ secrets.AZURE_POSTGRESQL_CONNECTION_STRING }} server-name: POSTGRESQL_SERVER_NAME plsql-file: './data.sql'
Dokončete pracovní postup přidáním akce pro odhlášení z Azure. Tady je dokončený pracovní postup. Soubor se zobrazí ve
.github/workflows
složce úložiště.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
Kontrola nasazení
Přejděte na Akce pro úložiště GitHub.
Otevřete první výsledek a prohlédněte si podrobné protokoly spuštění pracovního postupu.
Vyčištění prostředků
Pokud už databázi a úložiště flexibilního serveru Azure Database for PostgreSQL nepotřebujete, vyčistěte prostředky, které jste nasadili, odstraněním skupiny prostředků a úložiště GitHub.