Поделиться через


SqlAzureDacpacDeployment@1 — задача развертывания базы данных Azure SQL версии 1

Эта задача предназначена для развертывания базы данных Azure SQL с помощью DACPAC или выполнения скриптов с помощью SQLCMD.

Эта задача предназначена для развертывания базы данных Azure SQL с помощью DACPAC или выполнения скриптов с помощью SQLCMD.

Синтаксис

# 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.
# Azure SQL Database Deployment v1
# Deploy Azure SQL DB 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 DB Details
    ServerName: # string. Required. Azure SQL Server Name. 
    DatabaseName: # string. Required. Database Name. 
    SqlUsername: # string. Required. Server Admin Login. 
    SqlPassword: # string. Required. Password. 
  # Deployment Package
    DeploymentAction: 'Publish' # 'Publish' | 'Extract' | 'Export' | 'Import' | 'Script' | 'DriftReport' | 'DeployReport'. Required. Action. Default: Publish.
    #TaskNameSelector: 'DacpacTask' # 'DacpacTask' | 'SqlTask' | 'InlineSqlTask'. Optional. Use when DeploymentAction = Publish. Type. Default: DacpacTask.
    #DacpacFile: # string. Required when TaskNameSelector = DacpacTask || 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.

Входные данные

azureConnectionType - Тип подключения службы Azure
Входной псевдоним: ConnectedServiceNameSelector. string. Допустимые значения: ConnectedServiceName (классическая модель Azure), ConnectedServiceNameARM (Azure Resource Manager). Значение по умолчанию: ConnectedServiceNameARM.


azureClassicSubscription - Классическая подписка Azure
Входной псевдоним: ConnectedServiceName. string. Требуется при .ConnectedServiceNameSelector = ConnectedServiceName

Указывает целевую классическую подписку Azure для развертывания файлов SQL.


azureSubscription - Подписка Azure
Входной псевдоним: ConnectedServiceNameARM. string. Требуется при .ConnectedServiceNameSelector = ConnectedServiceNameARM

Указывает целевую подписку Azure Resource Manager для развертывания файлов SQL.


AuthenticationType - Тип проверки подлинности
string. Обязательный. Допустимые значения: server (SQL Server проверка подлинности), aadAuthenticationPassword (Active Directory — пароль), aadAuthenticationIntegrated (Active Directory — встроенная), connectionString (строка подключения), servicePrincipal (субъект-служба). Значение по умолчанию: server.

Указывает тип проверки подлинности базы данных. Это может быть SQL Server, Active Directory (встроенная), Active Directory (пароль), строка подключения или проверка подлинности субъекта-службы. Встроенная проверка подлинности означает, что агент обращается к базе данных с помощью текущего контекста учетной записи Active Directory.

Укажите параметр для подключения к базе данных Azure SQL Server. Вы можете указать сведения о базе данных Azure SQL Server, SQL Server строка подключения, проверку подлинности AD (пароль или встроенную) или использовать субъект-службу. Для проверки подлинности SQL Server используйте учетные данные пользователя SQL Server. Для проверки подлинности AD используйте учетные данные пользователя AD, настроенного для SQL Server.


AuthenticationType - Тип проверки подлинности
string. Обязательный. Допустимые значения: server (SQL Server проверка подлинности), aadAuthenticationPassword (Active Directory — пароль), aadAuthenticationIntegrated (Active Directory — встроенная), connectionString (строка подключения). Значение по умолчанию: server.

Указывает тип проверки подлинности базы данных. Это может быть SQL Server, Active Directory (встроенная), Active Directory (пароль), строка подключения или проверка подлинности субъекта-службы. Встроенная проверка подлинности означает, что агент обращается к базе данных с помощью текущего контекста учетной записи Active Directory.

Укажите параметр для подключения к базе данных Azure SQL Server. Вы можете указать сведения о базе данных Azure SQL Server, SQL Server строка подключения, проверку подлинности AD (пароль или встроенную) или использовать субъект-службу. Для проверки подлинности SQL Server используйте учетные данные пользователя SQL Server. Для проверки подлинности AD используйте учетные данные пользователя AD, настроенного для SQL Server.


ServerName - сервер Azure SQL
string. Требуется при .AuthenticationType = server || AuthenticationType = aadAuthenticationPassword || AuthenticationType = aadAuthenticationIntegrated || AuthenticationType = servicePrincipal

Указывает имя сервера Azure SQL, например Fabrikam.database.windows.net,1433 или Fabrikam.database.windows.net.


ServerName - сервер Azure SQL
string. Требуется при .AuthenticationType = server || AuthenticationType = aadAuthenticationPassword || AuthenticationType = aadAuthenticationIntegrated

Указывает имя сервера Azure SQL, например Fabrikam.database.windows.net,1433 или Fabrikam.database.windows.net.


ServerName - Имя сервера Azure SQL
string. Обязательный.

Указывает имя сервера Azure SQL, например Fabrikam.database.windows.net,1433 или Fabrikam.database.windows.net.


DatabaseName - Базы данных
string. Требуется при .AuthenticationType = server || AuthenticationType = aadAuthenticationPassword || AuthenticationType = aadAuthenticationIntegrated || AuthenticationType = servicePrincipal

Указывает имя базы данных Azure SQL, в которой развертываются файлы.


DatabaseName - Базы данных
string. Требуется при .AuthenticationType = server || AuthenticationType = aadAuthenticationPassword || AuthenticationType = aadAuthenticationIntegrated

Указывает имя базы данных Azure SQL, в которой развертываются файлы.


DatabaseName - Имя базы данных
string. Обязательный.

Указывает имя базы данных Azure SQL, в которой развертываются файлы.


SqlUsername - Входа
string. Требуется при .AuthenticationType = server

Указывает имя входа администратора Azure SQL Server.


SqlUsername - Имя входа Администратор сервера
string. Обязательный.

Указывает имя входа администратора сервера Azure SQL или имя пользователя Active Directory.


SqlPassword - Пароль
string. Требуется при .AuthenticationType = server

Указывает пароль администратора сервера Azure SQL. Переменные, определенные в конвейерах сборки или выпуска как $(passwordVariable) принятые. Вы можете пометить тип переменной как secret , чтобы защитить его.


SqlPassword - Пароль
string. Обязательный.

Указывает пароль администратора сервера Azure SQL. Переменные, определенные в конвейерах сборки или выпуска как $(passwordVariable) принятые. Вы можете пометить тип переменной как secret , чтобы защитить его.


aadSqlUsername - Входа
string. Требуется при .AuthenticationType = aadAuthenticationPassword

Указывает имя пользователя Active Directory.


aadSqlPassword - Пароль
string. Требуется при .AuthenticationType = aadAuthenticationPassword

Указывает пароль для пользователя Active Directory. Переменные, определенные в конвейерах сборки или выпуска как $(passwordVariable) принятые. Вы можете пометить тип переменной как secret , чтобы защитить его.


ConnectionString - Строка подключения
string. Требуется при .AuthenticationType = connectionString

Задает строка подключения сервера Azure SQL, например Server=testServer.database.windows.net;Database=testdb;User ID=AccountPlaceholder;Password=$(securePassword);.


deployType - Тип развертывания
Входной псевдоним: TaskNameSelector. string. Обязательный. Допустимые значения: DacpacTask (DACPAC-файл SQL), SqlTask (файл скрипта SQL), InlineSqlTask (встроенный скрипт SQL). Значение по умолчанию: DacpacTask.


DeploymentAction - Действий
string. Требуется при .TaskNameSelector = DacpacTask Допустимые значения: Publish, Extract, Export, Import, DriftReportScript(отчет о смещении), DeployReport (развернуть отчет). Значение по умолчанию: Publish.

Указывает одно из действий SQL из списка. Дополнительные сведения о списке действий SQL.


DeploymentAction - Действий
string. Обязательный. Допустимые значения: Publish, Extract, Export, Import, DriftReportScript(отчет о смещении), DeployReport (развернуть отчет). Значение по умолчанию: Publish.

Указывает одно из действий SQL из списка. Дополнительные сведения о списке действий SQL.


DacpacFile - DACPAC-файл
string. Требуется при .DeploymentAction = Publish || DeploymentAction = Script || DeploymentAction = DeployReport

Указывает расположение DACPAC-файла в агенте автоматизации или по UNC-пути, доступного агенту автоматизации, например \\BudgetIT\Web\Deploy\FabrikamDB.dacpac. Также можно использовать предопределенные системные переменные, такие как $(agent.releaseDirectory).


DacpacFile - DACPAC-файл
string. Требуется при .TaskNameSelector = DacpacTask || DeploymentAction = Script || DeploymentAction = DeployReport

Указывает расположение DACPAC-файла в агенте автоматизации или по UNC-пути, доступного агенту автоматизации, например \\BudgetIT\Web\Deploy\FabrikamDB.dacpac. Также можно использовать предопределенные системные переменные, такие как $(agent.releaseDirectory).


BacpacFile - BACPAC-файл
string. Требуется при .DeploymentAction = Import

Указывает расположение BACPAC-файла в агенте автоматизации или по UNC-пути, доступного агенту автоматизации, например \\BudgetIT\Web\Deploy\FabrikamDB.bacpac. Также можно использовать предопределенные системные переменные, такие как $(agent.releaseDirectory).


SqlFile - Скрипт SQL
string. Требуется при .TaskNameSelector = SqlTask

Указывает расположение файла скрипта SQL в агенте автоматизации или по UNC-пути, доступного агенту автоматизации, например \\BudgetIT\Web\Deploy\FabrikamDB.sql. Также можно использовать предопределенные системные переменные, такие как $(agent.releaseDirectory).


SqlInline - Встроенный скрипт SQL
string. Требуется при .TaskNameSelector = InlineSqlTask

Указывает скрипт SQL для выполнения в ранее выбранной базе данных.


PublishProfile - Профиль публикации
string. Необязательный элемент. Используйте при TaskNameSelector = DacpacTask || DeploymentAction = Script || DeploymentAction = DeployReport.

Обеспечивает детальный контроль над созданием или обновлением базы данных Azure SQL.
Указывает путь к XML-файлу профиля публикации на компьютере агента автоматизации или в общей папке UNC. Если профиль публикации содержит секреты, например учетные данные, отправьте его в библиотеку защищенных файлов , где он безопасно хранится с шифрованием. Затем используйте задачу Скачать безопасный файл в начале конвейера, чтобы скачать его на компьютер агента при запуске конвейера. Удалите его после завершения конвейера. Также можно использовать предопределенные системные переменные, такие как $(agent.buildDirectory) или $(agent.releaseDirectory).


AdditionalArguments - Дополнительные аргументы SqlPackage.exe
string. Необязательный элемент. Используйте при TaskNameSelector = DacpacTask || DeploymentAction = Extract || DeploymentAction = Export || DeploymentAction = Import || DeploymentAction = Script || DeploymentAction = DeployReport || DeploymentAction = DriftReport.

Указывает дополнительные SqlPackage.exe аргументы, которые будут применяться при развертывании базы данных Azure SQL, если выбран параметр DACPAC, например /p:IgnoreAnsiNulls=True /p:IgnoreComments=True. Эти аргументы переопределяют параметры в XML-файле профиля публикации (если они указаны).


SqlAdditionalArguments - Дополнительные аргументы Invoke-Sqlcmd
string. Необязательный элемент. Используйте при TaskNameSelector = SqlTask.

Указывает дополнительные аргументы Invoke-Sqlcmd, применяемые при выполнении заданного SQL-запроса в базе данных Azure SQL, например -ConnectionTimeout 100 -OutputSqlErrors.


InlineAdditionalArguments - Дополнительные аргументы Invoke-Sqlcmd
string. Необязательный элемент. Используйте при TaskNameSelector = InlineSqlTask.

Указывает дополнительные аргументы Invoke-Sqlcmd, которые применяются при выполнении заданного SQL-запроса к базе данных Azure SQL, например -ConnectionTimeout 100 -OutputSqlErrors.


IpDetectionMethod - Указание правил брандмауэра с помощью
string. Обязательный. Допустимые значения: AutoDetect, IPAddressRange. Значение по умолчанию: AutoDetect.

Для выполнения задачи IP-адрес агента автоматизации необходимо добавить в список Разрешенные IP-адреса в брандмауэре Azure SQL Server. Выберите автоматическое обнаружение, чтобы автоматически добавить исключение брандмауэра для диапазона возможных IP-адресов агента автоматизации, или укажите диапазон явным образом.


StartIpAddress - Начальный IP-адрес
string. Требуется при .IpDetectionMethod = IPAddressRange

Указывает начальный IP-адрес пула компьютеров агента автоматизации, например 196.21.30.50.


EndIpAddress - Конечный IP-адрес
string. Требуется при .IpDetectionMethod = IPAddressRange

Указывает конечный IP-адрес пула компьютеров агента автоматизации, например 196.21.30.65.


DeleteFirewallRule - Удаление правила после завершения задачи
boolean. Значение по умолчанию: true.

Если этот параметр выбран, после завершения задачи указанные здесь IP-адреса удаляются из списка Разрешенные IP-адреса в брандмауэре сервера Azure SQL.


TaskNameSelector - Тип
string. Необязательный элемент. Используйте при DeploymentAction = Publish. Допустимые значения: DacpacTask (DACPAC-файл SQL), SqlTask (файл скрипта SQL), InlineSqlTask (встроенный скрипт SQL). Значение по умолчанию: DacpacTask.


Параметры управления задачами

Помимо входных данных, все задачи имеют параметры управления. Дополнительные сведения см. в разделе Параметры управления и общие свойства задачи.

Выходные переменные

Эта задача определяет следующие выходные переменные, которые можно использовать в последующих шагах, заданиях и этапах.

SqlDeploymentOutputFile
Созданный выходной путь к файлу, если действие пакета развертывания равно Extract, Export, Script, DriftReportили DeployReport.

Комментарии

Используйте эту задачу для развертывания базы данных Azure SQL с помощью DACPAC или запуска скриптов с помощью SQLCMD.

Важно!

Эта задача поддерживается только в среде Windows. Если вы пытаетесь использовать встроенную проверку подлинности Azure Active Directory (Azure AD), необходимо создать частный агент. Встроенная проверка подлинности Azure AD не поддерживается для размещенных агентов.

Требования

Требование Описание
Типы конвейеров YAML, классическая сборка, классический выпуск
Выполняется в Агент
Требования Локальные агенты должны иметь возможности , соответствующие следующим требованиям для выполнения заданий, использующих эту задачу: sqlpackage
Capabilities Эта задача не удовлетворяет требованиям для последующих задач в задании.
Ограничения команд Любой
Устанавливаемые переменные Любой
Версия агента 1.103.0 или более поздней версии
Категория задач Развертывание