Beispiel #1
0
        public override void ExecuteCmdlet()
        {
            base.ExecuteCmdlet();
            ExecuteClientAction(() =>
            {
                if (ShouldProcess(this.Name, VerbsCommon.New))
                {
                    string resourceGroupName = this.ResourceGroupName;
                    string resourceName      = this.Name;
                    MaintenanceConfiguration configuration = new MaintenanceConfiguration();
                    if (this.Location != null)
                    {
                        configuration.Location = this.Location;
                    }
                    if (this.Tag != null)
                    {
                        configuration.Tags = this.Tag.Cast <DictionaryEntry>().ToDictionary(ht => (string)ht.Key, ht => (string)ht.Value);
                    }

                    if (this.ExtensionProperty != null)
                    {
                        configuration.ExtensionProperties = this.ExtensionProperty.Cast <DictionaryEntry>().ToDictionary(ht => (string)ht.Key, ht => (string)ht.Value);
                    }
                    if (this.MaintenanceScope != null)
                    {
                        configuration.MaintenanceScope = this.MaintenanceScope;
                    }

                    var result   = MaintenanceConfigurationsClient.CreateOrUpdate(resourceGroupName, resourceName, configuration);
                    var psObject = new PSMaintenanceConfiguration();
                    MaintenanceAutomationAutoMapperProfile.Mapper.Map <MaintenanceConfiguration, PSMaintenanceConfiguration>(result, psObject);
                    WriteObject(psObject);
                }
            });
        }
        public override void ExecuteCmdlet()
        {
            base.ExecuteCmdlet();
            ExecuteClientAction(() =>
            {
                string resourceGroupName = this.ResourceGroupName;
                string name = this.Name;

                if (!string.IsNullOrEmpty(resourceGroupName) && !string.IsNullOrEmpty(name))
                {
                    var result = MaintenanceConfigurationsClient.Get(resourceGroupName, name);
                    WriteObject(result);
                }

                else
                {
                    var psObject = new List <PSMaintenanceConfiguration>();
                    var result   = MaintenanceConfigurationsClient.List();

                    foreach (var maintenanceConfiguration in result)
                    {
                        PSMaintenanceConfiguration psMaintenanceConfiguration = new PSMaintenanceConfiguration();
                        MaintenanceAutomationAutoMapperProfile.Mapper.Map <MaintenanceConfiguration, PSMaintenanceConfiguration>(maintenanceConfiguration, psMaintenanceConfiguration);
                        psObject.Add(psMaintenanceConfiguration);
                    }

                    WriteObject(psObject);
                }
            });
        }
        public override void ExecuteCmdlet()
        {
            base.ExecuteCmdlet();
            ExecuteClientAction(() =>
            {
                string resourceGroupName = this.ResourceGroupName;
                string name = this.Name;
                if (!string.IsNullOrEmpty(resourceGroupName) && !string.IsNullOrEmpty(name))
                {
                    var result = MaintenanceConfigurationsClient.Get(resourceGroupName, name);
                    PSMaintenanceConfiguration psMaintenanceConfiguration = new PSMaintenanceConfiguration();
                    MaintenanceAutomationAutoMapperProfile.Mapper.Map <MaintenanceConfiguration, PSMaintenanceConfiguration>(result, psMaintenanceConfiguration);
                    WriteObject(psMaintenanceConfiguration);
                }

                else
                {
                    var psObject = new List <PSMaintenanceConfiguration>();
                    var result   = MaintenanceConfigurationsClient.List();

                    foreach (var maintenanceConfiguration in result)
                    {
                        string[] mcInfo = maintenanceConfiguration.Id.Split(uriSplit, StringSplitOptions.RemoveEmptyEntries);
                        if (null != mcInfo && mcInfo.Length == 8)
                        {
                            if (!string.IsNullOrEmpty(resourceGroupName) && !mcInfo[3].Equals(resourceGroupName))
                            {
                                continue;
                            }

                            if (!string.IsNullOrEmpty(name) && !maintenanceConfiguration.Name.Equals(name))
                            {
                                continue;
                            }
                        }

                        PSMaintenanceConfiguration psMaintenanceConfiguration = new PSMaintenanceConfiguration();
                        MaintenanceAutomationAutoMapperProfile.Mapper.Map <MaintenanceConfiguration, PSMaintenanceConfiguration>(maintenanceConfiguration, psMaintenanceConfiguration);
                        psObject.Add(psMaintenanceConfiguration);
                    }

                    WriteObject(psObject);
                }
            });
        }
Beispiel #4
0
        public override void ExecuteCmdlet()
        {
            base.ExecuteCmdlet();
            ExecuteClientAction(() =>
            {
                if (ShouldProcess(this.Name, VerbsData.Update))
                {
                    string resourceGroupName = this.ResourceGroupName;
                    string name = this.Name;
                    MaintenanceConfiguration configuration = new MaintenanceConfiguration();
                    MaintenanceAutomationAutoMapperProfile.Mapper.Map <PSMaintenanceConfiguration, MaintenanceConfiguration>(this.Configuration, configuration);

                    var result   = MaintenanceConfigurationsClient.UpdateMethod(resourceGroupName, name, configuration);
                    var psObject = new PSMaintenanceConfiguration();
                    MaintenanceAutomationAutoMapperProfile.Mapper.Map <MaintenanceConfiguration, PSMaintenanceConfiguration>(result, psObject);
                    WriteObject(psObject);
                }
            });
        }
Beispiel #5
0
        public override void ExecuteCmdlet()
        {
            base.ExecuteCmdlet();
            ExecuteClientAction(() =>
            {
                if (ShouldProcess(this.Name, VerbsCommon.Remove) &&
                    (this.Force.IsPresent ||
                     this.ShouldContinue(Properties.Resources.ResourceRemovalConfirmation,
                                         "Remove-AzMaintenanceConfiguration operation")))
                {
                    string resourceGroupName = this.ResourceGroupName;
                    string name = this.Name;

                    MaintenanceConfigurationsClient.Delete(resourceGroupName, name);

                    if (this.PassThru.IsPresent)
                    {
                        this.WriteObject(true);
                    }
                }
            });
        }
Beispiel #6
0
        public override void ExecuteCmdlet()
        {
            base.ExecuteCmdlet();
            ExecuteClientAction(() =>
            {
                if (ShouldProcess(this.Name, VerbsCommon.New))
                {
                    string resourceGroupName = this.ResourceGroupName;
                    string resourceName      = this.Name;
                    MaintenanceConfiguration configuration = new MaintenanceConfiguration();
                    if (this.Location != null)
                    {
                        configuration.Location = this.Location;
                    }
                    if (this.Tag != null)
                    {
                        configuration.Tags = this.Tag.Cast <DictionaryEntry>().ToDictionary(ht => (string)ht.Key, ht => (string)ht.Value);
                    }

                    if (this.ExtensionProperty != null)
                    {
                        configuration.ExtensionProperties = this.ExtensionProperty.Cast <DictionaryEntry>().ToDictionary(ht => (string)ht.Key, ht => (string)ht.Value);
                    }
                    if (this.MaintenanceScope != null)
                    {
                        configuration.MaintenanceScope = this.MaintenanceScope;
                    }

                    if (this.StartDateTime != null)
                    {
                        configuration.StartDateTime = this.StartDateTime;
                    }

                    if (this.ExpirationDateTime != null)
                    {
                        configuration.ExpirationDateTime = this.ExpirationDateTime;
                    }

                    if (this.Duration != null)
                    {
                        configuration.Duration = this.Duration.ToString((@"hh\:mm"));
                    }

                    if (this.Timezone != null)
                    {
                        configuration.TimeZone = this.Timezone;
                    }

                    if (this.RecurEvery != null)
                    {
                        configuration.RecurEvery = this.RecurEvery;
                    }

                    if (this.Visibility != null)
                    {
                        configuration.Visibility = this.Visibility;
                    }

                    if (this.InstallPatchRebootSetting != null)
                    {
                        configuration.InstallPatches = configuration.InstallPatches ?? new InputPatchConfiguration();
                        configuration.InstallPatches.RebootSetting = this.InstallPatchRebootSetting;
                    }

                    if (this.WindowParameterClassificationToInclude != null)
                    {
                        configuration.InstallPatches = configuration.InstallPatches ?? new InputPatchConfiguration();
                        configuration.InstallPatches.WindowsParameters = configuration.InstallPatches.WindowsParameters ?? new InputWindowsParameters();
                        configuration.InstallPatches.WindowsParameters.ClassificationsToInclude = this.WindowParameterClassificationToInclude.ToList();
                    }

                    if (this.WindowParameterExcludeKbRequiringReboot.HasValue)
                    {
                        configuration.InstallPatches = configuration.InstallPatches ?? new InputPatchConfiguration();
                        configuration.InstallPatches.WindowsParameters = configuration.InstallPatches.WindowsParameters ?? new InputWindowsParameters();
                        configuration.InstallPatches.WindowsParameters.ExcludeKbsRequiringReboot = this.WindowParameterExcludeKbRequiringReboot;
                    }

                    if (this.WindowParameterKbNumberToExclude != null)
                    {
                        configuration.InstallPatches = configuration.InstallPatches ?? new InputPatchConfiguration();
                        configuration.InstallPatches.WindowsParameters = configuration.InstallPatches.WindowsParameters ?? new InputWindowsParameters();
                        configuration.InstallPatches.WindowsParameters.KbNumbersToExclude = this.WindowParameterKbNumberToExclude.ToList();
                    }

                    if (this.WindowParameterKbNumberToInclude != null)
                    {
                        configuration.InstallPatches = configuration.InstallPatches ?? new InputPatchConfiguration();
                        configuration.InstallPatches.WindowsParameters = configuration.InstallPatches.WindowsParameters ?? new InputWindowsParameters();
                        configuration.InstallPatches.WindowsParameters.KbNumbersToInclude = this.WindowParameterKbNumberToInclude.ToList();
                    }

                    if (this.LinuxParameterClassificationToInclude != null)
                    {
                        configuration.InstallPatches = configuration.InstallPatches ?? new InputPatchConfiguration();
                        configuration.InstallPatches.LinuxParameters = configuration.InstallPatches.LinuxParameters ?? new InputLinuxParameters();
                        configuration.InstallPatches.LinuxParameters.ClassificationsToInclude = this.LinuxParameterClassificationToInclude.ToList();
                    }

                    if (this.LinuxParameterPackageNameMaskToExclude != null)
                    {
                        configuration.InstallPatches = configuration.InstallPatches ?? new InputPatchConfiguration();
                        configuration.InstallPatches.LinuxParameters = configuration.InstallPatches.LinuxParameters ?? new InputLinuxParameters();
                        configuration.InstallPatches.LinuxParameters.PackageNameMasksToExclude = this.LinuxParameterPackageNameMaskToExclude.ToList();
                    }

                    if (this.LinuxParameterPackageNameMaskToInclude != null)
                    {
                        configuration.InstallPatches = configuration.InstallPatches ?? new InputPatchConfiguration();
                        configuration.InstallPatches.LinuxParameters = configuration.InstallPatches.LinuxParameters ?? new InputLinuxParameters();
                        configuration.InstallPatches.LinuxParameters.PackageNameMasksToInclude = this.LinuxParameterPackageNameMaskToInclude.ToList();
                    }

                    if (this.PreTask != null)
                    {
                        configuration.InstallPatches          = configuration.InstallPatches ?? new InputPatchConfiguration();
                        configuration.InstallPatches.PreTasks = JsonConvert.DeserializeObject <List <TaskProperties> >(this.PreTask);
                    }

                    if (this.PostTask != null)
                    {
                        configuration.InstallPatches          = configuration.InstallPatches ?? new InputPatchConfiguration();
                        configuration.InstallPatches.PreTasks = JsonConvert.DeserializeObject <List <TaskProperties> >(this.PostTask);
                    }

                    var result   = MaintenanceConfigurationsClient.CreateOrUpdate(resourceGroupName, resourceName, configuration);
                    var psObject = new PSMaintenanceConfiguration();
                    MaintenanceAutomationAutoMapperProfile.Mapper.Map <MaintenanceConfiguration, PSMaintenanceConfiguration>(result, psObject);
                    WriteObject(psObject);
                }
            });
        }