このタスクを使用して、Service Fabric アプリケーションをクラスターにデプロイします。 このタスクは、発行プロファイルで定義されている設定に従って、Azure Service Fabric アプリケーションをクラスターにデプロイします。
注
このタスクでは、ワークフロー ID フェデレーション を使用した Azure Resource Manager 認証はサポートされていません。
構文
# Service Fabric application deployment v1
# Deploy an Azure Service Fabric application to a cluster.
- task: ServiceFabricDeploy@1
inputs:
applicationPackagePath: # string. Required. Application Package.
serviceConnectionName: # string. Required. Cluster Service Connection.
#publishProfilePath: # string. Publish Profile.
#applicationParameterPath: # string. Application Parameters.
#overrideApplicationParameter: false # boolean. Override Application Parameters. Default: false.
# Advanced Settings
#compressPackage: false # boolean. Compress Package. Default: false.
#copyPackageTimeoutSec: # string. CopyPackageTimeoutSec.
#registerPackageTimeoutSec: # string. RegisterPackageTimeoutSec.
overwriteBehavior: 'SameAppTypeAndVersion' # 'Always' | 'Never' | 'SameAppTypeAndVersion'. Required. Overwrite Behavior. Default: SameAppTypeAndVersion.
#skipUpgradeSameTypeAndVersion: false # boolean. Skip upgrade for same Type and Version. Default: false.
#skipPackageValidation: false # boolean. Skip package validation. Default: false.
# Upgrade Settings
#useDiffPackage: false # boolean. Use Diff Package. Default: false.
#overridePublishProfileSettings: false # boolean. Override All Publish Profile Upgrade Settings. Default: false.
#isUpgrade: true # boolean. Optional. Use when overridePublishProfileSettings = true. Upgrade the Application. Default: true.
#unregisterUnusedVersions: true # boolean. Unregister Unused Versions. Default: true.
#upgradeMode: 'Monitored' # 'Monitored' | 'UnmonitoredAuto' | 'UnmonitoredManual'. Required when overridePublishProfileSettings = true && isUpgrade = true. Upgrade Mode. Default: Monitored.
#FailureAction: 'Rollback' # 'Rollback' | 'Manual'. Required when overridePublishProfileSettings = true && isUpgrade = true && upgradeMode = Monitored. FailureAction. Default: Rollback.
#UpgradeReplicaSetCheckTimeoutSec: # string. Optional. Use when overridePublishProfileSettings = true && isUpgrade = true. UpgradeReplicaSetCheckTimeoutSec.
#TimeoutSec: # string. Optional. Use when overridePublishProfileSettings = true && isUpgrade = true. TimeoutSec.
#ForceRestart: false # boolean. Optional. Use when overridePublishProfileSettings = true && isUpgrade = true. ForceRestart. Default: false.
#HealthCheckRetryTimeoutSec: # string. Optional. Use when overridePublishProfileSettings = true && isUpgrade = true && upgradeMode = Monitored. HealthCheckRetryTimeoutSec.
#HealthCheckWaitDurationSec: # string. Optional. Use when overridePublishProfileSettings = true && isUpgrade = true && upgradeMode = Monitored. HealthCheckWaitDurationSec.
#HealthCheckStableDurationSec: # string. Optional. Use when overridePublishProfileSettings = true && isUpgrade = true && upgradeMode = Monitored. HealthCheckStableDurationSec.
#UpgradeDomainTimeoutSec: # string. Optional. Use when overridePublishProfileSettings = true && isUpgrade = true && upgradeMode = Monitored. UpgradeDomainTimeoutSec.
#ConsiderWarningAsError: false # boolean. Optional. Use when overridePublishProfileSettings = true && isUpgrade = true && upgradeMode = Monitored. ConsiderWarningAsError. Default: false.
#DefaultServiceTypeHealthPolicy: # string. Optional. Use when overridePublishProfileSettings = true && isUpgrade = true && upgradeMode = Monitored. DefaultServiceTypeHealthPolicy.
#MaxPercentUnhealthyDeployedApplications: # string. Optional. Use when overridePublishProfileSettings = true && isUpgrade = true && upgradeMode = Monitored. MaxPercentUnhealthyDeployedApplications.
#UpgradeTimeoutSec: # string. Optional. Use when overridePublishProfileSettings = true && isUpgrade = true && upgradeMode = Monitored. UpgradeTimeoutSec.
#ServiceTypeHealthPolicyMap: # string. Optional. Use when overridePublishProfileSettings = true && isUpgrade = true && upgradeMode = Monitored. ServiceTypeHealthPolicyMap.
# Docker Settings
#configureDockerSettings: false # boolean. Configure Docker settings. Default: false.
#registryCredentials: 'AzureResourceManagerEndpoint' # 'AzureResourceManagerEndpoint' | 'ContainerRegistryEndpoint' | 'UsernamePassword'. Required when configureDockerSettings = true. Registry Credentials Source. Default: AzureResourceManagerEndpoint.
#dockerRegistryConnection: # string. Alias: dockerRegistryEndpoint. Required when configureDockerSettings = true && registryCredentials = ContainerRegistryEndpoint. Docker Registry Service Connection.
#azureSubscription: # string. Alias: azureSubscriptionEndpoint. Required when configureDockerSettings = true && registryCredentials = AzureResourceManagerEndpoint. Azure subscription.
#registryUserName: # string. Optional. Use when configureDockerSettings = true && registryCredentials = UsernamePassword. Registry User Name.
#registryPassword: # string. Optional. Use when configureDockerSettings = true && registryCredentials = UsernamePassword. Registry Password.
#passwordEncrypted: true # boolean. Optional. Use when configureDockerSettings = true && registryCredentials = UsernamePassword. Password Encrypted. Default: true.
入力
applicationPackagePath
-
アプリケーション パッケージの
string
。 必須。
展開するアプリケーション パッケージへのパスを指定します。 変数 とワイルドカードをパスで使用できます。
クラスター サービス接続の serviceConnectionName
-
string
。 必須。
クラスターへの接続に使用する Azure Service Fabric サービス接続を指定します。 この参照されるサービス接続で定義されている設定は、発行プロファイルで定義されている設定よりも優先されます。
Manage
選択して新しいサービス接続を登録します。
クラスターに接続するために、Service Fabric タスクはマシン証明書ストアを使用して証明書に関する情報を格納します。 同じ証明書を使用して 1 台のコンピューターで 2 つのリリースを同時に実行すると、適切に起動します。 ただし、いずれかのタスクが完了すると、マシン証明書ストアの証明書がクリーンアップされ、2 番目のリリースに影響します。
プロファイルの発行の publishProfilePath
-
string
。
任意 使用する設定を定義する発行プロファイル ファイルへのパスを指定します。 変数 とワイルドカードをパスで使用できます。 Visual Studio で発行プロファイルを作成する方法詳細を確認します。
applicationParameterPath
-
アプリケーション パラメーターの
string
。
任意 アプリケーション パラメーター ファイルへのパスを指定します。 変数 とワイルドカードをパスで使用できます。 指定すると、発行プロファイルの値がオーバーライドされます。 Visual Studio でアプリケーション パラメーター ファイルを作成する方法詳細を確認します。
アプリケーション パラメーターをオーバーライドする overrideApplicationParameter
-
boolean
。 既定値: false
.
任意 ビルドまたはリリース パイプラインで定義されている変数を、アプリケーション マニフェスト ファイル内の Parameter Name
エントリと照合するように指定します。 Visual Studio でアプリケーション パラメーター ファイルを作成する方法詳細を確認します。
例:
<Parameters>
<Parameter Name="SampleApp_PartitionCount" Value="1" />
<Parameter Name="SampleApp_InstanceCount" DefaultValue="-1" />
</Parameters>
アプリケーションに上記の例のように定義されているパラメーターがあり、パーティション数を 2
に変更する場合は、リリース パイプラインまたは環境変数 SampleApp_PartitionCount
とその値を 2
として定義できます。
注
リリース パイプラインと環境で同じ変数が定義されている場合、環境変数はリリース パイプライン変数よりも優先されます。
パッケージの圧縮の compressPackage
-
boolean
。 既定値: false
.
任意 イメージ ストアにコピーする前に、アプリケーション パッケージを圧縮するかどうかを指定します。 有効にすると、発行プロファイルの値がオーバーライドされます。 パッケージ 圧縮の詳細について説明します。
copyPackageTimeoutSec
-
CopyPackageTimeoutSec (英語)
string
。
任意 アプリケーション パッケージをイメージ ストアにコピーするためのタイムアウトを秒単位で指定します。 指定すると、発行プロファイルの値がオーバーライドされます。
RegisterPackageTimeoutSecの registerPackageTimeoutSec
-
string
。
任意 アプリケーション パッケージの登録または登録解除のタイムアウトを秒単位で指定します。
overwriteBehavior
-
上書き動作
string
。 必須。 使用できる値: Always
、Never
、SameAppTypeAndVersion
。 既定値: SameAppTypeAndVersion
.
同じ名前のアプリケーションがクラスターに存在し、アップグレードが構成されていない場合の動作を上書きします。
Never
は、既存のアプリケーションを削除しません。 これが既定の動作です。
Always
は、アプリケーションの種類とバージョンが作成されるアプリケーションと異なる場合でも、既存のアプリケーションを削除します。
SameAppTypeAndVersion
は、そのアプリケーションの種類とバージョンが作成されるアプリケーションと同じ場合にのみ、既存のアプリケーションを削除します。
skipUpgradeSameTypeAndVersion
-
同じ種類とバージョンのアップグレードをスキップ
boolean
。 既定値: false
.
任意 同じアプリケーションの種類とバージョンが既にクラスターに存在する場合にアップグレードをスキップするかどうかを指定します。それ以外の場合、検証中にアップグレードが失敗します。 有効な場合、再デプロイはべき等です。
skipPackageValidation
-
パッケージ検証 をスキップする
boolean
。 既定値: false
.
任意 パッケージを展開前に検証するかどうかを指定します。 パッケージ検証 詳細を確認します。
差分パッケージを使用する useDiffPackage
-
boolean
。 既定値: false
.
任意 更新されたアプリケーション ファイル、更新されたアプリケーション マニフェスト、およびサービス マニフェスト ファイルのみを含む差分パッケージを使用してアップグレードします。
差分パッケージは、アプリケーション パッケージ入力で指定されたパッケージと、ターゲット クラスターに現在登録されているパッケージを比較することによって作成されます。 クラスターの現在のパッケージ内のサービス バージョンが新しいパッケージと同じ場合、このサービス パッケージは新しいアプリケーション パッケージから削除されます。 差分パッケージ 詳細を確認します。
overridePublishProfileSettings
-
発行プロファイルのアップグレード設定をすべてオーバーライド
boolean
。 既定値: false
.
任意 指定した値または既定値 (指定されていない場合) を使用して、すべてのアップグレード設定をオーバーライドします。 アップグレード設定 の詳細を確認してください。
isUpgrade
-
アプリケーション をアップグレードする
boolean
。 任意
overridePublishProfileSettings = true
するときに使用します。 既定値: true
.
値が false
に設定されている場合、アプリケーションを上書きします。
unregisterUnusedVersions
-
未使用バージョンの登録解除
boolean
。 既定値: true
.
任意 アップグレード後に、使用されていないアプリケーションの種類のすべてのバージョンを削除するかどうかを示します。
upgradeMode
-
アップグレード モードの
string
。
overridePublishProfileSettings = true && isUpgrade = true
する場合に必要です。 使用できる値: Monitored
、UnmonitoredAuto
、UnmonitoredManual
。 既定値: Monitored
.
FailureAction
-
FailureAction(失敗アクション)
string
。
overridePublishProfileSettings = true && isUpgrade = true && upgradeMode = Monitored
する場合に必要です。 使用できる値: Rollback
、Manual
。 既定値: Rollback
.
UpgradeReplicaSetCheckTimeoutSecの UpgradeReplicaSetCheckTimeoutSec
-
string
。 任意
overridePublishProfileSettings = true && isUpgrade = true
するときに使用します。
TimeoutSec
-
タイムアウト秒
string
。 任意
overridePublishProfileSettings = true && isUpgrade = true
するときに使用します。
ForceRestartの ForceRestart
-
boolean
。 任意
overridePublishProfileSettings = true && isUpgrade = true
するときに使用します。 既定値: false
.
HealthCheckRetryTimeoutSec
-
HealthCheckRetryTimeoutSec (ヘルスチェック再試行タイムアウト秒)
string
。 任意
overridePublishProfileSettings = true && isUpgrade = true && upgradeMode = Monitored
するときに使用します。
HealthCheckWaitDurationSec
-
HealthCheckWaitDurationSec (ヘルスチェック待機期間秒)
string
。 任意
overridePublishProfileSettings = true && isUpgrade = true && upgradeMode = Monitored
するときに使用します。
HealthCheckStableDurationSec
-
HealthCheckStableDurationSec (英語)
string
。 任意
overridePublishProfileSettings = true && isUpgrade = true && upgradeMode = Monitored
するときに使用します。
UpgradeDomainTimeoutSecの UpgradeDomainTimeoutSec
-
string
。 任意
overridePublishProfileSettings = true && isUpgrade = true && upgradeMode = Monitored
するときに使用します。
ConsiderWarningAsError
-
ConsiderWarningAsError (警告をエラーとして考慮)
boolean
。 任意
overridePublishProfileSettings = true && isUpgrade = true && upgradeMode = Monitored
するときに使用します。 既定値: false
.
DefaultServiceTypeHealthPolicyの DefaultServiceTypeHealthPolicy
-
string
。 任意
overridePublishProfileSettings = true && isUpgrade = true && upgradeMode = Monitored
するときに使用します。
MaxPercentUnhealthyDeployedApplicationsの MaxPercentUnhealthyDeployedApplications
-
string
。 任意
overridePublishProfileSettings = true && isUpgrade = true && upgradeMode = Monitored
するときに使用します。
UpgradeTimeoutSecの UpgradeTimeoutSec
-
string
。 任意
overridePublishProfileSettings = true && isUpgrade = true && upgradeMode = Monitored
するときに使用します。
ServiceTypeHealthPolicyMap
-
ServiceTypeHealthPolicyMap (サービスタイプヘルスポリシーマップ)
string
。 任意
overridePublishProfileSettings = true && isUpgrade = true && upgradeMode = Monitored
するときに使用します。
configureDockerSettings
-
Docker 設定の構成
boolean
。 既定値: false
.
指定した Docker 設定でアプリケーションを構成します。
registryCredentials
-
レジストリ資格情報ソース
string
。
configureDockerSettings = true
する場合に必要です。 使用できる値: AzureResourceManagerEndpoint
(Azure Resource Manager サービス接続)、ContainerRegistryEndpoint
(Container Registry Service Connection)、UsernamePassword
(ユーザー名とパスワード)。 既定値: AzureResourceManagerEndpoint
.
Docker レジストリの資格情報を指定する方法を指定します。
Docker レジストリ サービス接続の dockerRegistryConnection
-
入力エイリアス: dockerRegistryEndpoint
。
string
。
configureDockerSettings = true && registryCredentials = ContainerRegistryEndpoint
する場合に必要です。
Docker レジストリ サービス接続を指定します。 レジストリで認証する必要があるコマンドに必要です。
注
タスクは、レジストリ シークレットを Service Fabric クラスターに送信する前に暗号化を試みます。 ただし、このタスクでは、クラスターのサーバー証明書をエージェント コンピューターにインストールする必要があります。 証明書が存在しない場合、レジストリ シークレットは暗号化されません。
Azure サブスクリプション を
入力エイリアス: azureSubscriptionEndpoint
。
string
。
configureDockerSettings = true && registryCredentials = AzureResourceManagerEndpoint
する場合に必要です。
Azure サブスクリプションを指定します。
注
タスクは、Service Fabric クラスターに送信する前にレジストリ シークレットの暗号化を試みます。 ただし、このタスクでは、クラスターのサーバー証明書をエージェント コンピューターにインストールする必要があります。 証明書が存在しない場合、レジストリ シークレットは暗号化されません。
レジストリ ユーザー名の registryUserName
-
string
。 任意
configureDockerSettings = true && registryCredentials = UsernamePassword
するときに使用します。
Docker レジストリのユーザー名を指定します。
registryPassword
-
レジストリ パスワードの
string
。 任意
configureDockerSettings = true && registryCredentials = UsernamePassword
するときに使用します。
Docker レジストリのパスワードを指定します。 パスワードが暗号化されていない場合は、カスタム リリース パイプライン シークレット変数を使用して格納する必要があります。
パスワード暗号化の passwordEncrypted
-
boolean
。 任意
configureDockerSettings = true && registryCredentials = UsernamePassword
するときに使用します。 既定値: true
.
Invoke-ServiceFabricEncryptText 使用してパスワードを暗号化する必要があります。 そうしないと、クラスター サービス接続のサーバー証明書拇印に一致する証明書がビルド エージェントにインストールされている場合、その証明書はパスワードの暗号化に使用されます。それ以外の場合は、エラーが発生します。
タスク コントロールのオプション
すべてのタスクには、タスク入力に加えて制御オプションがあります。 詳細については、「コントロール オプションと一般的なタスク プロパティを参照してください。
出力変数
なし。
注釈
このタスクを使用して、Service Fabric アプリケーションをクラスターにデプロイします。 このタスクは、発行プロファイルで定義されている設定に従って、Azure Service Fabric アプリケーションをクラスターにデプロイします。
Service Fabric
このタスクでは、Service Fabric のインストールを使用して、Service Fabric クラスターに接続してデプロイします。 ビルド エージェントに Service Fabric をダウンロードしてインストールします。