As you know, Service Fabric is one of services to achieve Microservice architecture. There are two options when you got bad deployments using Service Fabric.
- manual deployment: "Start-ServiceFabricApplicationUpgrade" PowerShell command
- VSTS deployment: create new Release using existing build packages
Revert with "Start-ServiceFabricApplicationUpgrade"
Service Fabric retains old application packages for a while like below. As far as I confirmed, it should retain more than 24 hours.
Meanwhile the retainment, you can revert from new deployment to old one with below PowerShell commands.
Login-AzureRmAccount $applicationName = 'fabric:/FabricApp01' $connectArgs = @{ ConnectionEndpoint = "'<your cluster name'".westus.cloudapp.azure.com:19000'; X509Credential = $True; StoreLocation = "CurrentUser"; StoreName = "My"; ServerCommonName = "'your cluster name'.westus.cloudapp.azure.com"; FindType = 'FindByThumbprint'; # "Client certificates" thumbprint. Pick up this value from "security" item in your cluster on Azure Portal FindValue = "YYYYYYYYYY7e3372bc1ed5cf62b435XXXXXXXXXX"; # "Cluster certificates" thumbprint. Pick up this value from "security" item in your cluster on Azure Portal ServerCertThumbprint = "YYYYYYYYYY2E67D7E54647A12B7787XXXXXXXXXX" } Connect-ServiceFabricCluster @connectArgs $app = Get-ServiceFabricApplication -ApplicationName $applicationName $app $table = @{} $app.ApplicationParameters | ForEach-Object { $table.Add( $_.Name, $_.Value)} Start-ServiceFabricApplicationUpgrade -ApplicationName $applicationName -ApplicationTypeVersion "1.0.2.52" -ApplicationParameter $table -UnmonitoredAuto
You can watch it progress in Service Fabric Explorer like below.