diff --git a/src/Sql/Sql/ChangeLog.md b/src/Sql/Sql/ChangeLog.md
index dfbd45ea267e..ef6431205344 100644
--- a/src/Sql/Sql/ChangeLog.md
+++ b/src/Sql/Sql/ChangeLog.md
@@ -23,6 +23,7 @@
## Version 2.9.1
* Fixed potential server name case insensitive error in `New-AzSqlServer` and `Set-AzSqlServer`
* Fixed wrong database name returned on existing database error in `New-AzSqlDatabaseSecondary`
+* Added operation parameters and steps in `Get-AzSqlInstanceOperation`
## Version 2.9.0
* Added support for Service principal and guest users in Set-AzSqlInstanceActiveDirectoryAdministrator cmdlet`
diff --git a/src/Sql/Sql/ManagedInstanceOperation/Model/AzureSqlManagedInstanceOperationModel.cs b/src/Sql/Sql/ManagedInstanceOperation/Model/AzureSqlManagedInstanceOperationModel.cs
index 4f23d5450ad9..29ec3da7ffca 100644
--- a/src/Sql/Sql/ManagedInstanceOperation/Model/AzureSqlManagedInstanceOperationModel.cs
+++ b/src/Sql/Sql/ManagedInstanceOperation/Model/AzureSqlManagedInstanceOperationModel.cs
@@ -105,5 +105,15 @@ public class AzureSqlManagedInstanceOperationModel
/// Gets whether the operation can be cancelled.
///
public bool? IsCancellable { get; set; }
+
+ ///
+ /// Gets the operation parameters.
+ ///
+ public Microsoft.Azure.Management.Sql.Models.ManagedInstanceOperationParametersPair OperationParameters { get; set; }
+
+ ///
+ /// Gets the operation steps.
+ ///
+ public Microsoft.Azure.Management.Sql.Models.ManagedInstanceOperationSteps OperationSteps { get; set; }
}
}
diff --git a/src/Sql/Sql/ManagedInstanceOperation/Services/AzureSqlManagedInstanceOperationAdapter.cs b/src/Sql/Sql/ManagedInstanceOperation/Services/AzureSqlManagedInstanceOperationAdapter.cs
index 7754905be665..2ced07887148 100644
--- a/src/Sql/Sql/ManagedInstanceOperation/Services/AzureSqlManagedInstanceOperationAdapter.cs
+++ b/src/Sql/Sql/ManagedInstanceOperation/Services/AzureSqlManagedInstanceOperationAdapter.cs
@@ -123,6 +123,48 @@ private static AzureSqlManagedInstanceOperationModel CreateManagedInstanceOperat
managedInstanceOperation.State = resp.State;
managedInstanceOperation.IsUserError = resp.IsUserError;
+ if (resp.OperationParameters != null)
+ {
+ Management.Sql.Models.UpsertManagedServerOperationParameters currentParameters = new Management.Sql.Models.UpsertManagedServerOperationParameters();
+ if (resp.OperationParameters.CurrentParameters != null)
+ {
+ currentParameters.Family = resp.OperationParameters.CurrentParameters.Family;
+ currentParameters.Tier = resp.OperationParameters.CurrentParameters.Tier;
+ currentParameters.VCores = resp.OperationParameters.CurrentParameters.VCores;
+ currentParameters.StorageSizeInGB = resp.OperationParameters.CurrentParameters.StorageSizeInGB;
+ }
+
+ Management.Sql.Models.UpsertManagedServerOperationParameters requestedParameters = new Management.Sql.Models.UpsertManagedServerOperationParameters();
+ if (resp.OperationParameters.RequestedParameters != null)
+ {
+ requestedParameters.Family = resp.OperationParameters.RequestedParameters.Family;
+ requestedParameters.Tier = resp.OperationParameters.RequestedParameters.Tier;
+ requestedParameters.VCores = resp.OperationParameters.RequestedParameters.VCores;
+ requestedParameters.StorageSizeInGB = resp.OperationParameters.RequestedParameters.StorageSizeInGB;
+ }
+
+ managedInstanceOperation.OperationParameters = new Management.Sql.Models.ManagedInstanceOperationParametersPair(currentParameters, requestedParameters);
+ }
+ else
+ {
+ managedInstanceOperation.OperationParameters = new Management.Sql.Models.ManagedInstanceOperationParametersPair();
+ }
+
+ IList stepsList = new List();
+ if (resp.OperationSteps != null && resp.OperationSteps.StepsList != null)
+ {
+ foreach (Management.Sql.Models.UpsertManagedServerOperationStep step in resp.OperationSteps.StepsList)
+ {
+ stepsList.Add(new Management.Sql.Models.UpsertManagedServerOperationStep(step.Order, step.Name, step.Status));
+ }
+
+ managedInstanceOperation.OperationSteps = new Management.Sql.Models.ManagedInstanceOperationSteps(resp.OperationSteps.TotalSteps, resp.OperationSteps.CurrentStep, stepsList);
+ }
+ else
+ {
+ managedInstanceOperation.OperationSteps = new Management.Sql.Models.ManagedInstanceOperationSteps();
+ }
+
return managedInstanceOperation;
}
}
diff --git a/src/Sql/Sql/help/Get-AzSqlInstanceOperation.md b/src/Sql/Sql/help/Get-AzSqlInstanceOperation.md
index 71573f91d0b9..6deb921eeb1b 100644
--- a/src/Sql/Sql/help/Get-AzSqlInstanceOperation.md
+++ b/src/Sql/Sql/help/Get-AzSqlInstanceOperation.md
@@ -55,6 +55,8 @@ IsUserError :
EstimatedCompletionTime :
Description :
IsCancellable : False
+OperationParameters : Microsoft.Azure.Management.Sql.Models.ManagedInstanceOperationParametersPair
+OperationSteps : Microsoft.Azure.Management.Sql.Models.ManagedInstanceOperationSteps
Id : /subscriptions/a8c9a924-06c0-4bde-9788-e7b1370969e1/resourceGroups/ps3753/providers/Microsoft.Sql/managedInstances/ps3698/operations/79f2c91b-0080-4c14-b9b4-d9991c6e82dd
ResourceGroupName : ps3753
@@ -72,6 +74,8 @@ IsUserError :
EstimatedCompletionTime :
Description :
IsCancellable : False
+OperationParameters : Microsoft.Azure.Management.Sql.Models.ManagedInstanceOperationParametersPair
+OperationSteps : Microsoft.Azure.Management.Sql.Models.ManagedInstanceOperationSteps
```
This command gets all operations a SQL managed instance.
@@ -96,6 +100,8 @@ IsUserError :
EstimatedCompletionTime :
Description :
IsCancellable : False
+OperationParameters : Microsoft.Azure.Management.Sql.Models.ManagedInstanceOperationParametersPair
+OperationSteps : Microsoft.Azure.Management.Sql.Models.ManagedInstanceOperationSteps
```
This command gets operation with name '5870c6d8-6703-4b27-8ae4-687b4ca7caea' on a SQL managed instance.
@@ -121,6 +127,8 @@ IsUserError :
EstimatedCompletionTime :
Description :
IsCancellable : False
+OperationParameters : Microsoft.Azure.Management.Sql.Models.ManagedInstanceOperationParametersPair
+OperationSteps : Microsoft.Azure.Management.Sql.Models.ManagedInstanceOperationSteps
```
This command gets operation with id '/subscriptions/a8c9a924-06c0-4bde-9788-e7b1370969e1/resourceGroups/ps3753/providers/Microsoft.Sql/managedInstances/ps3698/operations/5870c6d8-6703-4b27-8ae4-687b4ca7caea'.