public static MigrationValidateContext ConvertToContext(
           OperationStatusResponse operationResponse, NetworkMigrationValidationResponse validationResponse)
        {
            if (operationResponse == null) return null;

            var result = new MigrationValidateContext
            {
                OperationId = operationResponse.Id,
                Result = operationResponse.Status.ToString()
            };

            if (validationResponse == null || validationResponse.ValidationMessages == null) return result;

            var errorCount = validationResponse.ValidationMessages.Count;

            if (errorCount > 0)
            {
                result.ValidationMessages = new ValidationMessage[errorCount];

                for (int i = 0; i < errorCount; i++)
                {
                    result.ValidationMessages[i] = new ValidationMessage
                    {
                        ResourceName = validationResponse.ValidationMessages[i].ResourceName,
                        ResourceType = validationResponse.ValidationMessages[i].ResourceType,
                        Category = validationResponse.ValidationMessages[i].Category,
                        Message = validationResponse.ValidationMessages[i].Message,
                        VirtualMachineName = validationResponse.ValidationMessages[i].VirtualMachineName
                    };
                }
                result.Result = "Validation failed.  Please see ValidationMessages for details";
            }

            return result;
        }
Пример #2
0
        private DeploymentGetResponse GetCurrentDeployment(out OperationStatusResponse operation)
        {
            DeploymentSlot slot = string.IsNullOrEmpty(this.Slot) ? DeploymentSlot.Production :
                                                                   (DeploymentSlot)Enum.Parse(typeof(DeploymentSlot), this.Slot, true);

            WriteVerboseWithTimestamp(Resources.GetDeploymentBeginOperation);

            DeploymentGetResponse deploymentGetResponse = null;
            InvokeInOperationContext(() => deploymentGetResponse = this.ComputeClient.Deployments.GetBySlot(this.ServiceName, slot));
            operation = GetOperation(deploymentGetResponse.RequestId);

            WriteVerboseWithTimestamp(Resources.GetDeploymentCompletedOperation);

            return deploymentGetResponse;
        }
Пример #3
0
        private DeploymentGetResponse GetCurrentDeployment(out OperationStatusResponse operation)
        {
            DeploymentSlot slot;
            if (!Enum.TryParse(this.Slot, out slot))
            {
                throw new ArgumentOutOfRangeException("Slot");
            }

            WriteVerboseWithTimestamp(Resources.GetDeploymentBeginOperation);
            DeploymentGetResponse deploymentGetResponse = this.ComputeClient.Deployments.GetBySlot(this.ServiceName, slot);
            operation = GetOperationNewSM(deploymentGetResponse.RequestId);
            WriteVerboseWithTimestamp(Resources.GetDeploymentCompletedOperation);

            return deploymentGetResponse;
        }
 protected virtual ExtensionContext GetContext(OperationStatusResponse op, ExtensionRole role, HostedServiceListExtensionsResponse.Extension ext)
 {
     return new ExtensionContext
     {
         OperationId = op.Id,
         OperationDescription = CommandRuntime.ToString(),
         OperationStatus = op.Status.ToString(),
         Extension = ext.Type,
         ProviderNameSpace = ext.ProviderNamespace,
         Id = ext.Id
     };
 }
 public void Invoke()
 {
     InvokeResponse = networkClient.Networks.SetConfiguration(parameters);
 }
 protected override ExtensionContext GetContext(OperationStatusResponse op, ExtensionRole role, HostedServiceListExtensionsResponse.Extension ext)
 {
     var config = Deserialize(ext.PublicConfiguration, typeof(PublicConfig)) as PublicConfig;
     return new ADDomainExtensionContext
     {
         OperationId = op.Id,
         OperationDescription = CommandRuntime.ToString(),
         OperationStatus = op.Status.ToString(),
         Extension = ext.Type,
         ProviderNameSpace = ext.ProviderNamespace,
         Id = ext.Id,
         Role = role,
         Name = config.Name,
         OUPath = config.OUPath,
         JoinOption = config.Options,
         User = config.User,
         UnjoinDomainUser = config.UnjoinDomainUser,
         Restart = config.Restart,
         Version = ext.Version
     };
 }