Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.pulumi.azurenative.maintenance.MaintenanceConfigurationArgs Maven / Gradle / Ivy
Go to download
A native Pulumi package for creating and managing Azure resources.
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.azurenative.maintenance;
import com.pulumi.azurenative.maintenance.enums.MaintenanceScope;
import com.pulumi.azurenative.maintenance.enums.Visibility;
import com.pulumi.azurenative.maintenance.inputs.InputPatchConfigurationArgs;
import com.pulumi.azurenative.maintenance.inputs.MaintenanceOverridePropertiesArgs;
import com.pulumi.core.Either;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
public final class MaintenanceConfigurationArgs extends com.pulumi.resources.ResourceArgs {
public static final MaintenanceConfigurationArgs Empty = new MaintenanceConfigurationArgs();
/**
* Duration of the maintenance window in HH:mm format. If not provided, default value will be used based on maintenance scope provided. Example: 05:00.
*
*/
@Import(name="duration")
private @Nullable Output duration;
/**
* @return Duration of the maintenance window in HH:mm format. If not provided, default value will be used based on maintenance scope provided. Example: 05:00.
*
*/
public Optional> duration() {
return Optional.ofNullable(this.duration);
}
/**
* Effective expiration date of the maintenance window in YYYY-MM-DD hh:mm format. The window will be created in the time zone provided and adjusted to daylight savings according to that time zone. Expiration date must be set to a future date. If not provided, it will be set to the maximum datetime 9999-12-31 23:59:59.
*
*/
@Import(name="expirationDateTime")
private @Nullable Output expirationDateTime;
/**
* @return Effective expiration date of the maintenance window in YYYY-MM-DD hh:mm format. The window will be created in the time zone provided and adjusted to daylight savings according to that time zone. Expiration date must be set to a future date. If not provided, it will be set to the maximum datetime 9999-12-31 23:59:59.
*
*/
public Optional> expirationDateTime() {
return Optional.ofNullable(this.expirationDateTime);
}
/**
* Gets or sets extensionProperties of the maintenanceConfiguration
*
*/
@Import(name="extensionProperties")
private @Nullable Output> extensionProperties;
/**
* @return Gets or sets extensionProperties of the maintenanceConfiguration
*
*/
public Optional>> extensionProperties() {
return Optional.ofNullable(this.extensionProperties);
}
/**
* The input parameters to be passed to the patch run operation.
*
*/
@Import(name="installPatches")
private @Nullable Output installPatches;
/**
* @return The input parameters to be passed to the patch run operation.
*
*/
public Optional> installPatches() {
return Optional.ofNullable(this.installPatches);
}
/**
* Gets or sets location of the resource
*
*/
@Import(name="location")
private @Nullable Output location;
/**
* @return Gets or sets location of the resource
*
*/
public Optional> location() {
return Optional.ofNullable(this.location);
}
/**
* Gets or sets maintenanceScope of the configuration
*
*/
@Import(name="maintenanceScope")
private @Nullable Output> maintenanceScope;
/**
* @return Gets or sets maintenanceScope of the configuration
*
*/
public Optional>> maintenanceScope() {
return Optional.ofNullable(this.maintenanceScope);
}
/**
* Gets or sets namespace of the resource
*
*/
@Import(name="namespace")
private @Nullable Output namespace;
/**
* @return Gets or sets namespace of the resource
*
*/
public Optional> namespace() {
return Optional.ofNullable(this.namespace);
}
/**
* Override Properties for the maintenance Configuration.
*
*/
@Import(name="overrides")
private @Nullable Output> overrides;
/**
* @return Override Properties for the maintenance Configuration.
*
*/
public Optional>> overrides() {
return Optional.ofNullable(this.overrides);
}
/**
* Rate at which a Maintenance window is expected to recur. The rate can be expressed as daily, weekly, or monthly schedules. Daily schedule are formatted as recurEvery: [Frequency as integer]['Day(s)']. If no frequency is provided, the default frequency is 1. Daily schedule examples are recurEvery: Day, recurEvery: 3Days. Weekly schedule are formatted as recurEvery: [Frequency as integer]['Week(s)'] [Optional comma separated list of weekdays Monday-Sunday]. Weekly schedule examples are recurEvery: 3Weeks, recurEvery: Week Saturday,Sunday. Monthly schedules are formatted as [Frequency as integer]['Month(s)'] [Comma separated list of month days] or [Frequency as integer]['Month(s)'] [Week of Month (First, Second, Third, Fourth, Last)] [Weekday Monday-Sunday] [Optional Offset(No. of days)]. Offset value must be between -6 to 6 inclusive. Monthly schedule examples are recurEvery: Month, recurEvery: 2Months, recurEvery: Month day23,day24, recurEvery: Month Last Sunday, recurEvery: Month Fourth Monday, recurEvery: Month Last Sunday Offset-3, recurEvery: Month Third Sunday Offset6.
*
*/
@Import(name="recurEvery")
private @Nullable Output recurEvery;
/**
* @return Rate at which a Maintenance window is expected to recur. The rate can be expressed as daily, weekly, or monthly schedules. Daily schedule are formatted as recurEvery: [Frequency as integer]['Day(s)']. If no frequency is provided, the default frequency is 1. Daily schedule examples are recurEvery: Day, recurEvery: 3Days. Weekly schedule are formatted as recurEvery: [Frequency as integer]['Week(s)'] [Optional comma separated list of weekdays Monday-Sunday]. Weekly schedule examples are recurEvery: 3Weeks, recurEvery: Week Saturday,Sunday. Monthly schedules are formatted as [Frequency as integer]['Month(s)'] [Comma separated list of month days] or [Frequency as integer]['Month(s)'] [Week of Month (First, Second, Third, Fourth, Last)] [Weekday Monday-Sunday] [Optional Offset(No. of days)]. Offset value must be between -6 to 6 inclusive. Monthly schedule examples are recurEvery: Month, recurEvery: 2Months, recurEvery: Month day23,day24, recurEvery: Month Last Sunday, recurEvery: Month Fourth Monday, recurEvery: Month Last Sunday Offset-3, recurEvery: Month Third Sunday Offset6.
*
*/
public Optional> recurEvery() {
return Optional.ofNullable(this.recurEvery);
}
/**
* Resource Group Name
*
*/
@Import(name="resourceGroupName", required=true)
private Output resourceGroupName;
/**
* @return Resource Group Name
*
*/
public Output resourceGroupName() {
return this.resourceGroupName;
}
/**
* Maintenance Configuration Name
*
*/
@Import(name="resourceName")
private @Nullable Output resourceName;
/**
* @return Maintenance Configuration Name
*
*/
public Optional> resourceName() {
return Optional.ofNullable(this.resourceName);
}
/**
* Effective start date of the maintenance window in YYYY-MM-DD hh:mm format. The start date can be set to either the current date or future date. The window will be created in the time zone provided and adjusted to daylight savings according to that time zone.
*
*/
@Import(name="startDateTime")
private @Nullable Output startDateTime;
/**
* @return Effective start date of the maintenance window in YYYY-MM-DD hh:mm format. The start date can be set to either the current date or future date. The window will be created in the time zone provided and adjusted to daylight savings according to that time zone.
*
*/
public Optional> startDateTime() {
return Optional.ofNullable(this.startDateTime);
}
/**
* Gets or sets tags of the resource
*
*/
@Import(name="tags")
private @Nullable Output> tags;
/**
* @return Gets or sets tags of the resource
*
*/
public Optional>> tags() {
return Optional.ofNullable(this.tags);
}
/**
* Name of the timezone. List of timezones can be obtained by executing [System.TimeZoneInfo]::GetSystemTimeZones() in PowerShell. Example: Pacific Standard Time, UTC, W. Europe Standard Time, Korea Standard Time, Cen. Australia Standard Time.
*
*/
@Import(name="timeZone")
private @Nullable Output timeZone;
/**
* @return Name of the timezone. List of timezones can be obtained by executing [System.TimeZoneInfo]::GetSystemTimeZones() in PowerShell. Example: Pacific Standard Time, UTC, W. Europe Standard Time, Korea Standard Time, Cen. Australia Standard Time.
*
*/
public Optional> timeZone() {
return Optional.ofNullable(this.timeZone);
}
/**
* Gets or sets the visibility of the configuration. The default value is 'Custom'
*
*/
@Import(name="visibility")
private @Nullable Output> visibility;
/**
* @return Gets or sets the visibility of the configuration. The default value is 'Custom'
*
*/
public Optional>> visibility() {
return Optional.ofNullable(this.visibility);
}
private MaintenanceConfigurationArgs() {}
private MaintenanceConfigurationArgs(MaintenanceConfigurationArgs $) {
this.duration = $.duration;
this.expirationDateTime = $.expirationDateTime;
this.extensionProperties = $.extensionProperties;
this.installPatches = $.installPatches;
this.location = $.location;
this.maintenanceScope = $.maintenanceScope;
this.namespace = $.namespace;
this.overrides = $.overrides;
this.recurEvery = $.recurEvery;
this.resourceGroupName = $.resourceGroupName;
this.resourceName = $.resourceName;
this.startDateTime = $.startDateTime;
this.tags = $.tags;
this.timeZone = $.timeZone;
this.visibility = $.visibility;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(MaintenanceConfigurationArgs defaults) {
return new Builder(defaults);
}
public static final class Builder {
private MaintenanceConfigurationArgs $;
public Builder() {
$ = new MaintenanceConfigurationArgs();
}
public Builder(MaintenanceConfigurationArgs defaults) {
$ = new MaintenanceConfigurationArgs(Objects.requireNonNull(defaults));
}
/**
* @param duration Duration of the maintenance window in HH:mm format. If not provided, default value will be used based on maintenance scope provided. Example: 05:00.
*
* @return builder
*
*/
public Builder duration(@Nullable Output duration) {
$.duration = duration;
return this;
}
/**
* @param duration Duration of the maintenance window in HH:mm format. If not provided, default value will be used based on maintenance scope provided. Example: 05:00.
*
* @return builder
*
*/
public Builder duration(String duration) {
return duration(Output.of(duration));
}
/**
* @param expirationDateTime Effective expiration date of the maintenance window in YYYY-MM-DD hh:mm format. The window will be created in the time zone provided and adjusted to daylight savings according to that time zone. Expiration date must be set to a future date. If not provided, it will be set to the maximum datetime 9999-12-31 23:59:59.
*
* @return builder
*
*/
public Builder expirationDateTime(@Nullable Output expirationDateTime) {
$.expirationDateTime = expirationDateTime;
return this;
}
/**
* @param expirationDateTime Effective expiration date of the maintenance window in YYYY-MM-DD hh:mm format. The window will be created in the time zone provided and adjusted to daylight savings according to that time zone. Expiration date must be set to a future date. If not provided, it will be set to the maximum datetime 9999-12-31 23:59:59.
*
* @return builder
*
*/
public Builder expirationDateTime(String expirationDateTime) {
return expirationDateTime(Output.of(expirationDateTime));
}
/**
* @param extensionProperties Gets or sets extensionProperties of the maintenanceConfiguration
*
* @return builder
*
*/
public Builder extensionProperties(@Nullable Output> extensionProperties) {
$.extensionProperties = extensionProperties;
return this;
}
/**
* @param extensionProperties Gets or sets extensionProperties of the maintenanceConfiguration
*
* @return builder
*
*/
public Builder extensionProperties(Map extensionProperties) {
return extensionProperties(Output.of(extensionProperties));
}
/**
* @param installPatches The input parameters to be passed to the patch run operation.
*
* @return builder
*
*/
public Builder installPatches(@Nullable Output installPatches) {
$.installPatches = installPatches;
return this;
}
/**
* @param installPatches The input parameters to be passed to the patch run operation.
*
* @return builder
*
*/
public Builder installPatches(InputPatchConfigurationArgs installPatches) {
return installPatches(Output.of(installPatches));
}
/**
* @param location Gets or sets location of the resource
*
* @return builder
*
*/
public Builder location(@Nullable Output location) {
$.location = location;
return this;
}
/**
* @param location Gets or sets location of the resource
*
* @return builder
*
*/
public Builder location(String location) {
return location(Output.of(location));
}
/**
* @param maintenanceScope Gets or sets maintenanceScope of the configuration
*
* @return builder
*
*/
public Builder maintenanceScope(@Nullable Output> maintenanceScope) {
$.maintenanceScope = maintenanceScope;
return this;
}
/**
* @param maintenanceScope Gets or sets maintenanceScope of the configuration
*
* @return builder
*
*/
public Builder maintenanceScope(Either maintenanceScope) {
return maintenanceScope(Output.of(maintenanceScope));
}
/**
* @param maintenanceScope Gets or sets maintenanceScope of the configuration
*
* @return builder
*
*/
public Builder maintenanceScope(String maintenanceScope) {
return maintenanceScope(Either.ofLeft(maintenanceScope));
}
/**
* @param maintenanceScope Gets or sets maintenanceScope of the configuration
*
* @return builder
*
*/
public Builder maintenanceScope(MaintenanceScope maintenanceScope) {
return maintenanceScope(Either.ofRight(maintenanceScope));
}
/**
* @param namespace Gets or sets namespace of the resource
*
* @return builder
*
*/
public Builder namespace(@Nullable Output namespace) {
$.namespace = namespace;
return this;
}
/**
* @param namespace Gets or sets namespace of the resource
*
* @return builder
*
*/
public Builder namespace(String namespace) {
return namespace(Output.of(namespace));
}
/**
* @param overrides Override Properties for the maintenance Configuration.
*
* @return builder
*
*/
public Builder overrides(@Nullable Output> overrides) {
$.overrides = overrides;
return this;
}
/**
* @param overrides Override Properties for the maintenance Configuration.
*
* @return builder
*
*/
public Builder overrides(List overrides) {
return overrides(Output.of(overrides));
}
/**
* @param overrides Override Properties for the maintenance Configuration.
*
* @return builder
*
*/
public Builder overrides(MaintenanceOverridePropertiesArgs... overrides) {
return overrides(List.of(overrides));
}
/**
* @param recurEvery Rate at which a Maintenance window is expected to recur. The rate can be expressed as daily, weekly, or monthly schedules. Daily schedule are formatted as recurEvery: [Frequency as integer]['Day(s)']. If no frequency is provided, the default frequency is 1. Daily schedule examples are recurEvery: Day, recurEvery: 3Days. Weekly schedule are formatted as recurEvery: [Frequency as integer]['Week(s)'] [Optional comma separated list of weekdays Monday-Sunday]. Weekly schedule examples are recurEvery: 3Weeks, recurEvery: Week Saturday,Sunday. Monthly schedules are formatted as [Frequency as integer]['Month(s)'] [Comma separated list of month days] or [Frequency as integer]['Month(s)'] [Week of Month (First, Second, Third, Fourth, Last)] [Weekday Monday-Sunday] [Optional Offset(No. of days)]. Offset value must be between -6 to 6 inclusive. Monthly schedule examples are recurEvery: Month, recurEvery: 2Months, recurEvery: Month day23,day24, recurEvery: Month Last Sunday, recurEvery: Month Fourth Monday, recurEvery: Month Last Sunday Offset-3, recurEvery: Month Third Sunday Offset6.
*
* @return builder
*
*/
public Builder recurEvery(@Nullable Output recurEvery) {
$.recurEvery = recurEvery;
return this;
}
/**
* @param recurEvery Rate at which a Maintenance window is expected to recur. The rate can be expressed as daily, weekly, or monthly schedules. Daily schedule are formatted as recurEvery: [Frequency as integer]['Day(s)']. If no frequency is provided, the default frequency is 1. Daily schedule examples are recurEvery: Day, recurEvery: 3Days. Weekly schedule are formatted as recurEvery: [Frequency as integer]['Week(s)'] [Optional comma separated list of weekdays Monday-Sunday]. Weekly schedule examples are recurEvery: 3Weeks, recurEvery: Week Saturday,Sunday. Monthly schedules are formatted as [Frequency as integer]['Month(s)'] [Comma separated list of month days] or [Frequency as integer]['Month(s)'] [Week of Month (First, Second, Third, Fourth, Last)] [Weekday Monday-Sunday] [Optional Offset(No. of days)]. Offset value must be between -6 to 6 inclusive. Monthly schedule examples are recurEvery: Month, recurEvery: 2Months, recurEvery: Month day23,day24, recurEvery: Month Last Sunday, recurEvery: Month Fourth Monday, recurEvery: Month Last Sunday Offset-3, recurEvery: Month Third Sunday Offset6.
*
* @return builder
*
*/
public Builder recurEvery(String recurEvery) {
return recurEvery(Output.of(recurEvery));
}
/**
* @param resourceGroupName Resource Group Name
*
* @return builder
*
*/
public Builder resourceGroupName(Output resourceGroupName) {
$.resourceGroupName = resourceGroupName;
return this;
}
/**
* @param resourceGroupName Resource Group Name
*
* @return builder
*
*/
public Builder resourceGroupName(String resourceGroupName) {
return resourceGroupName(Output.of(resourceGroupName));
}
/**
* @param resourceName Maintenance Configuration Name
*
* @return builder
*
*/
public Builder resourceName(@Nullable Output resourceName) {
$.resourceName = resourceName;
return this;
}
/**
* @param resourceName Maintenance Configuration Name
*
* @return builder
*
*/
public Builder resourceName(String resourceName) {
return resourceName(Output.of(resourceName));
}
/**
* @param startDateTime Effective start date of the maintenance window in YYYY-MM-DD hh:mm format. The start date can be set to either the current date or future date. The window will be created in the time zone provided and adjusted to daylight savings according to that time zone.
*
* @return builder
*
*/
public Builder startDateTime(@Nullable Output startDateTime) {
$.startDateTime = startDateTime;
return this;
}
/**
* @param startDateTime Effective start date of the maintenance window in YYYY-MM-DD hh:mm format. The start date can be set to either the current date or future date. The window will be created in the time zone provided and adjusted to daylight savings according to that time zone.
*
* @return builder
*
*/
public Builder startDateTime(String startDateTime) {
return startDateTime(Output.of(startDateTime));
}
/**
* @param tags Gets or sets tags of the resource
*
* @return builder
*
*/
public Builder tags(@Nullable Output> tags) {
$.tags = tags;
return this;
}
/**
* @param tags Gets or sets tags of the resource
*
* @return builder
*
*/
public Builder tags(Map tags) {
return tags(Output.of(tags));
}
/**
* @param timeZone Name of the timezone. List of timezones can be obtained by executing [System.TimeZoneInfo]::GetSystemTimeZones() in PowerShell. Example: Pacific Standard Time, UTC, W. Europe Standard Time, Korea Standard Time, Cen. Australia Standard Time.
*
* @return builder
*
*/
public Builder timeZone(@Nullable Output timeZone) {
$.timeZone = timeZone;
return this;
}
/**
* @param timeZone Name of the timezone. List of timezones can be obtained by executing [System.TimeZoneInfo]::GetSystemTimeZones() in PowerShell. Example: Pacific Standard Time, UTC, W. Europe Standard Time, Korea Standard Time, Cen. Australia Standard Time.
*
* @return builder
*
*/
public Builder timeZone(String timeZone) {
return timeZone(Output.of(timeZone));
}
/**
* @param visibility Gets or sets the visibility of the configuration. The default value is 'Custom'
*
* @return builder
*
*/
public Builder visibility(@Nullable Output> visibility) {
$.visibility = visibility;
return this;
}
/**
* @param visibility Gets or sets the visibility of the configuration. The default value is 'Custom'
*
* @return builder
*
*/
public Builder visibility(Either visibility) {
return visibility(Output.of(visibility));
}
/**
* @param visibility Gets or sets the visibility of the configuration. The default value is 'Custom'
*
* @return builder
*
*/
public Builder visibility(String visibility) {
return visibility(Either.ofLeft(visibility));
}
/**
* @param visibility Gets or sets the visibility of the configuration. The default value is 'Custom'
*
* @return builder
*
*/
public Builder visibility(Visibility visibility) {
return visibility(Either.ofRight(visibility));
}
public MaintenanceConfigurationArgs build() {
if ($.resourceGroupName == null) {
throw new MissingRequiredPropertyException("MaintenanceConfigurationArgs", "resourceGroupName");
}
return $;
}
}
}