1. Packages
  2. Azure Native
  3. API Docs
  4. automanage
  5. ConfigurationProfilePreference
This is the latest version of Azure Native. Use the Azure Native v1 docs if using the v1 version of this package.
Azure Native v2.20.0 published on Wednesday, Nov 29, 2023 by Pulumi

azure-native.automanage.ConfigurationProfilePreference

Explore with Pulumi AI

azure-native logo
This is the latest version of Azure Native. Use the Azure Native v1 docs if using the v1 version of this package.
Azure Native v2.20.0 published on Wednesday, Nov 29, 2023 by Pulumi

    Definition of the configuration profile preference. Azure REST API version: 2020-06-30-preview. Prior API version in Azure Native 1.x: 2020-06-30-preview.

    Example Usage

    Create or update configuration profile preference

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var configurationProfilePreference = new AzureNative.Automanage.ConfigurationProfilePreference("configurationProfilePreference", new()
        {
            ConfigurationProfilePreferenceName = "defaultProfilePreference",
            Location = "East US",
            Properties = new AzureNative.Automanage.Inputs.ConfigurationProfilePreferencePropertiesArgs
            {
                AntiMalware = new AzureNative.Automanage.Inputs.ConfigurationProfilePreferenceAntiMalwareArgs
                {
                    EnableRealTimeProtection = "True",
                },
                VmBackup = new AzureNative.Automanage.Inputs.ConfigurationProfilePreferenceVmBackupArgs
                {
                    TimeZone = "Pacific Standard Time",
                },
            },
            ResourceGroupName = "myResourceGroupName",
            Tags = 
            {
                { "Organization", "Administration" },
            },
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azure-native-sdk/automanage/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := automanage.NewConfigurationProfilePreference(ctx, "configurationProfilePreference", &automanage.ConfigurationProfilePreferenceArgs{
    			ConfigurationProfilePreferenceName: pulumi.String("defaultProfilePreference"),
    			Location:                           pulumi.String("East US"),
    			Properties: automanage.ConfigurationProfilePreferencePropertiesResponse{
    				AntiMalware: &automanage.ConfigurationProfilePreferenceAntiMalwareArgs{
    					EnableRealTimeProtection: pulumi.String("True"),
    				},
    				VmBackup: &automanage.ConfigurationProfilePreferenceVmBackupArgs{
    					TimeZone: pulumi.String("Pacific Standard Time"),
    				},
    			},
    			ResourceGroupName: pulumi.String("myResourceGroupName"),
    			Tags: pulumi.StringMap{
    				"Organization": pulumi.String("Administration"),
    			},
    		})
    		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.automanage.ConfigurationProfilePreference;
    import com.pulumi.azurenative.automanage.ConfigurationProfilePreferenceArgs;
    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 configurationProfilePreference = new ConfigurationProfilePreference("configurationProfilePreference", ConfigurationProfilePreferenceArgs.builder()        
                .configurationProfilePreferenceName("defaultProfilePreference")
                .location("East US")
                .properties(Map.ofEntries(
                    Map.entry("antiMalware", Map.of("enableRealTimeProtection", "True")),
                    Map.entry("vmBackup", Map.of("timeZone", "Pacific Standard Time"))
                ))
                .resourceGroupName("myResourceGroupName")
                .tags(Map.of("Organization", "Administration"))
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    configuration_profile_preference = azure_native.automanage.ConfigurationProfilePreference("configurationProfilePreference",
        configuration_profile_preference_name="defaultProfilePreference",
        location="East US",
        properties=azure_native.automanage.ConfigurationProfilePreferencePropertiesResponseArgs(
            anti_malware=azure_native.automanage.ConfigurationProfilePreferenceAntiMalwareArgs(
                enable_real_time_protection="True",
            ),
            vm_backup=azure_native.automanage.ConfigurationProfilePreferenceVmBackupArgs(
                time_zone="Pacific Standard Time",
            ),
        ),
        resource_group_name="myResourceGroupName",
        tags={
            "Organization": "Administration",
        })
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const configurationProfilePreference = new azure_native.automanage.ConfigurationProfilePreference("configurationProfilePreference", {
        configurationProfilePreferenceName: "defaultProfilePreference",
        location: "East US",
        properties: {
            antiMalware: {
                enableRealTimeProtection: "True",
            },
            vmBackup: {
                timeZone: "Pacific Standard Time",
            },
        },
        resourceGroupName: "myResourceGroupName",
        tags: {
            Organization: "Administration",
        },
    });
    
    resources:
      configurationProfilePreference:
        type: azure-native:automanage:ConfigurationProfilePreference
        properties:
          configurationProfilePreferenceName: defaultProfilePreference
          location: East US
          properties:
            antiMalware:
              enableRealTimeProtection: True
            vmBackup:
              timeZone: Pacific Standard Time
          resourceGroupName: myResourceGroupName
          tags:
            Organization: Administration
    

    Create ConfigurationProfilePreference Resource

    new ConfigurationProfilePreference(name: string, args: ConfigurationProfilePreferenceArgs, opts?: CustomResourceOptions);
    @overload
    def ConfigurationProfilePreference(resource_name: str,
                                       opts: Optional[ResourceOptions] = None,
                                       configuration_profile_preference_name: Optional[str] = None,
                                       location: Optional[str] = None,
                                       properties: Optional[ConfigurationProfilePreferencePropertiesArgs] = None,
                                       resource_group_name: Optional[str] = None,
                                       tags: Optional[Mapping[str, str]] = None)
    @overload
    def ConfigurationProfilePreference(resource_name: str,
                                       args: ConfigurationProfilePreferenceArgs,
                                       opts: Optional[ResourceOptions] = None)
    func NewConfigurationProfilePreference(ctx *Context, name string, args ConfigurationProfilePreferenceArgs, opts ...ResourceOption) (*ConfigurationProfilePreference, error)
    public ConfigurationProfilePreference(string name, ConfigurationProfilePreferenceArgs args, CustomResourceOptions? opts = null)
    public ConfigurationProfilePreference(String name, ConfigurationProfilePreferenceArgs args)
    public ConfigurationProfilePreference(String name, ConfigurationProfilePreferenceArgs args, CustomResourceOptions options)
    
    type: azure-native:automanage:ConfigurationProfilePreference
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    name string
    The unique name of the resource.
    args ConfigurationProfilePreferenceArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args ConfigurationProfilePreferenceArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args ConfigurationProfilePreferenceArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ConfigurationProfilePreferenceArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ConfigurationProfilePreferenceArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    ConfigurationProfilePreference Resource Properties

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

    Inputs

    The ConfigurationProfilePreference resource accepts the following input properties:

    ResourceGroupName string

    The name of the resource group. The name is case insensitive.

    ConfigurationProfilePreferenceName string

    Name of the configuration profile preference.

    Location string

    The geo-location where the resource lives

    Properties Pulumi.AzureNative.Automanage.Inputs.ConfigurationProfilePreferenceProperties

    Properties of the configuration profile preference.

    Tags Dictionary<string, string>

    Resource tags.

    ResourceGroupName string

    The name of the resource group. The name is case insensitive.

    ConfigurationProfilePreferenceName string

    Name of the configuration profile preference.

    Location string

    The geo-location where the resource lives

    Properties ConfigurationProfilePreferencePropertiesArgs

    Properties of the configuration profile preference.

    Tags map[string]string

    Resource tags.

    resourceGroupName String

    The name of the resource group. The name is case insensitive.

    configurationProfilePreferenceName String

    Name of the configuration profile preference.

    location String

    The geo-location where the resource lives

    properties ConfigurationProfilePreferenceProperties

    Properties of the configuration profile preference.

    tags Map<String,String>

    Resource tags.

    resourceGroupName string

    The name of the resource group. The name is case insensitive.

    configurationProfilePreferenceName string

    Name of the configuration profile preference.

    location string

    The geo-location where the resource lives

    properties ConfigurationProfilePreferenceProperties

    Properties of the configuration profile preference.

    tags {[key: string]: string}

    Resource tags.

    resource_group_name str

    The name of the resource group. The name is case insensitive.

    configuration_profile_preference_name str

    Name of the configuration profile preference.

    location str

    The geo-location where the resource lives

    properties ConfigurationProfilePreferencePropertiesArgs

    Properties of the configuration profile preference.

    tags Mapping[str, str]

    Resource tags.

    resourceGroupName String

    The name of the resource group. The name is case insensitive.

    configurationProfilePreferenceName String

    Name of the configuration profile preference.

    location String

    The geo-location where the resource lives

    properties Property Map

    Properties of the configuration profile preference.

    tags Map<String>

    Resource tags.

    Outputs

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

    Id string

    The provider-assigned unique ID for this managed resource.

    Name string

    The name of the resource

    Type string

    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

    Id string

    The provider-assigned unique ID for this managed resource.

    Name string

    The name of the resource

    Type string

    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

    id String

    The provider-assigned unique ID for this managed resource.

    name String

    The name of the resource

    type String

    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

    id string

    The provider-assigned unique ID for this managed resource.

    name string

    The name of the resource

    type string

    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

    id str

    The provider-assigned unique ID for this managed resource.

    name str

    The name of the resource

    type str

    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

    id String

    The provider-assigned unique ID for this managed resource.

    name String

    The name of the resource

    type String

    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

    Supporting Types

    ConfigurationProfilePreferenceAntiMalware, ConfigurationProfilePreferenceAntiMalwareArgs

    EnableRealTimeProtection string | Pulumi.AzureNative.Automanage.EnableRealTimeProtection

    Enables or disables Real Time Protection

    Exclusions object

    Extensions, Paths and Processes that must be excluded from scan

    RunScheduledScan string | Pulumi.AzureNative.Automanage.RunScheduledScan

    Enables or disables a periodic scan for antimalware

    ScanDay string

    Schedule scan settings day

    ScanTimeInMinutes string

    Schedule scan settings time

    ScanType string | Pulumi.AzureNative.Automanage.ScanType

    Type of scheduled scan

    EnableRealTimeProtection string | EnableRealTimeProtection

    Enables or disables Real Time Protection

    Exclusions interface{}

    Extensions, Paths and Processes that must be excluded from scan

    RunScheduledScan string | RunScheduledScan

    Enables or disables a periodic scan for antimalware

    ScanDay string

    Schedule scan settings day

    ScanTimeInMinutes string

    Schedule scan settings time

    ScanType string | ScanType

    Type of scheduled scan

    enableRealTimeProtection String | EnableRealTimeProtection

    Enables or disables Real Time Protection

    exclusions Object

    Extensions, Paths and Processes that must be excluded from scan

    runScheduledScan String | RunScheduledScan

    Enables or disables a periodic scan for antimalware

    scanDay String

    Schedule scan settings day

    scanTimeInMinutes String

    Schedule scan settings time

    scanType String | ScanType

    Type of scheduled scan

    enableRealTimeProtection string | EnableRealTimeProtection

    Enables or disables Real Time Protection

    exclusions any

    Extensions, Paths and Processes that must be excluded from scan

    runScheduledScan string | RunScheduledScan

    Enables or disables a periodic scan for antimalware

    scanDay string

    Schedule scan settings day

    scanTimeInMinutes string

    Schedule scan settings time

    scanType string | ScanType

    Type of scheduled scan

    enable_real_time_protection str | EnableRealTimeProtection

    Enables or disables Real Time Protection

    exclusions Any

    Extensions, Paths and Processes that must be excluded from scan

    run_scheduled_scan str | RunScheduledScan

    Enables or disables a periodic scan for antimalware

    scan_day str

    Schedule scan settings day

    scan_time_in_minutes str

    Schedule scan settings time

    scan_type str | ScanType

    Type of scheduled scan

    enableRealTimeProtection String | "True" | "False"

    Enables or disables Real Time Protection

    exclusions Any

    Extensions, Paths and Processes that must be excluded from scan

    runScheduledScan String | "True" | "False"

    Enables or disables a periodic scan for antimalware

    scanDay String

    Schedule scan settings day

    scanTimeInMinutes String

    Schedule scan settings time

    scanType String | "Quick" | "Full"

    Type of scheduled scan

    ConfigurationProfilePreferenceAntiMalwareResponse, ConfigurationProfilePreferenceAntiMalwareResponseArgs

    EnableRealTimeProtection string

    Enables or disables Real Time Protection

    Exclusions object

    Extensions, Paths and Processes that must be excluded from scan

    RunScheduledScan string

    Enables or disables a periodic scan for antimalware

    ScanDay string

    Schedule scan settings day

    ScanTimeInMinutes string

    Schedule scan settings time

    ScanType string

    Type of scheduled scan

    EnableRealTimeProtection string

    Enables or disables Real Time Protection

    Exclusions interface{}

    Extensions, Paths and Processes that must be excluded from scan

    RunScheduledScan string

    Enables or disables a periodic scan for antimalware

    ScanDay string

    Schedule scan settings day

    ScanTimeInMinutes string

    Schedule scan settings time

    ScanType string

    Type of scheduled scan

    enableRealTimeProtection String

    Enables or disables Real Time Protection

    exclusions Object

    Extensions, Paths and Processes that must be excluded from scan

    runScheduledScan String

    Enables or disables a periodic scan for antimalware

    scanDay String

    Schedule scan settings day

    scanTimeInMinutes String

    Schedule scan settings time

    scanType String

    Type of scheduled scan

    enableRealTimeProtection string

    Enables or disables Real Time Protection

    exclusions any

    Extensions, Paths and Processes that must be excluded from scan

    runScheduledScan string

    Enables or disables a periodic scan for antimalware

    scanDay string

    Schedule scan settings day

    scanTimeInMinutes string

    Schedule scan settings time

    scanType string

    Type of scheduled scan

    enable_real_time_protection str

    Enables or disables Real Time Protection

    exclusions Any

    Extensions, Paths and Processes that must be excluded from scan

    run_scheduled_scan str

    Enables or disables a periodic scan for antimalware

    scan_day str

    Schedule scan settings day

    scan_time_in_minutes str

    Schedule scan settings time

    scan_type str

    Type of scheduled scan

    enableRealTimeProtection String

    Enables or disables Real Time Protection

    exclusions Any

    Extensions, Paths and Processes that must be excluded from scan

    runScheduledScan String

    Enables or disables a periodic scan for antimalware

    scanDay String

    Schedule scan settings day

    scanTimeInMinutes String

    Schedule scan settings time

    scanType String

    Type of scheduled scan

    ConfigurationProfilePreferenceProperties, ConfigurationProfilePreferencePropertiesArgs

    AntiMalware ConfigurationProfilePreferenceAntiMalware

    The custom preferences for Azure Antimalware.

    VmBackup ConfigurationProfilePreferenceVmBackup

    The custom preferences for Azure VM Backup.

    antiMalware ConfigurationProfilePreferenceAntiMalware

    The custom preferences for Azure Antimalware.

    vmBackup ConfigurationProfilePreferenceVmBackup

    The custom preferences for Azure VM Backup.

    antiMalware ConfigurationProfilePreferenceAntiMalware

    The custom preferences for Azure Antimalware.

    vmBackup ConfigurationProfilePreferenceVmBackup

    The custom preferences for Azure VM Backup.

    anti_malware ConfigurationProfilePreferenceAntiMalware

    The custom preferences for Azure Antimalware.

    vm_backup ConfigurationProfilePreferenceVmBackup

    The custom preferences for Azure VM Backup.

    antiMalware Property Map

    The custom preferences for Azure Antimalware.

    vmBackup Property Map

    The custom preferences for Azure VM Backup.

    ConfigurationProfilePreferencePropertiesResponse, ConfigurationProfilePreferencePropertiesResponseArgs

    AntiMalware ConfigurationProfilePreferenceAntiMalwareResponse

    The custom preferences for Azure Antimalware.

    VmBackup ConfigurationProfilePreferenceVmBackupResponse

    The custom preferences for Azure VM Backup.

    antiMalware ConfigurationProfilePreferenceAntiMalwareResponse

    The custom preferences for Azure Antimalware.

    vmBackup ConfigurationProfilePreferenceVmBackupResponse

    The custom preferences for Azure VM Backup.

    antiMalware ConfigurationProfilePreferenceAntiMalwareResponse

    The custom preferences for Azure Antimalware.

    vmBackup ConfigurationProfilePreferenceVmBackupResponse

    The custom preferences for Azure VM Backup.

    anti_malware ConfigurationProfilePreferenceAntiMalwareResponse

    The custom preferences for Azure Antimalware.

    vm_backup ConfigurationProfilePreferenceVmBackupResponse

    The custom preferences for Azure VM Backup.

    antiMalware Property Map

    The custom preferences for Azure Antimalware.

    vmBackup Property Map

    The custom preferences for Azure VM Backup.

    ConfigurationProfilePreferenceVmBackup, ConfigurationProfilePreferenceVmBackupArgs

    InstantRpRetentionRangeInDays int

    Instant RP retention policy range in days

    RetentionPolicy string

    Retention policy with the details on backup copy retention ranges.

    SchedulePolicy string

    Backup schedule specified as part of backup policy.

    TimeZone string

    TimeZone optional input as string. For example: Pacific Standard Time

    InstantRpRetentionRangeInDays int

    Instant RP retention policy range in days

    RetentionPolicy string

    Retention policy with the details on backup copy retention ranges.

    SchedulePolicy string

    Backup schedule specified as part of backup policy.

    TimeZone string

    TimeZone optional input as string. For example: Pacific Standard Time

    instantRpRetentionRangeInDays Integer

    Instant RP retention policy range in days

    retentionPolicy String

    Retention policy with the details on backup copy retention ranges.

    schedulePolicy String

    Backup schedule specified as part of backup policy.

    timeZone String

    TimeZone optional input as string. For example: Pacific Standard Time

    instantRpRetentionRangeInDays number

    Instant RP retention policy range in days

    retentionPolicy string

    Retention policy with the details on backup copy retention ranges.

    schedulePolicy string

    Backup schedule specified as part of backup policy.

    timeZone string

    TimeZone optional input as string. For example: Pacific Standard Time

    instant_rp_retention_range_in_days int

    Instant RP retention policy range in days

    retention_policy str

    Retention policy with the details on backup copy retention ranges.

    schedule_policy str

    Backup schedule specified as part of backup policy.

    time_zone str

    TimeZone optional input as string. For example: Pacific Standard Time

    instantRpRetentionRangeInDays Number

    Instant RP retention policy range in days

    retentionPolicy String

    Retention policy with the details on backup copy retention ranges.

    schedulePolicy String

    Backup schedule specified as part of backup policy.

    timeZone String

    TimeZone optional input as string. For example: Pacific Standard Time

    ConfigurationProfilePreferenceVmBackupResponse, ConfigurationProfilePreferenceVmBackupResponseArgs

    InstantRpRetentionRangeInDays int

    Instant RP retention policy range in days

    RetentionPolicy string

    Retention policy with the details on backup copy retention ranges.

    SchedulePolicy string

    Backup schedule specified as part of backup policy.

    TimeZone string

    TimeZone optional input as string. For example: Pacific Standard Time

    InstantRpRetentionRangeInDays int

    Instant RP retention policy range in days

    RetentionPolicy string

    Retention policy with the details on backup copy retention ranges.

    SchedulePolicy string

    Backup schedule specified as part of backup policy.

    TimeZone string

    TimeZone optional input as string. For example: Pacific Standard Time

    instantRpRetentionRangeInDays Integer

    Instant RP retention policy range in days

    retentionPolicy String

    Retention policy with the details on backup copy retention ranges.

    schedulePolicy String

    Backup schedule specified as part of backup policy.

    timeZone String

    TimeZone optional input as string. For example: Pacific Standard Time

    instantRpRetentionRangeInDays number

    Instant RP retention policy range in days

    retentionPolicy string

    Retention policy with the details on backup copy retention ranges.

    schedulePolicy string

    Backup schedule specified as part of backup policy.

    timeZone string

    TimeZone optional input as string. For example: Pacific Standard Time

    instant_rp_retention_range_in_days int

    Instant RP retention policy range in days

    retention_policy str

    Retention policy with the details on backup copy retention ranges.

    schedule_policy str

    Backup schedule specified as part of backup policy.

    time_zone str

    TimeZone optional input as string. For example: Pacific Standard Time

    instantRpRetentionRangeInDays Number

    Instant RP retention policy range in days

    retentionPolicy String

    Retention policy with the details on backup copy retention ranges.

    schedulePolicy String

    Backup schedule specified as part of backup policy.

    timeZone String

    TimeZone optional input as string. For example: Pacific Standard Time

    EnableRealTimeProtection, EnableRealTimeProtectionArgs

    True
    True
    False
    False
    EnableRealTimeProtectionTrue
    True
    EnableRealTimeProtectionFalse
    False
    True
    True
    False
    False
    True
    True
    False
    False
    TRUE
    True
    FALSE
    False
    "True"
    True
    "False"
    False

    RunScheduledScan, RunScheduledScanArgs

    True
    True
    False
    False
    RunScheduledScanTrue
    True
    RunScheduledScanFalse
    False
    True
    True
    False
    False
    True
    True
    False
    False
    TRUE
    True
    FALSE
    False
    "True"
    True
    "False"
    False

    ScanType, ScanTypeArgs

    Quick
    Quick
    Full
    Full
    ScanTypeQuick
    Quick
    ScanTypeFull
    Full
    Quick
    Quick
    Full
    Full
    Quick
    Quick
    Full
    Full
    QUICK
    Quick
    FULL
    Full
    "Quick"
    Quick
    "Full"
    Full

    Import

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

    $ pulumi import azure-native:automanage:ConfigurationProfilePreference defaultProfilePreference /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Automanage/configurationProfilePreferences/{configurationProfilePreferenceName} 
    

    Package Details

    Repository
    Azure Native pulumi/pulumi-azure-native
    License
    Apache-2.0
    azure-native logo
    This is the latest version of Azure Native. Use the Azure Native v1 docs if using the v1 version of this package.
    Azure Native v2.20.0 published on Wednesday, Nov 29, 2023 by Pulumi