1. Packages
  2. Azure Native
  3. API Docs
  4. devtestlab
  5. VirtualMachineSchedule
This is the latest version of Azure Native. Use the Azure Native v2 docs if using the v2 version of this package.
Azure Native v3.2.0 published on Monday, Apr 14, 2025 by Pulumi

azure-native.devtestlab.VirtualMachineSchedule

Explore with Pulumi AI

This is the latest version of Azure Native. Use the Azure Native v2 docs if using the v2 version of this package.
Azure Native v3.2.0 published on Monday, Apr 14, 2025 by Pulumi

A schedule.

Uses Azure REST API version 2018-09-15. In version 2.x of the Azure Native provider, it used API version 2018-09-15.

Example Usage

VirtualMachineSchedules_CreateOrUpdate

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;

return await Deployment.RunAsync(() => 
{
    var virtualMachineSchedule = new AzureNative.DevTestLab.VirtualMachineSchedule("virtualMachineSchedule", new()
    {
        DailyRecurrence = new AzureNative.DevTestLab.Inputs.DayDetailsArgs
        {
            Time = "1900",
        },
        HourlyRecurrence = new AzureNative.DevTestLab.Inputs.HourDetailsArgs
        {
            Minute = 30,
        },
        LabName = "{labName}",
        Location = "{location}",
        Name = "LabVmsShutdown",
        NotificationSettings = new AzureNative.DevTestLab.Inputs.NotificationSettingsArgs
        {
            EmailRecipient = "{email}",
            NotificationLocale = "EN",
            Status = AzureNative.DevTestLab.EnableStatus.Enabled,
            TimeInMinutes = 30,
            WebhookUrl = "{webhookUrl}",
        },
        ResourceGroupName = "resourceGroupName",
        Status = AzureNative.DevTestLab.EnableStatus.Enabled,
        Tags = 
        {
            { "tagName1", "tagValue1" },
        },
        TargetResourceId = "/subscriptions/{subscriptionId}/resourcegroups/resourceGroupName/providers/microsoft.devtestlab/labs/{labName}/virtualMachines/{vmName}",
        TaskType = "LabVmsShutdownTask",
        TimeZoneId = "Pacific Standard Time",
        VirtualMachineName = "{vmName}",
        WeeklyRecurrence = new AzureNative.DevTestLab.Inputs.WeekDetailsArgs
        {
            Time = "1700",
            Weekdays = new[]
            {
                "Friday",
                "Saturday",
                "Sunday",
            },
        },
    });

});
Copy
package main

import (
	devtestlab "github.com/pulumi/pulumi-azure-native-sdk/devtestlab/v3"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := devtestlab.NewVirtualMachineSchedule(ctx, "virtualMachineSchedule", &devtestlab.VirtualMachineScheduleArgs{
			DailyRecurrence: &devtestlab.DayDetailsArgs{
				Time: pulumi.String("1900"),
			},
			HourlyRecurrence: &devtestlab.HourDetailsArgs{
				Minute: pulumi.Int(30),
			},
			LabName:  pulumi.String("{labName}"),
			Location: pulumi.String("{location}"),
			Name:     pulumi.String("LabVmsShutdown"),
			NotificationSettings: &devtestlab.NotificationSettingsArgs{
				EmailRecipient:     pulumi.String("{email}"),
				NotificationLocale: pulumi.String("EN"),
				Status:             pulumi.String(devtestlab.EnableStatusEnabled),
				TimeInMinutes:      pulumi.Int(30),
				WebhookUrl:         pulumi.String("{webhookUrl}"),
			},
			ResourceGroupName: pulumi.String("resourceGroupName"),
			Status:            pulumi.String(devtestlab.EnableStatusEnabled),
			Tags: pulumi.StringMap{
				"tagName1": pulumi.String("tagValue1"),
			},
			TargetResourceId:   pulumi.String("/subscriptions/{subscriptionId}/resourcegroups/resourceGroupName/providers/microsoft.devtestlab/labs/{labName}/virtualMachines/{vmName}"),
			TaskType:           pulumi.String("LabVmsShutdownTask"),
			TimeZoneId:         pulumi.String("Pacific Standard Time"),
			VirtualMachineName: pulumi.String("{vmName}"),
			WeeklyRecurrence: &devtestlab.WeekDetailsArgs{
				Time: pulumi.String("1700"),
				Weekdays: pulumi.StringArray{
					pulumi.String("Friday"),
					pulumi.String("Saturday"),
					pulumi.String("Sunday"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.devtestlab.VirtualMachineSchedule;
import com.pulumi.azurenative.devtestlab.VirtualMachineScheduleArgs;
import com.pulumi.azurenative.devtestlab.inputs.DayDetailsArgs;
import com.pulumi.azurenative.devtestlab.inputs.HourDetailsArgs;
import com.pulumi.azurenative.devtestlab.inputs.NotificationSettingsArgs;
import com.pulumi.azurenative.devtestlab.inputs.WeekDetailsArgs;
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 virtualMachineSchedule = new VirtualMachineSchedule("virtualMachineSchedule", VirtualMachineScheduleArgs.builder()
            .dailyRecurrence(DayDetailsArgs.builder()
                .time("1900")
                .build())
            .hourlyRecurrence(HourDetailsArgs.builder()
                .minute(30)
                .build())
            .labName("{labName}")
            .location("{location}")
            .name("LabVmsShutdown")
            .notificationSettings(NotificationSettingsArgs.builder()
                .emailRecipient("{email}")
                .notificationLocale("EN")
                .status("Enabled")
                .timeInMinutes(30)
                .webhookUrl("{webhookUrl}")
                .build())
            .resourceGroupName("resourceGroupName")
            .status("Enabled")
            .tags(Map.of("tagName1", "tagValue1"))
            .targetResourceId("/subscriptions/{subscriptionId}/resourcegroups/resourceGroupName/providers/microsoft.devtestlab/labs/{labName}/virtualMachines/{vmName}")
            .taskType("LabVmsShutdownTask")
            .timeZoneId("Pacific Standard Time")
            .virtualMachineName("{vmName}")
            .weeklyRecurrence(WeekDetailsArgs.builder()
                .time("1700")
                .weekdays(                
                    "Friday",
                    "Saturday",
                    "Sunday")
                .build())
            .build());

    }
}
Copy
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";

const virtualMachineSchedule = new azure_native.devtestlab.VirtualMachineSchedule("virtualMachineSchedule", {
    dailyRecurrence: {
        time: "1900",
    },
    hourlyRecurrence: {
        minute: 30,
    },
    labName: "{labName}",
    location: "{location}",
    name: "LabVmsShutdown",
    notificationSettings: {
        emailRecipient: "{email}",
        notificationLocale: "EN",
        status: azure_native.devtestlab.EnableStatus.Enabled,
        timeInMinutes: 30,
        webhookUrl: "{webhookUrl}",
    },
    resourceGroupName: "resourceGroupName",
    status: azure_native.devtestlab.EnableStatus.Enabled,
    tags: {
        tagName1: "tagValue1",
    },
    targetResourceId: "/subscriptions/{subscriptionId}/resourcegroups/resourceGroupName/providers/microsoft.devtestlab/labs/{labName}/virtualMachines/{vmName}",
    taskType: "LabVmsShutdownTask",
    timeZoneId: "Pacific Standard Time",
    virtualMachineName: "{vmName}",
    weeklyRecurrence: {
        time: "1700",
        weekdays: [
            "Friday",
            "Saturday",
            "Sunday",
        ],
    },
});
Copy
import pulumi
import pulumi_azure_native as azure_native

virtual_machine_schedule = azure_native.devtestlab.VirtualMachineSchedule("virtualMachineSchedule",
    daily_recurrence={
        "time": "1900",
    },
    hourly_recurrence={
        "minute": 30,
    },
    lab_name="{labName}",
    location="{location}",
    name="LabVmsShutdown",
    notification_settings={
        "email_recipient": "{email}",
        "notification_locale": "EN",
        "status": azure_native.devtestlab.EnableStatus.ENABLED,
        "time_in_minutes": 30,
        "webhook_url": "{webhookUrl}",
    },
    resource_group_name="resourceGroupName",
    status=azure_native.devtestlab.EnableStatus.ENABLED,
    tags={
        "tagName1": "tagValue1",
    },
    target_resource_id="/subscriptions/{subscriptionId}/resourcegroups/resourceGroupName/providers/microsoft.devtestlab/labs/{labName}/virtualMachines/{vmName}",
    task_type="LabVmsShutdownTask",
    time_zone_id="Pacific Standard Time",
    virtual_machine_name="{vmName}",
    weekly_recurrence={
        "time": "1700",
        "weekdays": [
            "Friday",
            "Saturday",
            "Sunday",
        ],
    })
Copy
resources:
  virtualMachineSchedule:
    type: azure-native:devtestlab:VirtualMachineSchedule
    properties:
      dailyRecurrence:
        time: '1900'
      hourlyRecurrence:
        minute: 30
      labName: '{labName}'
      location: '{location}'
      name: LabVmsShutdown
      notificationSettings:
        emailRecipient: '{email}'
        notificationLocale: EN
        status: Enabled
        timeInMinutes: 30
        webhookUrl: '{webhookUrl}'
      resourceGroupName: resourceGroupName
      status: Enabled
      tags:
        tagName1: tagValue1
      targetResourceId: /subscriptions/{subscriptionId}/resourcegroups/resourceGroupName/providers/microsoft.devtestlab/labs/{labName}/virtualMachines/{vmName}
      taskType: LabVmsShutdownTask
      timeZoneId: Pacific Standard Time
      virtualMachineName: '{vmName}'
      weeklyRecurrence:
        time: '1700'
        weekdays:
          - Friday
          - Saturday
          - Sunday
Copy

Create VirtualMachineSchedule Resource

Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

Constructor syntax

new VirtualMachineSchedule(name: string, args: VirtualMachineScheduleArgs, opts?: CustomResourceOptions);
@overload
def VirtualMachineSchedule(resource_name: str,
                           args: VirtualMachineScheduleArgs,
                           opts: Optional[ResourceOptions] = None)

@overload
def VirtualMachineSchedule(resource_name: str,
                           opts: Optional[ResourceOptions] = None,
                           resource_group_name: Optional[str] = None,
                           virtual_machine_name: Optional[str] = None,
                           lab_name: Optional[str] = None,
                           location: Optional[str] = None,
                           name: Optional[str] = None,
                           notification_settings: Optional[NotificationSettingsArgs] = None,
                           daily_recurrence: Optional[DayDetailsArgs] = None,
                           status: Optional[Union[str, EnableStatus]] = None,
                           tags: Optional[Mapping[str, str]] = None,
                           target_resource_id: Optional[str] = None,
                           task_type: Optional[str] = None,
                           time_zone_id: Optional[str] = None,
                           hourly_recurrence: Optional[HourDetailsArgs] = None,
                           weekly_recurrence: Optional[WeekDetailsArgs] = None)
func NewVirtualMachineSchedule(ctx *Context, name string, args VirtualMachineScheduleArgs, opts ...ResourceOption) (*VirtualMachineSchedule, error)
public VirtualMachineSchedule(string name, VirtualMachineScheduleArgs args, CustomResourceOptions? opts = null)
public VirtualMachineSchedule(String name, VirtualMachineScheduleArgs args)
public VirtualMachineSchedule(String name, VirtualMachineScheduleArgs args, CustomResourceOptions options)
type: azure-native:devtestlab:VirtualMachineSchedule
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. VirtualMachineScheduleArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. VirtualMachineScheduleArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. VirtualMachineScheduleArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. VirtualMachineScheduleArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. VirtualMachineScheduleArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

Constructor example

The following reference example uses placeholder values for all input properties.

var virtualMachineScheduleResource = new AzureNative.DevTestLab.VirtualMachineSchedule("virtualMachineScheduleResource", new()
{
    ResourceGroupName = "string",
    VirtualMachineName = "string",
    LabName = "string",
    Location = "string",
    Name = "string",
    NotificationSettings = new AzureNative.DevTestLab.Inputs.NotificationSettingsArgs
    {
        EmailRecipient = "string",
        NotificationLocale = "string",
        Status = "string",
        TimeInMinutes = 0,
        WebhookUrl = "string",
    },
    DailyRecurrence = new AzureNative.DevTestLab.Inputs.DayDetailsArgs
    {
        Time = "string",
    },
    Status = "string",
    Tags = 
    {
        { "string", "string" },
    },
    TargetResourceId = "string",
    TaskType = "string",
    TimeZoneId = "string",
    HourlyRecurrence = new AzureNative.DevTestLab.Inputs.HourDetailsArgs
    {
        Minute = 0,
    },
    WeeklyRecurrence = new AzureNative.DevTestLab.Inputs.WeekDetailsArgs
    {
        Time = "string",
        Weekdays = new[]
        {
            "string",
        },
    },
});
Copy
example, err := devtestlab.NewVirtualMachineSchedule(ctx, "virtualMachineScheduleResource", &devtestlab.VirtualMachineScheduleArgs{
	ResourceGroupName:  pulumi.String("string"),
	VirtualMachineName: pulumi.String("string"),
	LabName:            pulumi.String("string"),
	Location:           pulumi.String("string"),
	Name:               pulumi.String("string"),
	NotificationSettings: &devtestlab.NotificationSettingsArgs{
		EmailRecipient:     pulumi.String("string"),
		NotificationLocale: pulumi.String("string"),
		Status:             pulumi.String("string"),
		TimeInMinutes:      pulumi.Int(0),
		WebhookUrl:         pulumi.String("string"),
	},
	DailyRecurrence: &devtestlab.DayDetailsArgs{
		Time: pulumi.String("string"),
	},
	Status: pulumi.String("string"),
	Tags: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	TargetResourceId: pulumi.String("string"),
	TaskType:         pulumi.String("string"),
	TimeZoneId:       pulumi.String("string"),
	HourlyRecurrence: &devtestlab.HourDetailsArgs{
		Minute: pulumi.Int(0),
	},
	WeeklyRecurrence: &devtestlab.WeekDetailsArgs{
		Time: pulumi.String("string"),
		Weekdays: pulumi.StringArray{
			pulumi.String("string"),
		},
	},
})
Copy
var virtualMachineScheduleResource = new VirtualMachineSchedule("virtualMachineScheduleResource", VirtualMachineScheduleArgs.builder()
    .resourceGroupName("string")
    .virtualMachineName("string")
    .labName("string")
    .location("string")
    .name("string")
    .notificationSettings(NotificationSettingsArgs.builder()
        .emailRecipient("string")
        .notificationLocale("string")
        .status("string")
        .timeInMinutes(0)
        .webhookUrl("string")
        .build())
    .dailyRecurrence(DayDetailsArgs.builder()
        .time("string")
        .build())
    .status("string")
    .tags(Map.of("string", "string"))
    .targetResourceId("string")
    .taskType("string")
    .timeZoneId("string")
    .hourlyRecurrence(HourDetailsArgs.builder()
        .minute(0)
        .build())
    .weeklyRecurrence(WeekDetailsArgs.builder()
        .time("string")
        .weekdays("string")
        .build())
    .build());
Copy
virtual_machine_schedule_resource = azure_native.devtestlab.VirtualMachineSchedule("virtualMachineScheduleResource",
    resource_group_name="string",
    virtual_machine_name="string",
    lab_name="string",
    location="string",
    name="string",
    notification_settings={
        "email_recipient": "string",
        "notification_locale": "string",
        "status": "string",
        "time_in_minutes": 0,
        "webhook_url": "string",
    },
    daily_recurrence={
        "time": "string",
    },
    status="string",
    tags={
        "string": "string",
    },
    target_resource_id="string",
    task_type="string",
    time_zone_id="string",
    hourly_recurrence={
        "minute": 0,
    },
    weekly_recurrence={
        "time": "string",
        "weekdays": ["string"],
    })
Copy
const virtualMachineScheduleResource = new azure_native.devtestlab.VirtualMachineSchedule("virtualMachineScheduleResource", {
    resourceGroupName: "string",
    virtualMachineName: "string",
    labName: "string",
    location: "string",
    name: "string",
    notificationSettings: {
        emailRecipient: "string",
        notificationLocale: "string",
        status: "string",
        timeInMinutes: 0,
        webhookUrl: "string",
    },
    dailyRecurrence: {
        time: "string",
    },
    status: "string",
    tags: {
        string: "string",
    },
    targetResourceId: "string",
    taskType: "string",
    timeZoneId: "string",
    hourlyRecurrence: {
        minute: 0,
    },
    weeklyRecurrence: {
        time: "string",
        weekdays: ["string"],
    },
});
Copy
type: azure-native:devtestlab:VirtualMachineSchedule
properties:
    dailyRecurrence:
        time: string
    hourlyRecurrence:
        minute: 0
    labName: string
    location: string
    name: string
    notificationSettings:
        emailRecipient: string
        notificationLocale: string
        status: string
        timeInMinutes: 0
        webhookUrl: string
    resourceGroupName: string
    status: string
    tags:
        string: string
    targetResourceId: string
    taskType: string
    timeZoneId: string
    virtualMachineName: string
    weeklyRecurrence:
        time: string
        weekdays:
            - string
Copy

VirtualMachineSchedule Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

The VirtualMachineSchedule resource accepts the following input properties:

LabName
This property is required.
Changes to this property will trigger replacement.
string
The name of the lab.
ResourceGroupName
This property is required.
Changes to this property will trigger replacement.
string
The name of the resource group.
VirtualMachineName
This property is required.
Changes to this property will trigger replacement.
string
The name of the virtual machine.
DailyRecurrence Pulumi.AzureNative.DevTestLab.Inputs.DayDetails
If the schedule will occur once each day of the week, specify the daily recurrence.
HourlyRecurrence Pulumi.AzureNative.DevTestLab.Inputs.HourDetails
If the schedule will occur multiple times a day, specify the hourly recurrence.
Location string
The location of the resource.
Name Changes to this property will trigger replacement. string
The name of the schedule.
NotificationSettings Pulumi.AzureNative.DevTestLab.Inputs.NotificationSettings
Notification settings.
Status string | Pulumi.AzureNative.DevTestLab.EnableStatus
The status of the schedule (i.e. Enabled, Disabled)
Tags Dictionary<string, string>
The tags of the resource.
TargetResourceId string
The resource ID to which the schedule belongs
TaskType string
The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart).
TimeZoneId string
The time zone ID (e.g. China Standard Time, Greenland Standard Time, Pacific Standard time, etc.). The possible values for this property can be found in IReadOnlyCollection<string> TimeZoneConverter.TZConvert.KnownWindowsTimeZoneIds (https://github.com/mattjohnsonpint/TimeZoneConverter/blob/main/README.md)
WeeklyRecurrence Pulumi.AzureNative.DevTestLab.Inputs.WeekDetails
If the schedule will occur only some days of the week, specify the weekly recurrence.
LabName
This property is required.
Changes to this property will trigger replacement.
string
The name of the lab.
ResourceGroupName
This property is required.
Changes to this property will trigger replacement.
string
The name of the resource group.
VirtualMachineName
This property is required.
Changes to this property will trigger replacement.
string
The name of the virtual machine.
DailyRecurrence DayDetailsArgs
If the schedule will occur once each day of the week, specify the daily recurrence.
HourlyRecurrence HourDetailsArgs
If the schedule will occur multiple times a day, specify the hourly recurrence.
Location string
The location of the resource.
Name Changes to this property will trigger replacement. string
The name of the schedule.
NotificationSettings NotificationSettingsArgs
Notification settings.
Status string | EnableStatus
The status of the schedule (i.e. Enabled, Disabled)
Tags map[string]string
The tags of the resource.
TargetResourceId string
The resource ID to which the schedule belongs
TaskType string
The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart).
TimeZoneId string
The time zone ID (e.g. China Standard Time, Greenland Standard Time, Pacific Standard time, etc.). The possible values for this property can be found in IReadOnlyCollection<string> TimeZoneConverter.TZConvert.KnownWindowsTimeZoneIds (https://github.com/mattjohnsonpint/TimeZoneConverter/blob/main/README.md)
WeeklyRecurrence WeekDetailsArgs
If the schedule will occur only some days of the week, specify the weekly recurrence.
labName
This property is required.
Changes to this property will trigger replacement.
String
The name of the lab.
resourceGroupName
This property is required.
Changes to this property will trigger replacement.
String
The name of the resource group.
virtualMachineName
This property is required.
Changes to this property will trigger replacement.
String
The name of the virtual machine.
dailyRecurrence DayDetails
If the schedule will occur once each day of the week, specify the daily recurrence.
hourlyRecurrence HourDetails
If the schedule will occur multiple times a day, specify the hourly recurrence.
location String
The location of the resource.
name Changes to this property will trigger replacement. String
The name of the schedule.
notificationSettings NotificationSettings
Notification settings.
status String | EnableStatus
The status of the schedule (i.e. Enabled, Disabled)
tags Map<String,String>
The tags of the resource.
targetResourceId String
The resource ID to which the schedule belongs
taskType String
The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart).
timeZoneId String
The time zone ID (e.g. China Standard Time, Greenland Standard Time, Pacific Standard time, etc.). The possible values for this property can be found in IReadOnlyCollection<string> TimeZoneConverter.TZConvert.KnownWindowsTimeZoneIds (https://github.com/mattjohnsonpint/TimeZoneConverter/blob/main/README.md)
weeklyRecurrence WeekDetails
If the schedule will occur only some days of the week, specify the weekly recurrence.
labName
This property is required.
Changes to this property will trigger replacement.
string
The name of the lab.
resourceGroupName
This property is required.
Changes to this property will trigger replacement.
string
The name of the resource group.
virtualMachineName
This property is required.
Changes to this property will trigger replacement.
string
The name of the virtual machine.
dailyRecurrence DayDetails
If the schedule will occur once each day of the week, specify the daily recurrence.
hourlyRecurrence HourDetails
If the schedule will occur multiple times a day, specify the hourly recurrence.
location string
The location of the resource.
name Changes to this property will trigger replacement. string
The name of the schedule.
notificationSettings NotificationSettings
Notification settings.
status string | EnableStatus
The status of the schedule (i.e. Enabled, Disabled)
tags {[key: string]: string}
The tags of the resource.
targetResourceId string
The resource ID to which the schedule belongs
taskType string
The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart).
timeZoneId string
The time zone ID (e.g. China Standard Time, Greenland Standard Time, Pacific Standard time, etc.). The possible values for this property can be found in IReadOnlyCollection<string> TimeZoneConverter.TZConvert.KnownWindowsTimeZoneIds (https://github.com/mattjohnsonpint/TimeZoneConverter/blob/main/README.md)
weeklyRecurrence WeekDetails
If the schedule will occur only some days of the week, specify the weekly recurrence.
lab_name
This property is required.
Changes to this property will trigger replacement.
str
The name of the lab.
resource_group_name
This property is required.
Changes to this property will trigger replacement.
str
The name of the resource group.
virtual_machine_name
This property is required.
Changes to this property will trigger replacement.
str
The name of the virtual machine.
daily_recurrence DayDetailsArgs
If the schedule will occur once each day of the week, specify the daily recurrence.
hourly_recurrence HourDetailsArgs
If the schedule will occur multiple times a day, specify the hourly recurrence.
location str
The location of the resource.
name Changes to this property will trigger replacement. str
The name of the schedule.
notification_settings NotificationSettingsArgs
Notification settings.
status str | EnableStatus
The status of the schedule (i.e. Enabled, Disabled)
tags Mapping[str, str]
The tags of the resource.
target_resource_id str
The resource ID to which the schedule belongs
task_type str
The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart).
time_zone_id str
The time zone ID (e.g. China Standard Time, Greenland Standard Time, Pacific Standard time, etc.). The possible values for this property can be found in IReadOnlyCollection<string> TimeZoneConverter.TZConvert.KnownWindowsTimeZoneIds (https://github.com/mattjohnsonpint/TimeZoneConverter/blob/main/README.md)
weekly_recurrence WeekDetailsArgs
If the schedule will occur only some days of the week, specify the weekly recurrence.
labName
This property is required.
Changes to this property will trigger replacement.
String
The name of the lab.
resourceGroupName
This property is required.
Changes to this property will trigger replacement.
String
The name of the resource group.
virtualMachineName
This property is required.
Changes to this property will trigger replacement.
String
The name of the virtual machine.
dailyRecurrence Property Map
If the schedule will occur once each day of the week, specify the daily recurrence.
hourlyRecurrence Property Map
If the schedule will occur multiple times a day, specify the hourly recurrence.
location String
The location of the resource.
name Changes to this property will trigger replacement. String
The name of the schedule.
notificationSettings Property Map
Notification settings.
status String | "Enabled" | "Disabled"
The status of the schedule (i.e. Enabled, Disabled)
tags Map<String>
The tags of the resource.
targetResourceId String
The resource ID to which the schedule belongs
taskType String
The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart).
timeZoneId String
The time zone ID (e.g. China Standard Time, Greenland Standard Time, Pacific Standard time, etc.). The possible values for this property can be found in IReadOnlyCollection<string> TimeZoneConverter.TZConvert.KnownWindowsTimeZoneIds (https://github.com/mattjohnsonpint/TimeZoneConverter/blob/main/README.md)
weeklyRecurrence Property Map
If the schedule will occur only some days of the week, specify the weekly recurrence.

Outputs

All input properties are implicitly available as output properties. Additionally, the VirtualMachineSchedule resource produces the following output properties:

AzureApiVersion string
The Azure API version of the resource.
CreatedDate string
The creation date of the schedule.
Id string
The provider-assigned unique ID for this managed resource.
ProvisioningState string
The provisioning status of the resource.
Type string
The type of the resource.
UniqueIdentifier string
The unique immutable identifier of a resource (Guid).
AzureApiVersion string
The Azure API version of the resource.
CreatedDate string
The creation date of the schedule.
Id string
The provider-assigned unique ID for this managed resource.
ProvisioningState string
The provisioning status of the resource.
Type string
The type of the resource.
UniqueIdentifier string
The unique immutable identifier of a resource (Guid).
azureApiVersion String
The Azure API version of the resource.
createdDate String
The creation date of the schedule.
id String
The provider-assigned unique ID for this managed resource.
provisioningState String
The provisioning status of the resource.
type String
The type of the resource.
uniqueIdentifier String
The unique immutable identifier of a resource (Guid).
azureApiVersion string
The Azure API version of the resource.
createdDate string
The creation date of the schedule.
id string
The provider-assigned unique ID for this managed resource.
provisioningState string
The provisioning status of the resource.
type string
The type of the resource.
uniqueIdentifier string
The unique immutable identifier of a resource (Guid).
azure_api_version str
The Azure API version of the resource.
created_date str
The creation date of the schedule.
id str
The provider-assigned unique ID for this managed resource.
provisioning_state str
The provisioning status of the resource.
type str
The type of the resource.
unique_identifier str
The unique immutable identifier of a resource (Guid).
azureApiVersion String
The Azure API version of the resource.
createdDate String
The creation date of the schedule.
id String
The provider-assigned unique ID for this managed resource.
provisioningState String
The provisioning status of the resource.
type String
The type of the resource.
uniqueIdentifier String
The unique immutable identifier of a resource (Guid).

Supporting Types

DayDetails
, DayDetailsArgs

Time string
The time of day the schedule will occur.
Time string
The time of day the schedule will occur.
time String
The time of day the schedule will occur.
time string
The time of day the schedule will occur.
time str
The time of day the schedule will occur.
time String
The time of day the schedule will occur.

DayDetailsResponse
, DayDetailsResponseArgs

Time string
The time of day the schedule will occur.
Time string
The time of day the schedule will occur.
time String
The time of day the schedule will occur.
time string
The time of day the schedule will occur.
time str
The time of day the schedule will occur.
time String
The time of day the schedule will occur.

EnableStatus
, EnableStatusArgs

Enabled
Enabled
Disabled
Disabled
EnableStatusEnabled
Enabled
EnableStatusDisabled
Disabled
Enabled
Enabled
Disabled
Disabled
Enabled
Enabled
Disabled
Disabled
ENABLED
Enabled
DISABLED
Disabled
"Enabled"
Enabled
"Disabled"
Disabled

HourDetails
, HourDetailsArgs

Minute int
Minutes of the hour the schedule will run.
Minute int
Minutes of the hour the schedule will run.
minute Integer
Minutes of the hour the schedule will run.
minute number
Minutes of the hour the schedule will run.
minute int
Minutes of the hour the schedule will run.
minute Number
Minutes of the hour the schedule will run.

HourDetailsResponse
, HourDetailsResponseArgs

Minute int
Minutes of the hour the schedule will run.
Minute int
Minutes of the hour the schedule will run.
minute Integer
Minutes of the hour the schedule will run.
minute number
Minutes of the hour the schedule will run.
minute int
Minutes of the hour the schedule will run.
minute Number
Minutes of the hour the schedule will run.

NotificationSettings
, NotificationSettingsArgs

EmailRecipient string
The email recipient to send notifications to (can be a list of semi-colon separated email addresses).
NotificationLocale string
The locale to use when sending a notification (fallback for unsupported languages is EN).
Status string | Pulumi.AzureNative.DevTestLab.EnableStatus
If notifications are enabled for this schedule (i.e. Enabled, Disabled).
TimeInMinutes int
Time in minutes before event at which notification will be sent.
WebhookUrl string
The webhook URL to which the notification will be sent.
EmailRecipient string
The email recipient to send notifications to (can be a list of semi-colon separated email addresses).
NotificationLocale string
The locale to use when sending a notification (fallback for unsupported languages is EN).
Status string | EnableStatus
If notifications are enabled for this schedule (i.e. Enabled, Disabled).
TimeInMinutes int
Time in minutes before event at which notification will be sent.
WebhookUrl string
The webhook URL to which the notification will be sent.
emailRecipient String
The email recipient to send notifications to (can be a list of semi-colon separated email addresses).
notificationLocale String
The locale to use when sending a notification (fallback for unsupported languages is EN).
status String | EnableStatus
If notifications are enabled for this schedule (i.e. Enabled, Disabled).
timeInMinutes Integer
Time in minutes before event at which notification will be sent.
webhookUrl String
The webhook URL to which the notification will be sent.
emailRecipient string
The email recipient to send notifications to (can be a list of semi-colon separated email addresses).
notificationLocale string
The locale to use when sending a notification (fallback for unsupported languages is EN).
status string | EnableStatus
If notifications are enabled for this schedule (i.e. Enabled, Disabled).
timeInMinutes number
Time in minutes before event at which notification will be sent.
webhookUrl string
The webhook URL to which the notification will be sent.
email_recipient str
The email recipient to send notifications to (can be a list of semi-colon separated email addresses).
notification_locale str
The locale to use when sending a notification (fallback for unsupported languages is EN).
status str | EnableStatus
If notifications are enabled for this schedule (i.e. Enabled, Disabled).
time_in_minutes int
Time in minutes before event at which notification will be sent.
webhook_url str
The webhook URL to which the notification will be sent.
emailRecipient String
The email recipient to send notifications to (can be a list of semi-colon separated email addresses).
notificationLocale String
The locale to use when sending a notification (fallback for unsupported languages is EN).
status String | "Enabled" | "Disabled"
If notifications are enabled for this schedule (i.e. Enabled, Disabled).
timeInMinutes Number
Time in minutes before event at which notification will be sent.
webhookUrl String
The webhook URL to which the notification will be sent.

NotificationSettingsResponse
, NotificationSettingsResponseArgs

EmailRecipient string
The email recipient to send notifications to (can be a list of semi-colon separated email addresses).
NotificationLocale string
The locale to use when sending a notification (fallback for unsupported languages is EN).
Status string
If notifications are enabled for this schedule (i.e. Enabled, Disabled).
TimeInMinutes int
Time in minutes before event at which notification will be sent.
WebhookUrl string
The webhook URL to which the notification will be sent.
EmailRecipient string
The email recipient to send notifications to (can be a list of semi-colon separated email addresses).
NotificationLocale string
The locale to use when sending a notification (fallback for unsupported languages is EN).
Status string
If notifications are enabled for this schedule (i.e. Enabled, Disabled).
TimeInMinutes int
Time in minutes before event at which notification will be sent.
WebhookUrl string
The webhook URL to which the notification will be sent.
emailRecipient String
The email recipient to send notifications to (can be a list of semi-colon separated email addresses).
notificationLocale String
The locale to use when sending a notification (fallback for unsupported languages is EN).
status String
If notifications are enabled for this schedule (i.e. Enabled, Disabled).
timeInMinutes Integer
Time in minutes before event at which notification will be sent.
webhookUrl String
The webhook URL to which the notification will be sent.
emailRecipient string
The email recipient to send notifications to (can be a list of semi-colon separated email addresses).
notificationLocale string
The locale to use when sending a notification (fallback for unsupported languages is EN).
status string
If notifications are enabled for this schedule (i.e. Enabled, Disabled).
timeInMinutes number
Time in minutes before event at which notification will be sent.
webhookUrl string
The webhook URL to which the notification will be sent.
email_recipient str
The email recipient to send notifications to (can be a list of semi-colon separated email addresses).
notification_locale str
The locale to use when sending a notification (fallback for unsupported languages is EN).
status str
If notifications are enabled for this schedule (i.e. Enabled, Disabled).
time_in_minutes int
Time in minutes before event at which notification will be sent.
webhook_url str
The webhook URL to which the notification will be sent.
emailRecipient String
The email recipient to send notifications to (can be a list of semi-colon separated email addresses).
notificationLocale String
The locale to use when sending a notification (fallback for unsupported languages is EN).
status String
If notifications are enabled for this schedule (i.e. Enabled, Disabled).
timeInMinutes Number
Time in minutes before event at which notification will be sent.
webhookUrl String
The webhook URL to which the notification will be sent.

WeekDetails
, WeekDetailsArgs

Time string
The time of the day the schedule will occur.
Weekdays List<string>
The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.).
Time string
The time of the day the schedule will occur.
Weekdays []string
The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.).
time String
The time of the day the schedule will occur.
weekdays List<String>
The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.).
time string
The time of the day the schedule will occur.
weekdays string[]
The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.).
time str
The time of the day the schedule will occur.
weekdays Sequence[str]
The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.).
time String
The time of the day the schedule will occur.
weekdays List<String>
The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.).

WeekDetailsResponse
, WeekDetailsResponseArgs

Time string
The time of the day the schedule will occur.
Weekdays List<string>
The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.).
Time string
The time of the day the schedule will occur.
Weekdays []string
The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.).
time String
The time of the day the schedule will occur.
weekdays List<String>
The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.).
time string
The time of the day the schedule will occur.
weekdays string[]
The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.).
time str
The time of the day the schedule will occur.
weekdays Sequence[str]
The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.).
time String
The time of the day the schedule will occur.
weekdays List<String>
The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.).

Import

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

$ pulumi import azure-native:devtestlab:VirtualMachineSchedule LabVmsShutdown /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{virtualMachineName}/schedules/{name} 
Copy

To learn more about importing existing cloud resources, see Importing resources.

Package Details

Repository
Azure Native pulumi/pulumi-azure-native
License
Apache-2.0
This is the latest version of Azure Native. Use the Azure Native v2 docs if using the v2 version of this package.
Azure Native v3.2.0 published on Monday, Apr 14, 2025 by Pulumi