MaintenanceConfiguration

class MaintenanceConfiguration : KotlinCustomResource

See planned maintenance for more information about planned maintenance. Uses Azure REST API version 2024-10-01. In version 2.x of the Azure Native provider, it used API version 2023-04-01. Other available API versions: 2020-12-01, 2021-02-01, 2021-03-01, 2021-05-01, 2021-07-01, 2021-08-01, 2021-09-01, 2021-10-01, 2021-11-01-preview, 2022-01-01, 2022-01-02-preview, 2022-02-01, 2022-02-02-preview, 2022-03-01, 2022-03-02-preview, 2022-04-01, 2022-04-02-preview, 2022-05-02-preview, 2022-06-01, 2022-06-02-preview, 2022-07-01, 2022-07-02-preview, 2022-08-02-preview, 2022-08-03-preview, 2022-09-01, 2022-09-02-preview, 2022-10-02-preview, 2022-11-01, 2022-11-02-preview, 2023-01-01, 2023-01-02-preview, 2023-02-01, 2023-02-02-preview, 2023-03-01, 2023-03-02-preview, 2023-04-01, 2023-04-02-preview, 2023-05-01, 2023-05-02-preview, 2023-06-01, 2023-06-02-preview, 2023-07-01, 2023-07-02-preview, 2023-08-01, 2023-08-02-preview, 2023-09-01, 2023-09-02-preview, 2023-10-01, 2023-10-02-preview, 2023-11-01, 2023-11-02-preview, 2024-01-01, 2024-01-02-preview, 2024-02-01, 2024-02-02-preview, 2024-03-02-preview, 2024-04-02-preview, 2024-05-01, 2024-05-02-preview, 2024-06-02-preview, 2024-07-01, 2024-07-02-preview, 2024-08-01, 2024-09-01, 2024-09-02-preview, 2024-10-02-preview, 2025-01-01. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native containerservice [ApiVersion]. See the ../../../version-guide/#accessing-any-api-version-via-local-packages for details.

Example Usage

Create/Update Maintenance Configuration

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var maintenanceConfiguration = new AzureNative.ContainerService.MaintenanceConfiguration("maintenanceConfiguration", new()
{
ConfigName = "default",
NotAllowedTime = new[]
{
new AzureNative.ContainerService.Inputs.TimeSpanArgs
{
End = "2020-11-30T12:00:00Z",
Start = "2020-11-26T03:00:00Z",
},
},
ResourceGroupName = "rg1",
ResourceName = "clustername1",
TimeInWeek = new[]
{
new AzureNative.ContainerService.Inputs.TimeInWeekArgs
{
Day = AzureNative.ContainerService.WeekDay.Monday,
HourSlots = new[]
{
1,
2,
},
},
},
});
});
package main
import (
containerservice "github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := containerservice.NewMaintenanceConfiguration(ctx, "maintenanceConfiguration", &containerservice.MaintenanceConfigurationArgs{
ConfigName: pulumi.String("default"),
NotAllowedTime: containerservice.TimeSpanArray{
&containerservice.TimeSpanArgs{
End: pulumi.String("2020-11-30T12:00:00Z"),
Start: pulumi.String("2020-11-26T03:00:00Z"),
},
},
ResourceGroupName: pulumi.String("rg1"),
ResourceName: pulumi.String("clustername1"),
TimeInWeek: containerservice.TimeInWeekArray{
&containerservice.TimeInWeekArgs{
Day: pulumi.String(containerservice.WeekDayMonday),
HourSlots: pulumi.IntArray{
pulumi.Int(1),
pulumi.Int(2),
},
},
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.containerservice.MaintenanceConfiguration;
import com.pulumi.azurenative.containerservice.MaintenanceConfigurationArgs;
import com.pulumi.azurenative.containerservice.inputs.TimeSpanArgs;
import com.pulumi.azurenative.containerservice.inputs.TimeInWeekArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var maintenanceConfiguration = new MaintenanceConfiguration("maintenanceConfiguration", MaintenanceConfigurationArgs.builder()
.configName("default")
.notAllowedTime(TimeSpanArgs.builder()
.end("2020-11-30T12:00:00Z")
.start("2020-11-26T03:00:00Z")
.build())
.resourceGroupName("rg1")
.resourceName("clustername1")
.timeInWeek(TimeInWeekArgs.builder()
.day("Monday")
.hourSlots(
1,
2)
.build())
.build());
}
}

Create/Update Maintenance Configuration with Maintenance Window

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var maintenanceConfiguration = new AzureNative.ContainerService.MaintenanceConfiguration("maintenanceConfiguration", new()
{
ConfigName = "aksManagedAutoUpgradeSchedule",
MaintenanceWindow = new AzureNative.ContainerService.Inputs.MaintenanceWindowArgs
{
DurationHours = 10,
NotAllowedDates = new[]
{
new AzureNative.ContainerService.Inputs.DateSpanArgs
{
End = "2023-02-25",
Start = "2023-02-18",
},
new AzureNative.ContainerService.Inputs.DateSpanArgs
{
End = "2024-01-05",
Start = "2023-12-23",
},
},
Schedule = new AzureNative.ContainerService.Inputs.ScheduleArgs
{
RelativeMonthly = new AzureNative.ContainerService.Inputs.RelativeMonthlyScheduleArgs
{
DayOfWeek = AzureNative.ContainerService.WeekDay.Monday,
IntervalMonths = 3,
WeekIndex = AzureNative.ContainerService.Type.First,
},
},
StartDate = "2023-01-01",
StartTime = "08:30",
UtcOffset = "+05:30",
},
ResourceGroupName = "rg1",
ResourceName = "clustername1",
});
});
package main
import (
containerservice "github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := containerservice.NewMaintenanceConfiguration(ctx, "maintenanceConfiguration", &containerservice.MaintenanceConfigurationArgs{
ConfigName: pulumi.String("aksManagedAutoUpgradeSchedule"),
MaintenanceWindow: &containerservice.MaintenanceWindowArgs{
DurationHours: pulumi.Int(10),
NotAllowedDates: containerservice.DateSpanArray{
&containerservice.DateSpanArgs{
End: pulumi.String("2023-02-25"),
Start: pulumi.String("2023-02-18"),
},
&containerservice.DateSpanArgs{
End: pulumi.String("2024-01-05"),
Start: pulumi.String("2023-12-23"),
},
},
Schedule: &containerservice.ScheduleArgs{
RelativeMonthly: &containerservice.RelativeMonthlyScheduleArgs{
DayOfWeek: pulumi.String(containerservice.WeekDayMonday),
IntervalMonths: pulumi.Int(3),
WeekIndex: pulumi.String(containerservice.TypeFirst),
},
},
StartDate: pulumi.String("2023-01-01"),
StartTime: pulumi.String("08:30"),
UtcOffset: pulumi.String("+05:30"),
},
ResourceGroupName: pulumi.String("rg1"),
ResourceName: pulumi.String("clustername1"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.containerservice.MaintenanceConfiguration;
import com.pulumi.azurenative.containerservice.MaintenanceConfigurationArgs;
import com.pulumi.azurenative.containerservice.inputs.MaintenanceWindowArgs;
import com.pulumi.azurenative.containerservice.inputs.ScheduleArgs;
import com.pulumi.azurenative.containerservice.inputs.RelativeMonthlyScheduleArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var maintenanceConfiguration = new MaintenanceConfiguration("maintenanceConfiguration", MaintenanceConfigurationArgs.builder()
.configName("aksManagedAutoUpgradeSchedule")
.maintenanceWindow(MaintenanceWindowArgs.builder()
.durationHours(10)
.notAllowedDates(
DateSpanArgs.builder()
.end("2023-02-25")
.start("2023-02-18")
.build(),
DateSpanArgs.builder()
.end("2024-01-05")
.start("2023-12-23")
.build())
.schedule(ScheduleArgs.builder()
.relativeMonthly(RelativeMonthlyScheduleArgs.builder()
.dayOfWeek("Monday")
.intervalMonths(3)
.weekIndex("First")
.build())
.build())
.startDate("2023-01-01")
.startTime("08:30")
.utcOffset("+05:30")
.build())
.resourceGroupName("rg1")
.resourceName("clustername1")
.build());
}
}

Import

An existing resource can be imported using its type token, name, and identifier, e.g.

$ pulumi import azure-native:containerservice:MaintenanceConfiguration aksManagedAutoUpgradeSchedule /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/maintenanceConfigurations/{configName}

Properties

Link copied to clipboard
val azureApiVersion: Output<String>

The Azure API version of the resource.

Link copied to clipboard
val id: Output<String>
Link copied to clipboard

Maintenance window for the maintenance configuration.

Link copied to clipboard
val name: Output<String>

The name of the resource that is unique within a resource group. This name can be used to access the resource.

Link copied to clipboard

Time slots on which upgrade is not allowed.

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

The system metadata relating to this resource.

Link copied to clipboard

If two array entries specify the same day of the week, the applied configuration is the union of times in both entries.

Link copied to clipboard
val type: Output<String>

Resource type

Link copied to clipboard
val urn: Output<String>