Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
BERLAKU UNTUK: Azure Database for PostgreSQL - Server Fleksibel
Anda dapat secara otomatis menyebarkan pembaruan database Anda ke server fleksibel Azure Database for PostgreSQL setelah setiap build yang berhasil dengan Azure Pipelines. Anda dapat menggunakan tugas CLI Azure untuk memperbarui database dengan file SQL atau skrip SQL sebaris terhadap database. Tugas ini dapat dijalankan pada agen lintas platform yang berjalan di sistem operasi Linux, macOS, atau Windows.
Prasyarat
- Akun Azure. Jika Anda tidak memilikinya, dapatkan uji coba gratis.
- Koneksi layanan Azure Resource Manager ke akun Azure Anda.
- Agen yang dihosting Microsoft memiliki Azure CLI yang telah diinstal sebelumnya. Namun jika Anda menggunakan agen privat, instal Azure CLI di komputer yang menjalankan agen build dan rilis. Jika agen sudah berjalan pada komputer tempat Azure CLI diinstal, mulai ulang agen untuk memastikan semua variabel tahap yang relevan diperbarui.
- Buat server fleksibel Azure Database for PostgreSQL.
Menggunakan file SQL
Contoh berikut menggambarkan cara meneruskan argumen database dan menjalankan perintah execute
- task: AzureCLI@2
displayName: Azure CLI
inputs:
azureSubscription: <Name of the Azure Resource Manager service connection>
scriptType: 'pscore'
scriptLocation: inlineScript
arguments:
-SERVERNAME mydemoserver `
-DBNAME pollsdb `
-DBUSER pollsdbuser`
-DBPASSWORD pollsdbpassword
inlineScript: |
az login --allow-no-subscription
az postgres flexible-server execute --name $(SERVERNAME) \
--admin-user $(DBUSER) --admin-password '$(DBPASSWORD)' \
--database-name $(DBNAME) --file-path /code/sql/db-schema-update.sql
Gunakan skrip SQL inline
Contoh berikut menggambarkan cara menjalankan skrip SQL sebaris menggunakan perintah execute
.
- task: AzureCLI@2
displayName: Azure CLI
inputs:
azureSubscription: <Name of the Azure Resource Manager service connection>
scriptType: 'pscore'
scriptLocation: inlineScript
arguments:
-SERVERNAME mydemoserver `
-DBNAME pollsdb `
-DBUSER pollsdbuser`
-DBPASSWORD pollsdbpassword
-INLINESCRIPT
inlineScript: |
az login --allow-no-subscription
az postgres flexible-server execute --name $(SERVERNAME) --admin-user $(DBUSER) \
--admin-password '$(DBPASSWORD)' --database-name $(DBNAME) \
--querytext "UPDATE items SET items.retail = items.retail * 0.9 WHERE items.id =100;"
Input tugas
Anda dapat melihat daftar lengkap semua input tugas saat menggunakan tugas Azure CLI dengan Azure Pipelines.
Parameter | Deskripsi |
---|---|
Langganan Azure | (Wajib) Sediakan langganan Azure Resource Manager untuk penyebaran. Parameter ini hanya ditampilkan ketika versi tugas yang dipilih adalah 0.* karena tugas Azure CLI v1.0 hanya mendukung langganan Azure Resource Manager. |
jenis skrip | (Wajib) Berikan jenis skrip. Skrip yang didukung adalah PowerShell, PowerShell Core, Bat, Shell, dan skrip. Saat menjalankan agen Linux, pilih salah satu dari berikut ini: bash atau pscore . Saat menjalankan agen Windows, pilih salah satu hal berikut ini: batch , , ps dan pscore . |
scriptLocation | (Wajib) Sediakan jalur ke skrip, misalnya jalur file nyata atau gunakan Inline script saat menyediakan skrip sebaris. Nilai defaultnya adalah scriptPath . |
scriptPath | (Wajib) Jalur skrip yang memenuhi syarat sepenuhnya (.ps1 atau .bat atau .cmd saat menggunakan agen berbasis Windows lain atau .ps1 atau .sh saat menggunakan agen berbasis linux) atau jalur yang terkait dengan direktori kerja default. |
inlineScript | (Wajib) Anda dapat menuliskan skrip sebaris Anda di sini. Saat menggunakan agen Windows, gunakan PowerShell, PowerShell Core, atau skrip batch. Sedangkan saat menggunakan agen berbasis Linux, gunakan PowerShell Core atau skrip shell. Untuk file batch, gunakan awalan "call" sebelum setiap perintah Azure. Anda juga dapat meneruskan variabel yang telah ditentukan dan kustom ke skrip ini menggunakan argumen. Contoh untuk PowerShell/PowerShellCore/shell: az --version az account show Contoh untuk batch: call az --version call az account show . |
argumen | (Opsional) Berikan semua argumen yang diberikan kepada skrip. Misalnya -SERVERNAME mydemoserver . |
PreferensiAksiKesalahanPowerShell | (Opsional) Menambahkan baris $ErrorActionPreference = 'VALUE' di bagian atas skrip PowerShell/PowerShell Core Anda. Nilai defaultnya adalah stop. Nilai yang didukung adalah stop, continue, dan silentlyContinue. |
addSpnToEnvironment | (Opsional) Menambahkan ID prinsipal layanan dan kunci endpoint Azure yang Anda pilih ke lingkungan eksekusi skrip. Anda dapat menggunakan variabel-variabel ini: $env:servicePrincipalId, $env:servicePrincipalKey, dan $env:tenantId di skrip Anda. Ini hanya dihargai ketika titik akhir Azure memiliki skema autentikasi Prinsipal Layanan. Nilai defaultnya adalah false. |
useGlobalConfig | (Opsional) Jika ini salah, tugas ini menggunakan direktori konfigurasi Azure CLI sendiri yang terpisah. Ini dapat digunakan untuk menjalankan tugas Azure CLI dalam rilis paralel " Nilai default: false |
workingDirectory (direktori kerja) | (Opsional) Direktori yang bekerja saat ini tempat skrip dijalankan. Empty adalah root dari repo (build) atau artefak (rilis), yaitu $(System.DefaultWorkingDirectory). |
failOnStandardError | (Opsional) Jika ini benar, tugas ini gagal ketika ada kesalahan yang ditulis ke aliran StandardError. Batalkan pemilihan kotak centang untuk mengabaikan kesalahan standar dan mengandalkan kode keluar untuk menentukan status. Nilai defaultnya adalah false. |
powerShellIgnoreLASTEXITCODE | (Opsional) Jika ini salah, baris if ((Test-Path -LiteralPath variable:\LASTEXITCODE)) { exit $LASTEXITCODE } ditambahkan ke akhir skrip Anda. Ini menyebabkan kode keluar terakhir dari perintah eksternal disebarluaskan sebagai kode keluar PowerShell. Jika tidak, baris tidak ditambahkan ke akhir skrip Anda. Nilai defaultnya adalah false. |
Jika mengalami masalah dengan Tugas CLI, lihat cara memecahkan masalah Build dan Rilis.
Konten terkait
- Penyebaran Grup Sumber Daya Azure.
- Penyebaran Azure Web App.