Bagikan melalui


SqlAzureDacpacDeployment@1 - Tugas penyebaran Azure SQL Database v1

Gunakan tugas ini untuk menyebarkan Azure SQL Database menggunakan DACPAC, atau jalankan skrip menggunakan SQLCMD.

Sintaksis

# Azure SQL Database deployment v1
# Deploy an Azure SQL Database using DACPAC or run scripts using SQLCMD.
- task: SqlAzureDacpacDeployment@1
  inputs:
    #azureConnectionType: 'ConnectedServiceNameARM' # 'ConnectedServiceName' | 'ConnectedServiceNameARM'. Alias: ConnectedServiceNameSelector. Azure Service Connection Type. Default: ConnectedServiceNameARM.
    #azureClassicSubscription: # string. Alias: ConnectedServiceName. Required when ConnectedServiceNameSelector = ConnectedServiceName. Azure Classic Subscription. 
    azureSubscription: # string. Alias: ConnectedServiceNameARM. Required when ConnectedServiceNameSelector = ConnectedServiceNameARM. Azure Subscription. 
  # SQL Database
    AuthenticationType: 'server' # 'server' | 'aadAuthenticationPassword' | 'aadAuthenticationIntegrated' | 'connectionString' | 'servicePrincipal'. Required. Authentication Type. Default: server.
    #ServerName: # string. Required when AuthenticationType = server || AuthenticationType = aadAuthenticationPassword || AuthenticationType = aadAuthenticationIntegrated || AuthenticationType = servicePrincipal. Azure SQL Server. 
    #DatabaseName: # string. Required when AuthenticationType = server || AuthenticationType = aadAuthenticationPassword || AuthenticationType = aadAuthenticationIntegrated || AuthenticationType = servicePrincipal. Database. 
    SqlUsername: # string. Required when AuthenticationType = server. Login. 
    SqlPassword: # string. Required when AuthenticationType = server. Password. 
    #aadSqlUsername: # string. Required when AuthenticationType = aadAuthenticationPassword. Login. 
    #aadSqlPassword: # string. Required when AuthenticationType = aadAuthenticationPassword. Password. 
    #ConnectionString: # string. Required when AuthenticationType = connectionString. Connection String. 
  # Deployment Package
    deployType: 'DacpacTask' # 'DacpacTask' | 'SqlTask' | 'InlineSqlTask'. Alias: TaskNameSelector. Required. Deploy type. Default: DacpacTask.
    DeploymentAction: 'Publish' # 'Publish' | 'Extract' | 'Export' | 'Import' | 'Script' | 'DriftReport' | 'DeployReport'. Required when TaskNameSelector = DacpacTask. Action. Default: Publish.
    #DacpacFile: # string. Required when DeploymentAction = Publish || DeploymentAction = Script || DeploymentAction = DeployReport. DACPAC File. 
    #BacpacFile: # string. Required when DeploymentAction = Import. BACPAC File. 
    #SqlFile: # string. Required when TaskNameSelector = SqlTask. SQL Script. 
    #SqlInline: # string. Required when TaskNameSelector = InlineSqlTask. Inline SQL Script. 
    #PublishProfile: # string. Optional. Use when TaskNameSelector = DacpacTask || DeploymentAction = Script || DeploymentAction = DeployReport. Publish Profile. 
    #AdditionalArguments: # string. Optional. Use when TaskNameSelector = DacpacTask || DeploymentAction = Extract || DeploymentAction = Export || DeploymentAction = Import || DeploymentAction = Script || DeploymentAction = DeployReport || DeploymentAction = DriftReport. Additional SqlPackage.exe Arguments. 
    #SqlAdditionalArguments: # string. Optional. Use when TaskNameSelector = SqlTask. Additional Invoke-Sqlcmd Arguments. 
    #InlineAdditionalArguments: # string. Optional. Use when TaskNameSelector = InlineSqlTask. Additional Invoke-Sqlcmd Arguments. 
  # Firewall
    IpDetectionMethod: 'AutoDetect' # 'AutoDetect' | 'IPAddressRange'. Required. Specify Firewall Rules Using. Default: AutoDetect.
    #StartIpAddress: # string. Required when IpDetectionMethod = IPAddressRange. Start IP Address. 
    #EndIpAddress: # string. Required when IpDetectionMethod = IPAddressRange. End IP Address. 
    #DeleteFirewallRule: true # boolean. Delete Rule After Task Ends. Default: true.
# Azure SQL Database deployment v1
# Deploy an Azure SQL Database using DACPAC or run scripts using SQLCMD.
- task: SqlAzureDacpacDeployment@1
  inputs:
    #azureConnectionType: 'ConnectedServiceNameARM' # 'ConnectedServiceName' | 'ConnectedServiceNameARM'. Alias: ConnectedServiceNameSelector. Azure Service Connection Type. Default: ConnectedServiceNameARM.
    #azureClassicSubscription: # string. Alias: ConnectedServiceName. Required when ConnectedServiceNameSelector = ConnectedServiceName. Azure Classic Subscription. 
    azureSubscription: # string. Alias: ConnectedServiceNameARM. Required when ConnectedServiceNameSelector = ConnectedServiceNameARM. Azure Subscription. 
  # SQL Database
    AuthenticationType: 'server' # 'server' | 'aadAuthenticationPassword' | 'aadAuthenticationIntegrated' | 'connectionString'. Required. Authentication Type. Default: server.
    #ServerName: # string. Required when AuthenticationType = server || AuthenticationType = aadAuthenticationPassword || AuthenticationType = aadAuthenticationIntegrated. Azure SQL Server. 
    #DatabaseName: # string. Required when AuthenticationType = server || AuthenticationType = aadAuthenticationPassword || AuthenticationType = aadAuthenticationIntegrated. Database. 
    SqlUsername: # string. Required when AuthenticationType = server. Login. 
    SqlPassword: # string. Required when AuthenticationType = server. Password. 
    #aadSqlUsername: # string. Required when AuthenticationType = aadAuthenticationPassword. Login. 
    #aadSqlPassword: # string. Required when AuthenticationType = aadAuthenticationPassword. Password. 
    #ConnectionString: # string. Required when AuthenticationType = connectionString. Connection String. 
  # Deployment Package
    deployType: 'DacpacTask' # 'DacpacTask' | 'SqlTask' | 'InlineSqlTask'. Alias: TaskNameSelector. Required. Deploy type. Default: DacpacTask.
    DeploymentAction: 'Publish' # 'Publish' | 'Extract' | 'Export' | 'Import' | 'Script' | 'DriftReport' | 'DeployReport'. Required when TaskNameSelector = DacpacTask. Action. Default: Publish.
    #DacpacFile: # string. Required when DeploymentAction = Publish || DeploymentAction = Script || DeploymentAction = DeployReport. DACPAC File. 
    #BacpacFile: # string. Required when DeploymentAction = Import. BACPAC File. 
    #SqlFile: # string. Required when TaskNameSelector = SqlTask. SQL Script. 
    #SqlInline: # string. Required when TaskNameSelector = InlineSqlTask. Inline SQL Script. 
    #PublishProfile: # string. Optional. Use when TaskNameSelector = DacpacTask || DeploymentAction = Script || DeploymentAction = DeployReport. Publish Profile. 
    #AdditionalArguments: # string. Optional. Use when TaskNameSelector = DacpacTask || DeploymentAction = Extract || DeploymentAction = Export || DeploymentAction = Import || DeploymentAction = Script || DeploymentAction = DeployReport || DeploymentAction = DriftReport. Additional SqlPackage.exe Arguments. 
    #SqlAdditionalArguments: # string. Optional. Use when TaskNameSelector = SqlTask. Additional Invoke-Sqlcmd Arguments. 
    #InlineAdditionalArguments: # string. Optional. Use when TaskNameSelector = InlineSqlTask. Additional Invoke-Sqlcmd Arguments. 
  # Firewall
    IpDetectionMethod: 'AutoDetect' # 'AutoDetect' | 'IPAddressRange'. Required. Specify Firewall Rules Using. Default: AutoDetect.
    #StartIpAddress: # string. Required when IpDetectionMethod = IPAddressRange. Start IP Address. 
    #EndIpAddress: # string. Required when IpDetectionMethod = IPAddressRange. End IP Address. 
    #DeleteFirewallRule: true # boolean. Delete Rule After Task Ends. Default: true.

Masukan

Jenis Koneksi Layanan Azure azureConnectionType -
Alias input: ConnectedServiceNameSelector. string. Nilai yang diizinkan: ConnectedServiceName (Azure Classic), ConnectedServiceNameARM (Azure Resource Manager). Nilai default: ConnectedServiceNameARM.


azureClassicSubscription - Langganan Azure Classic
Alias input: ConnectedServiceName. string. Diperlukan saat ConnectedServiceNameSelector = ConnectedServiceName.

Menentukan langganan klasik Azure target untuk menyebarkan file SQL.


Langganan Azure azureSubscription -
Alias input: ConnectedServiceNameARM. string. Diperlukan saat ConnectedServiceNameSelector = ConnectedServiceNameARM.

Menentukan langganan Azure Resource Manager target untuk menyebarkan file SQL.


AuthenticationType - Jenis Autentikasi
string. Dibutuhkan. Nilai yang diizinkan: server (Autentikasi SQL Server), aadAuthenticationPassword (Direktori Aktif - Kata Sandi), aadAuthenticationIntegrated (Direktori Aktif - Terintegrasi), connectionString (String Koneksi), servicePrincipal (Perwakilan Layanan). Nilai default: server.

Menentukan jenis autentikasi database. Ini bisa menjadi SQL Server, Direktori Aktif (terintegrasi), Direktori Aktif (kata sandi), string koneksi, atau autentikasi perwakilan layanan. Autentikasi terintegrasi berarti bahwa agen mengakses database menggunakan konteks akun Direktori Aktif saat ini.

Tentukan opsi untuk menyambungkan ke database Azure SQL Server. Anda dapat memberikan detail database Azure SQL Server, string koneksi SQL Server, Autentikasi AD (kata sandi atau terintegrasi), atau menggunakan perwakilan layanan. Untuk autentikasi SQL Server, gunakan kredensial pengguna SQL Server. Untuk autentikasi AD, gunakan kredensial untuk pengguna AD yang dikonfigurasi ke SQL Server.


AuthenticationType - Jenis Autentikasi
string. Dibutuhkan. Nilai yang diizinkan: server (Autentikasi SQL Server), aadAuthenticationPassword (Direktori Aktif - Kata Sandi), aadAuthenticationIntegrated (Direktori Aktif - Terintegrasi), connectionString (String Koneksi). Nilai default: server.

Menentukan jenis autentikasi database. Ini bisa menjadi SQL Server, Direktori Aktif (terintegrasi), Direktori Aktif (kata sandi), string koneksi, atau autentikasi perwakilan layanan. Autentikasi terintegrasi berarti bahwa agen mengakses database menggunakan konteks akun Direktori Aktif saat ini.

Tentukan opsi untuk menyambungkan ke database Azure SQL Server. Anda dapat memberikan detail database Azure SQL Server, string koneksi SQL Server, Autentikasi AD (kata sandi atau terintegrasi), atau menggunakan perwakilan layanan. Untuk autentikasi SQL Server, gunakan kredensial pengguna SQL Server. Untuk autentikasi AD, gunakan kredensial untuk pengguna AD yang dikonfigurasi ke SQL Server.


ServerName - Azure SQL Server
string. Diperlukan saat AuthenticationType = server || AuthenticationType = aadAuthenticationPassword || AuthenticationType = aadAuthenticationIntegrated || AuthenticationType = servicePrincipal.

Menentukan nama Azure SQL Server, seperti Fabrikam.database.windows.net.placeholder,1433 atau Fabrikam.database.windows.net.placeholder.


ServerName - Azure SQL Server
string. Diperlukan saat AuthenticationType = server || AuthenticationType = aadAuthenticationPassword || AuthenticationType = aadAuthenticationIntegrated.

Menentukan nama Azure SQL Server, seperti Fabrikam.database.windows.net.placeholder,1433 atau Fabrikam.database.windows.net.placeholder.


Database DatabaseName -
string. Diperlukan saat AuthenticationType = server || AuthenticationType = aadAuthenticationPassword || AuthenticationType = aadAuthenticationIntegrated || AuthenticationType = servicePrincipal.

Menentukan nama database Azure SQL tempat file disebarkan.


Database DatabaseName -
string. Diperlukan saat AuthenticationType = server || AuthenticationType = aadAuthenticationPassword || AuthenticationType = aadAuthenticationIntegrated.

Menentukan nama database Azure SQL tempat file disebarkan.


Login SqlUsername -
string. Diperlukan saat AuthenticationType = server.

Menentukan login administrator Azure SQL Server.


Kata Sandi SqlPassword -
string. Diperlukan saat AuthenticationType = server.

Menentukan kata sandi untuk administrator Azure SQL Server. Variabel yang ditentukan dalam alur build atau rilis karena $(passwordVariable) diterima. Anda dapat menandai jenis variabel sebagai secret untuk mengamankannya.


Login aadSqlUsername -
string. Diperlukan saat AuthenticationType = aadAuthenticationPassword.

Menentukan nama pengguna Direktori Aktif.


Kata Sandi aadSqlPassword -
string. Diperlukan saat AuthenticationType = aadAuthenticationPassword.

Menentukan kata sandi untuk pengguna Direktori Aktif. Variabel yang ditentukan dalam alur build atau rilis karena $(passwordVariable) diterima. Anda dapat menandai jenis variabel sebagai secret untuk mengamankannya.


String Koneksi ConnectionString -
string. Diperlukan saat AuthenticationType = connectionString.

Menentukan string koneksi Azure SQL Server, seperti Server=testServer.database.windows.net.placeholder;Database=testdb;User ID=AccountPlaceholder;Password=$(securePassword);.


Jenis penyebaran deployType -
Alias input: TaskNameSelector. string. Dibutuhkan. Nilai yang diizinkan: DacpacTask (File SQL DACPAC), SqlTask (File Skrip SQL), InlineSqlTask (Skrip SQL Sebaris). Nilai default: DacpacTask.


Tindakan DeploymentAction -
string. Diperlukan saat TaskNameSelector = DacpacTask. Nilai yang diizinkan: Publish, Extract, Export, Import, Script, DriftReport (Laporan Penyimpangan), DeployReport (Sebarkan Laporan). Nilai default: Publish.

Menentukan salah satu tindakan SQL dari daftar. Pelajari selengkapnya tentang daftar tindakan SQL .


DacpacFile - File DACPAC
string. Diperlukan saat DeploymentAction = Publish || DeploymentAction = Script || DeploymentAction = DeployReport.

Menentukan lokasi file DACPAC pada agen otomatisasi atau pada jalur UNC yang dapat diakses oleh agen otomatisasi, seperti \\BudgetIT\Web\Deploy\FabrikamDB.dacpac. Variabel sistem yang telah ditentukan sebelumnya, seperti $(agent.releaseDirectory), juga dapat digunakan.


File BACPAC BacpacFile -
string. Diperlukan saat DeploymentAction = Import.

Menentukan lokasi file BACPAC pada agen otomatisasi atau pada jalur UNC yang dapat diakses oleh agen otomatisasi, seperti \\BudgetIT\Web\Deploy\FabrikamDB.bacpac. Variabel sistem yang telah ditentukan sebelumnya, seperti $(agent.releaseDirectory), juga dapat digunakan.


Skrip SQL SqlFile -
string. Diperlukan saat TaskNameSelector = SqlTask.

Menentukan lokasi file skrip SQL pada agen otomatisasi atau pada jalur UNC yang dapat diakses oleh agen otomatisasi, seperti \\BudgetIT\Web\Deploy\FabrikamDB.sql. Variabel sistem yang telah ditentukan sebelumnya, seperti $(agent.releaseDirectory), juga dapat digunakan.


Skrip SQL Sebaris SqlInline -
string. Diperlukan saat TaskNameSelector = InlineSqlTask.

Menentukan skrip SQL untuk dijalankan pada database yang dipilih sebelumnya.


PublishProfile - Profil Penerbitan
string. Fakultatif. Gunakan saat TaskNameSelector = DacpacTask || DeploymentAction = Script || DeploymentAction = DeployReport.

Memberikan kontrol terperinci atas pembuatan atau peningkatan database Azure SQL.
Menentukan jalur ke file XML profil publikasi pada mesin agen otomatisasi atau pada berbagi UNC. Jika profil publikasi berisi rahasia, seperti kredensial, unggah ke file aman pustaka tempat penyimpanannya dengan aman dengan enkripsi. Selanjutnya, gunakan Unduh file aman tugas di awal alur Anda untuk mengunduhnya ke mesin agen saat alur berjalan. Hapus saat alur selesai. Variabel sistem yang telah ditentukan sebelumnya, seperti $(agent.buildDirectory) atau $(agent.releaseDirectory), juga dapat digunakan.


AdditionalArguments - Argumen SqlPackage.exe Tambahan
string. Fakultatif. Gunakan saat TaskNameSelector = DacpacTask || DeploymentAction = Extract || DeploymentAction = Export || DeploymentAction = Import || DeploymentAction = Script || DeploymentAction = DeployReport || DeploymentAction = DriftReport.

Menentukan argumen SqlPackage.exe tambahan yang akan diterapkan saat menyebarkan database Azure SQL jika opsi DACPAC dipilih, seperti /p:IgnoreAnsiNulls=True /p:IgnoreComments=True. Argumen ini akan mengambil alih pengaturan dalam file XML profil publikasi (jika disediakan).


SqlAdditionalArguments - Argumen Invoke-Sqlcmd Tambahan
string. Fakultatif. Gunakan saat TaskNameSelector = SqlTask.

Menentukan argumen Invoke-Sqlcmd tambahan yang diterapkan saat menjalankan kueri SQL yang diberikan pada database Azure SQL, seperti -ConnectionTimeout 100 -OutputSqlErrors.


InlineAdditionalArguments - Argumen Invoke-Sqlcmd Tambahan
string. Fakultatif. Gunakan saat TaskNameSelector = InlineSqlTask.

Menentukan argumen Invoke-Sqlcmd tambahan yang diterapkan saat menjalankan kueri SQL yang diberikan pada Azure SQL Database, seperti -ConnectionTimeout 100 -OutputSqlErrors.


IpDetectionMethod - Tentukan Aturan Firewall Menggunakan
string. Dibutuhkan. Nilai yang diizinkan: AutoDetect, IPAddressRange. Nilai default: AutoDetect.

Agar tugas berjalan, alamat IP agen otomatisasi harus ditambahkan ke Alamat IP yang Diizinkan di firewall Azure SQL Server. Pilih deteksi otomatis untuk menambahkan pengecualian firewall secara otomatis untuk rentang kemungkinan alamat IP agen otomatisasi, atau tentukan rentang secara eksplisit.


Alamat IP Mulai StartIpAddress -
string. Diperlukan saat IpDetectionMethod = IPAddressRange.

Menentukan alamat IP awal kumpulan mesin agen otomatisasi, seperti 196.21.30.50.


Alamat IP Akhir EndIpAddress -
string. Diperlukan saat IpDetectionMethod = IPAddressRange.

Menentukan alamat IP akhir dari kumpulan mesin agen otomatisasi, seperti 196.21.30.65.


DeleteFirewallRule - Hapus Aturan Setelah Tugas Berakhir
boolean. Nilai default: true.

Jika dipilih, setelah tugas berakhir, alamat IP yang ditentukan di sini dihapus dari daftar Alamat IP yang diizinkan di firewall Azure SQL Server.


Opsi kontrol tugas

Semua tugas memiliki opsi kontrol selain input tugasnya. Untuk informasi selengkapnya, lihat opsi Kontrol dan properti tugas umum.

Variabel output

Tugas ini mendefinisikan variabel output berikut, yang dapat Anda konsumsi dalam langkah-langkah hilir, pekerjaan, dan tahapan.

SqlDeploymentOutputFile
Jalur file output yang dihasilkan saat tindakan paket penyebaran Extract, Export, Script, DriftReport, atau DeployReport.

Komentar

Gunakan tugas ini untuk menyebarkan database Azure SQL menggunakan DACPAC, atau jalankan skrip menggunakan SQLCMD.

Penting

Tugas ini hanya didukung di lingkungan Windows. Jika Anda mencoba menggunakan autentikasi terintegrasi Azure Active Directory (Azure AD), Anda harus membuat agen privat. Autentikasi terintegrasi Azure AD tidak didukung untuk agen yang dihosting.

Persyaratan

Persyaratan Deskripsi
Jenis alur YAML, Build klasik, Rilis klasik
Berjalan pada Agen
Permintaan Agen yang dihost sendiri harus memiliki kemampuan yang cocok dengan berikut menuntut untuk menjalankan pekerjaan yang menggunakan tugas ini: sqlpackage
Kemampuan Tugas ini tidak memenuhi tuntutan apa pun untuk tugas berikutnya dalam pekerjaan.
pembatasan Perintah Apapun
variabel yang Dapat Diatur Apapun
Versi agen 1.103.0 atau lebih tinggi
Kategori tugas Terapkan