github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/ssm/parameter.go (about) 1 // Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. 2 // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** 3 4 package ssm 5 6 import ( 7 "context" 8 "reflect" 9 10 "errors" 11 "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal" 12 "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 13 ) 14 15 // Provides an SSM Parameter resource. 16 // 17 // > **Note:** `overwrite` also makes it possible to overwrite an existing SSM Parameter that's not created by the provider before. This argument has been deprecated and will be removed in v6.0.0 of the provider. For more information on how this affects the behavior of this resource, see this issue comment. 18 // 19 // ## Example Usage 20 // 21 // ### Basic example 22 // 23 // <!--Start PulumiCodeChooser --> 24 // ```go 25 // package main 26 // 27 // import ( 28 // 29 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ssm" 30 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 31 // 32 // ) 33 // 34 // func main() { 35 // pulumi.Run(func(ctx *pulumi.Context) error { 36 // _, err := ssm.NewParameter(ctx, "foo", &ssm.ParameterArgs{ 37 // Name: pulumi.String("foo"), 38 // Type: pulumi.String(ssm.ParameterTypeString), 39 // Value: pulumi.String("bar"), 40 // }) 41 // if err != nil { 42 // return err 43 // } 44 // return nil 45 // }) 46 // } 47 // 48 // ``` 49 // <!--End PulumiCodeChooser --> 50 // 51 // ### Encrypted string using default SSM KMS key 52 // 53 // <!--Start PulumiCodeChooser --> 54 // ```go 55 // package main 56 // 57 // import ( 58 // 59 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/rds" 60 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ssm" 61 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 62 // 63 // ) 64 // 65 // func main() { 66 // pulumi.Run(func(ctx *pulumi.Context) error { 67 // _, err := rds.NewInstance(ctx, "default", &rds.InstanceArgs{ 68 // AllocatedStorage: pulumi.Int(10), 69 // StorageType: pulumi.String(rds.StorageTypeGP2), 70 // Engine: pulumi.String("mysql"), 71 // EngineVersion: pulumi.String("5.7.16"), 72 // InstanceClass: pulumi.String(rds.InstanceType_T2_Micro), 73 // DbName: pulumi.String("mydb"), 74 // Username: pulumi.String("foo"), 75 // Password: pulumi.Any(databaseMasterPassword), 76 // DbSubnetGroupName: pulumi.String("my_database_subnet_group"), 77 // ParameterGroupName: pulumi.String("default.mysql5.7"), 78 // }) 79 // if err != nil { 80 // return err 81 // } 82 // _, err = ssm.NewParameter(ctx, "secret", &ssm.ParameterArgs{ 83 // Name: pulumi.String("/production/database/password/master"), 84 // Description: pulumi.String("The parameter description"), 85 // Type: pulumi.String(ssm.ParameterTypeSecureString), 86 // Value: pulumi.Any(databaseMasterPassword), 87 // Tags: pulumi.StringMap{ 88 // "environment": pulumi.String("production"), 89 // }, 90 // }) 91 // if err != nil { 92 // return err 93 // } 94 // return nil 95 // }) 96 // } 97 // 98 // ``` 99 // <!--End PulumiCodeChooser --> 100 // 101 // ## Import 102 // 103 // Using `pulumi import`, import SSM Parameters using the parameter store `name`. For example: 104 // 105 // ```sh 106 // $ pulumi import aws:ssm/parameter:Parameter my_param /my_path/my_paramname 107 // ``` 108 type Parameter struct { 109 pulumi.CustomResourceState 110 111 // Regular expression used to validate the parameter value. 112 AllowedPattern pulumi.StringPtrOutput `pulumi:"allowedPattern"` 113 // ARN of the parameter. 114 Arn pulumi.StringOutput `pulumi:"arn"` 115 // Data type of the parameter. Valid values: `text`, `aws:ssm:integration` and `aws:ec2:image` for AMI format, see the [Native parameter support for Amazon Machine Image IDs](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-ec2-aliases.html). 116 DataType pulumi.StringOutput `pulumi:"dataType"` 117 // Description of the parameter. 118 Description pulumi.StringPtrOutput `pulumi:"description"` 119 // Value of the parameter. **Use caution:** This value is _never_ marked as sensitive in the pulumi preview output. This argument is not valid with a `type` of `SecureString`. 120 InsecureValue pulumi.StringOutput `pulumi:"insecureValue"` 121 // KMS key ID or ARN for encrypting a SecureString. 122 KeyId pulumi.StringOutput `pulumi:"keyId"` 123 // Name of the parameter. If the name contains a path (e.g., any forward slashes (`/`)), it must be fully qualified with a leading forward slash (`/`). For additional requirements and constraints, see the [AWS SSM User Guide](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-parameter-name-constraints.html). 124 Name pulumi.StringOutput `pulumi:"name"` 125 // Overwrite an existing parameter. If not specified, defaults to `false` if the resource has not been created by Pulumi to avoid overwrite of existing resource, and will default to `true` otherwise (Pulumi lifecycle rules should then be used to manage the update behavior). 126 // 127 // Deprecated: this attribute has been deprecated 128 Overwrite pulumi.BoolPtrOutput `pulumi:"overwrite"` 129 // Map of tags to assign to the object. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 130 Tags pulumi.StringMapOutput `pulumi:"tags"` 131 // Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 132 // 133 // Deprecated: Please use `tags` instead. 134 TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"` 135 // Parameter tier to assign to the parameter. If not specified, will use the default parameter tier for the region. Valid tiers are `Standard`, `Advanced`, and `Intelligent-Tiering`. Downgrading an `Advanced` tier parameter to `Standard` will recreate the resource. For more information on parameter tiers, see the [AWS SSM Parameter tier comparison and guide](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-advanced-parameters.html). 136 Tier pulumi.StringPtrOutput `pulumi:"tier"` 137 // Type of the parameter. Valid types are `String`, `StringList` and `SecureString`. 138 // 139 // The following arguments are optional: 140 Type pulumi.StringOutput `pulumi:"type"` 141 // Value of the parameter. This value is always marked as sensitive in the pulumi preview output, regardless of `type`. 142 // 143 // > **NOTE:** `aws:ssm:integration` dataType parameters must be of the type `SecureString` and the name must start with the prefix `/d9d01087-4a3f-49e0-b0b4-d568d7826553/ssm/integrations/webhook/`. See [here](https://docs.aws.amazon.com/systems-manager/latest/userguide/creating-integrations.html) for information on the usage of `aws:ssm:integration` parameters. 144 Value pulumi.StringOutput `pulumi:"value"` 145 // Version of the parameter. 146 Version pulumi.IntOutput `pulumi:"version"` 147 } 148 149 // NewParameter registers a new resource with the given unique name, arguments, and options. 150 func NewParameter(ctx *pulumi.Context, 151 name string, args *ParameterArgs, opts ...pulumi.ResourceOption) (*Parameter, error) { 152 if args == nil { 153 return nil, errors.New("missing one or more required arguments") 154 } 155 156 if args.Type == nil { 157 return nil, errors.New("invalid value for required argument 'Type'") 158 } 159 if args.Value != nil { 160 args.Value = pulumi.ToSecret(args.Value).(pulumi.StringPtrInput) 161 } 162 secrets := pulumi.AdditionalSecretOutputs([]string{ 163 "value", 164 }) 165 opts = append(opts, secrets) 166 opts = internal.PkgResourceDefaultOpts(opts) 167 var resource Parameter 168 err := ctx.RegisterResource("aws:ssm/parameter:Parameter", name, args, &resource, opts...) 169 if err != nil { 170 return nil, err 171 } 172 return &resource, nil 173 } 174 175 // GetParameter gets an existing Parameter resource's state with the given name, ID, and optional 176 // state properties that are used to uniquely qualify the lookup (nil if not required). 177 func GetParameter(ctx *pulumi.Context, 178 name string, id pulumi.IDInput, state *ParameterState, opts ...pulumi.ResourceOption) (*Parameter, error) { 179 var resource Parameter 180 err := ctx.ReadResource("aws:ssm/parameter:Parameter", name, id, state, &resource, opts...) 181 if err != nil { 182 return nil, err 183 } 184 return &resource, nil 185 } 186 187 // Input properties used for looking up and filtering Parameter resources. 188 type parameterState struct { 189 // Regular expression used to validate the parameter value. 190 AllowedPattern *string `pulumi:"allowedPattern"` 191 // ARN of the parameter. 192 Arn *string `pulumi:"arn"` 193 // Data type of the parameter. Valid values: `text`, `aws:ssm:integration` and `aws:ec2:image` for AMI format, see the [Native parameter support for Amazon Machine Image IDs](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-ec2-aliases.html). 194 DataType *string `pulumi:"dataType"` 195 // Description of the parameter. 196 Description *string `pulumi:"description"` 197 // Value of the parameter. **Use caution:** This value is _never_ marked as sensitive in the pulumi preview output. This argument is not valid with a `type` of `SecureString`. 198 InsecureValue *string `pulumi:"insecureValue"` 199 // KMS key ID or ARN for encrypting a SecureString. 200 KeyId *string `pulumi:"keyId"` 201 // Name of the parameter. If the name contains a path (e.g., any forward slashes (`/`)), it must be fully qualified with a leading forward slash (`/`). For additional requirements and constraints, see the [AWS SSM User Guide](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-parameter-name-constraints.html). 202 Name *string `pulumi:"name"` 203 // Overwrite an existing parameter. If not specified, defaults to `false` if the resource has not been created by Pulumi to avoid overwrite of existing resource, and will default to `true` otherwise (Pulumi lifecycle rules should then be used to manage the update behavior). 204 // 205 // Deprecated: this attribute has been deprecated 206 Overwrite *bool `pulumi:"overwrite"` 207 // Map of tags to assign to the object. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 208 Tags map[string]string `pulumi:"tags"` 209 // Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 210 // 211 // Deprecated: Please use `tags` instead. 212 TagsAll map[string]string `pulumi:"tagsAll"` 213 // Parameter tier to assign to the parameter. If not specified, will use the default parameter tier for the region. Valid tiers are `Standard`, `Advanced`, and `Intelligent-Tiering`. Downgrading an `Advanced` tier parameter to `Standard` will recreate the resource. For more information on parameter tiers, see the [AWS SSM Parameter tier comparison and guide](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-advanced-parameters.html). 214 Tier *string `pulumi:"tier"` 215 // Type of the parameter. Valid types are `String`, `StringList` and `SecureString`. 216 // 217 // The following arguments are optional: 218 Type *string `pulumi:"type"` 219 // Value of the parameter. This value is always marked as sensitive in the pulumi preview output, regardless of `type`. 220 // 221 // > **NOTE:** `aws:ssm:integration` dataType parameters must be of the type `SecureString` and the name must start with the prefix `/d9d01087-4a3f-49e0-b0b4-d568d7826553/ssm/integrations/webhook/`. See [here](https://docs.aws.amazon.com/systems-manager/latest/userguide/creating-integrations.html) for information on the usage of `aws:ssm:integration` parameters. 222 Value *string `pulumi:"value"` 223 // Version of the parameter. 224 Version *int `pulumi:"version"` 225 } 226 227 type ParameterState struct { 228 // Regular expression used to validate the parameter value. 229 AllowedPattern pulumi.StringPtrInput 230 // ARN of the parameter. 231 Arn pulumi.StringPtrInput 232 // Data type of the parameter. Valid values: `text`, `aws:ssm:integration` and `aws:ec2:image` for AMI format, see the [Native parameter support for Amazon Machine Image IDs](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-ec2-aliases.html). 233 DataType pulumi.StringPtrInput 234 // Description of the parameter. 235 Description pulumi.StringPtrInput 236 // Value of the parameter. **Use caution:** This value is _never_ marked as sensitive in the pulumi preview output. This argument is not valid with a `type` of `SecureString`. 237 InsecureValue pulumi.StringPtrInput 238 // KMS key ID or ARN for encrypting a SecureString. 239 KeyId pulumi.StringPtrInput 240 // Name of the parameter. If the name contains a path (e.g., any forward slashes (`/`)), it must be fully qualified with a leading forward slash (`/`). For additional requirements and constraints, see the [AWS SSM User Guide](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-parameter-name-constraints.html). 241 Name pulumi.StringPtrInput 242 // Overwrite an existing parameter. If not specified, defaults to `false` if the resource has not been created by Pulumi to avoid overwrite of existing resource, and will default to `true` otherwise (Pulumi lifecycle rules should then be used to manage the update behavior). 243 // 244 // Deprecated: this attribute has been deprecated 245 Overwrite pulumi.BoolPtrInput 246 // Map of tags to assign to the object. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 247 Tags pulumi.StringMapInput 248 // Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 249 // 250 // Deprecated: Please use `tags` instead. 251 TagsAll pulumi.StringMapInput 252 // Parameter tier to assign to the parameter. If not specified, will use the default parameter tier for the region. Valid tiers are `Standard`, `Advanced`, and `Intelligent-Tiering`. Downgrading an `Advanced` tier parameter to `Standard` will recreate the resource. For more information on parameter tiers, see the [AWS SSM Parameter tier comparison and guide](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-advanced-parameters.html). 253 Tier pulumi.StringPtrInput 254 // Type of the parameter. Valid types are `String`, `StringList` and `SecureString`. 255 // 256 // The following arguments are optional: 257 Type pulumi.StringPtrInput 258 // Value of the parameter. This value is always marked as sensitive in the pulumi preview output, regardless of `type`. 259 // 260 // > **NOTE:** `aws:ssm:integration` dataType parameters must be of the type `SecureString` and the name must start with the prefix `/d9d01087-4a3f-49e0-b0b4-d568d7826553/ssm/integrations/webhook/`. See [here](https://docs.aws.amazon.com/systems-manager/latest/userguide/creating-integrations.html) for information on the usage of `aws:ssm:integration` parameters. 261 Value pulumi.StringPtrInput 262 // Version of the parameter. 263 Version pulumi.IntPtrInput 264 } 265 266 func (ParameterState) ElementType() reflect.Type { 267 return reflect.TypeOf((*parameterState)(nil)).Elem() 268 } 269 270 type parameterArgs struct { 271 // Regular expression used to validate the parameter value. 272 AllowedPattern *string `pulumi:"allowedPattern"` 273 // ARN of the parameter. 274 Arn *string `pulumi:"arn"` 275 // Data type of the parameter. Valid values: `text`, `aws:ssm:integration` and `aws:ec2:image` for AMI format, see the [Native parameter support for Amazon Machine Image IDs](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-ec2-aliases.html). 276 DataType *string `pulumi:"dataType"` 277 // Description of the parameter. 278 Description *string `pulumi:"description"` 279 // Value of the parameter. **Use caution:** This value is _never_ marked as sensitive in the pulumi preview output. This argument is not valid with a `type` of `SecureString`. 280 InsecureValue *string `pulumi:"insecureValue"` 281 // KMS key ID or ARN for encrypting a SecureString. 282 KeyId *string `pulumi:"keyId"` 283 // Name of the parameter. If the name contains a path (e.g., any forward slashes (`/`)), it must be fully qualified with a leading forward slash (`/`). For additional requirements and constraints, see the [AWS SSM User Guide](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-parameter-name-constraints.html). 284 Name *string `pulumi:"name"` 285 // Overwrite an existing parameter. If not specified, defaults to `false` if the resource has not been created by Pulumi to avoid overwrite of existing resource, and will default to `true` otherwise (Pulumi lifecycle rules should then be used to manage the update behavior). 286 // 287 // Deprecated: this attribute has been deprecated 288 Overwrite *bool `pulumi:"overwrite"` 289 // Map of tags to assign to the object. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 290 Tags map[string]string `pulumi:"tags"` 291 // Parameter tier to assign to the parameter. If not specified, will use the default parameter tier for the region. Valid tiers are `Standard`, `Advanced`, and `Intelligent-Tiering`. Downgrading an `Advanced` tier parameter to `Standard` will recreate the resource. For more information on parameter tiers, see the [AWS SSM Parameter tier comparison and guide](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-advanced-parameters.html). 292 Tier *string `pulumi:"tier"` 293 // Type of the parameter. Valid types are `String`, `StringList` and `SecureString`. 294 // 295 // The following arguments are optional: 296 Type string `pulumi:"type"` 297 // Value of the parameter. This value is always marked as sensitive in the pulumi preview output, regardless of `type`. 298 // 299 // > **NOTE:** `aws:ssm:integration` dataType parameters must be of the type `SecureString` and the name must start with the prefix `/d9d01087-4a3f-49e0-b0b4-d568d7826553/ssm/integrations/webhook/`. See [here](https://docs.aws.amazon.com/systems-manager/latest/userguide/creating-integrations.html) for information on the usage of `aws:ssm:integration` parameters. 300 Value *string `pulumi:"value"` 301 } 302 303 // The set of arguments for constructing a Parameter resource. 304 type ParameterArgs struct { 305 // Regular expression used to validate the parameter value. 306 AllowedPattern pulumi.StringPtrInput 307 // ARN of the parameter. 308 Arn pulumi.StringPtrInput 309 // Data type of the parameter. Valid values: `text`, `aws:ssm:integration` and `aws:ec2:image` for AMI format, see the [Native parameter support for Amazon Machine Image IDs](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-ec2-aliases.html). 310 DataType pulumi.StringPtrInput 311 // Description of the parameter. 312 Description pulumi.StringPtrInput 313 // Value of the parameter. **Use caution:** This value is _never_ marked as sensitive in the pulumi preview output. This argument is not valid with a `type` of `SecureString`. 314 InsecureValue pulumi.StringPtrInput 315 // KMS key ID or ARN for encrypting a SecureString. 316 KeyId pulumi.StringPtrInput 317 // Name of the parameter. If the name contains a path (e.g., any forward slashes (`/`)), it must be fully qualified with a leading forward slash (`/`). For additional requirements and constraints, see the [AWS SSM User Guide](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-parameter-name-constraints.html). 318 Name pulumi.StringPtrInput 319 // Overwrite an existing parameter. If not specified, defaults to `false` if the resource has not been created by Pulumi to avoid overwrite of existing resource, and will default to `true` otherwise (Pulumi lifecycle rules should then be used to manage the update behavior). 320 // 321 // Deprecated: this attribute has been deprecated 322 Overwrite pulumi.BoolPtrInput 323 // Map of tags to assign to the object. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 324 Tags pulumi.StringMapInput 325 // Parameter tier to assign to the parameter. If not specified, will use the default parameter tier for the region. Valid tiers are `Standard`, `Advanced`, and `Intelligent-Tiering`. Downgrading an `Advanced` tier parameter to `Standard` will recreate the resource. For more information on parameter tiers, see the [AWS SSM Parameter tier comparison and guide](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-advanced-parameters.html). 326 Tier pulumi.StringPtrInput 327 // Type of the parameter. Valid types are `String`, `StringList` and `SecureString`. 328 // 329 // The following arguments are optional: 330 Type pulumi.StringInput 331 // Value of the parameter. This value is always marked as sensitive in the pulumi preview output, regardless of `type`. 332 // 333 // > **NOTE:** `aws:ssm:integration` dataType parameters must be of the type `SecureString` and the name must start with the prefix `/d9d01087-4a3f-49e0-b0b4-d568d7826553/ssm/integrations/webhook/`. See [here](https://docs.aws.amazon.com/systems-manager/latest/userguide/creating-integrations.html) for information on the usage of `aws:ssm:integration` parameters. 334 Value pulumi.StringPtrInput 335 } 336 337 func (ParameterArgs) ElementType() reflect.Type { 338 return reflect.TypeOf((*parameterArgs)(nil)).Elem() 339 } 340 341 type ParameterInput interface { 342 pulumi.Input 343 344 ToParameterOutput() ParameterOutput 345 ToParameterOutputWithContext(ctx context.Context) ParameterOutput 346 } 347 348 func (*Parameter) ElementType() reflect.Type { 349 return reflect.TypeOf((**Parameter)(nil)).Elem() 350 } 351 352 func (i *Parameter) ToParameterOutput() ParameterOutput { 353 return i.ToParameterOutputWithContext(context.Background()) 354 } 355 356 func (i *Parameter) ToParameterOutputWithContext(ctx context.Context) ParameterOutput { 357 return pulumi.ToOutputWithContext(ctx, i).(ParameterOutput) 358 } 359 360 // ParameterArrayInput is an input type that accepts ParameterArray and ParameterArrayOutput values. 361 // You can construct a concrete instance of `ParameterArrayInput` via: 362 // 363 // ParameterArray{ ParameterArgs{...} } 364 type ParameterArrayInput interface { 365 pulumi.Input 366 367 ToParameterArrayOutput() ParameterArrayOutput 368 ToParameterArrayOutputWithContext(context.Context) ParameterArrayOutput 369 } 370 371 type ParameterArray []ParameterInput 372 373 func (ParameterArray) ElementType() reflect.Type { 374 return reflect.TypeOf((*[]*Parameter)(nil)).Elem() 375 } 376 377 func (i ParameterArray) ToParameterArrayOutput() ParameterArrayOutput { 378 return i.ToParameterArrayOutputWithContext(context.Background()) 379 } 380 381 func (i ParameterArray) ToParameterArrayOutputWithContext(ctx context.Context) ParameterArrayOutput { 382 return pulumi.ToOutputWithContext(ctx, i).(ParameterArrayOutput) 383 } 384 385 // ParameterMapInput is an input type that accepts ParameterMap and ParameterMapOutput values. 386 // You can construct a concrete instance of `ParameterMapInput` via: 387 // 388 // ParameterMap{ "key": ParameterArgs{...} } 389 type ParameterMapInput interface { 390 pulumi.Input 391 392 ToParameterMapOutput() ParameterMapOutput 393 ToParameterMapOutputWithContext(context.Context) ParameterMapOutput 394 } 395 396 type ParameterMap map[string]ParameterInput 397 398 func (ParameterMap) ElementType() reflect.Type { 399 return reflect.TypeOf((*map[string]*Parameter)(nil)).Elem() 400 } 401 402 func (i ParameterMap) ToParameterMapOutput() ParameterMapOutput { 403 return i.ToParameterMapOutputWithContext(context.Background()) 404 } 405 406 func (i ParameterMap) ToParameterMapOutputWithContext(ctx context.Context) ParameterMapOutput { 407 return pulumi.ToOutputWithContext(ctx, i).(ParameterMapOutput) 408 } 409 410 type ParameterOutput struct{ *pulumi.OutputState } 411 412 func (ParameterOutput) ElementType() reflect.Type { 413 return reflect.TypeOf((**Parameter)(nil)).Elem() 414 } 415 416 func (o ParameterOutput) ToParameterOutput() ParameterOutput { 417 return o 418 } 419 420 func (o ParameterOutput) ToParameterOutputWithContext(ctx context.Context) ParameterOutput { 421 return o 422 } 423 424 // Regular expression used to validate the parameter value. 425 func (o ParameterOutput) AllowedPattern() pulumi.StringPtrOutput { 426 return o.ApplyT(func(v *Parameter) pulumi.StringPtrOutput { return v.AllowedPattern }).(pulumi.StringPtrOutput) 427 } 428 429 // ARN of the parameter. 430 func (o ParameterOutput) Arn() pulumi.StringOutput { 431 return o.ApplyT(func(v *Parameter) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) 432 } 433 434 // Data type of the parameter. Valid values: `text`, `aws:ssm:integration` and `aws:ec2:image` for AMI format, see the [Native parameter support for Amazon Machine Image IDs](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-ec2-aliases.html). 435 func (o ParameterOutput) DataType() pulumi.StringOutput { 436 return o.ApplyT(func(v *Parameter) pulumi.StringOutput { return v.DataType }).(pulumi.StringOutput) 437 } 438 439 // Description of the parameter. 440 func (o ParameterOutput) Description() pulumi.StringPtrOutput { 441 return o.ApplyT(func(v *Parameter) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) 442 } 443 444 // Value of the parameter. **Use caution:** This value is _never_ marked as sensitive in the pulumi preview output. This argument is not valid with a `type` of `SecureString`. 445 func (o ParameterOutput) InsecureValue() pulumi.StringOutput { 446 return o.ApplyT(func(v *Parameter) pulumi.StringOutput { return v.InsecureValue }).(pulumi.StringOutput) 447 } 448 449 // KMS key ID or ARN for encrypting a SecureString. 450 func (o ParameterOutput) KeyId() pulumi.StringOutput { 451 return o.ApplyT(func(v *Parameter) pulumi.StringOutput { return v.KeyId }).(pulumi.StringOutput) 452 } 453 454 // Name of the parameter. If the name contains a path (e.g., any forward slashes (`/`)), it must be fully qualified with a leading forward slash (`/`). For additional requirements and constraints, see the [AWS SSM User Guide](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-parameter-name-constraints.html). 455 func (o ParameterOutput) Name() pulumi.StringOutput { 456 return o.ApplyT(func(v *Parameter) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) 457 } 458 459 // Overwrite an existing parameter. If not specified, defaults to `false` if the resource has not been created by Pulumi to avoid overwrite of existing resource, and will default to `true` otherwise (Pulumi lifecycle rules should then be used to manage the update behavior). 460 // 461 // Deprecated: this attribute has been deprecated 462 func (o ParameterOutput) Overwrite() pulumi.BoolPtrOutput { 463 return o.ApplyT(func(v *Parameter) pulumi.BoolPtrOutput { return v.Overwrite }).(pulumi.BoolPtrOutput) 464 } 465 466 // Map of tags to assign to the object. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 467 func (o ParameterOutput) Tags() pulumi.StringMapOutput { 468 return o.ApplyT(func(v *Parameter) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) 469 } 470 471 // Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 472 // 473 // Deprecated: Please use `tags` instead. 474 func (o ParameterOutput) TagsAll() pulumi.StringMapOutput { 475 return o.ApplyT(func(v *Parameter) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput) 476 } 477 478 // Parameter tier to assign to the parameter. If not specified, will use the default parameter tier for the region. Valid tiers are `Standard`, `Advanced`, and `Intelligent-Tiering`. Downgrading an `Advanced` tier parameter to `Standard` will recreate the resource. For more information on parameter tiers, see the [AWS SSM Parameter tier comparison and guide](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-advanced-parameters.html). 479 func (o ParameterOutput) Tier() pulumi.StringPtrOutput { 480 return o.ApplyT(func(v *Parameter) pulumi.StringPtrOutput { return v.Tier }).(pulumi.StringPtrOutput) 481 } 482 483 // Type of the parameter. Valid types are `String`, `StringList` and `SecureString`. 484 // 485 // The following arguments are optional: 486 func (o ParameterOutput) Type() pulumi.StringOutput { 487 return o.ApplyT(func(v *Parameter) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) 488 } 489 490 // Value of the parameter. This value is always marked as sensitive in the pulumi preview output, regardless of `type`. 491 // 492 // > **NOTE:** `aws:ssm:integration` dataType parameters must be of the type `SecureString` and the name must start with the prefix `/d9d01087-4a3f-49e0-b0b4-d568d7826553/ssm/integrations/webhook/`. See [here](https://docs.aws.amazon.com/systems-manager/latest/userguide/creating-integrations.html) for information on the usage of `aws:ssm:integration` parameters. 493 func (o ParameterOutput) Value() pulumi.StringOutput { 494 return o.ApplyT(func(v *Parameter) pulumi.StringOutput { return v.Value }).(pulumi.StringOutput) 495 } 496 497 // Version of the parameter. 498 func (o ParameterOutput) Version() pulumi.IntOutput { 499 return o.ApplyT(func(v *Parameter) pulumi.IntOutput { return v.Version }).(pulumi.IntOutput) 500 } 501 502 type ParameterArrayOutput struct{ *pulumi.OutputState } 503 504 func (ParameterArrayOutput) ElementType() reflect.Type { 505 return reflect.TypeOf((*[]*Parameter)(nil)).Elem() 506 } 507 508 func (o ParameterArrayOutput) ToParameterArrayOutput() ParameterArrayOutput { 509 return o 510 } 511 512 func (o ParameterArrayOutput) ToParameterArrayOutputWithContext(ctx context.Context) ParameterArrayOutput { 513 return o 514 } 515 516 func (o ParameterArrayOutput) Index(i pulumi.IntInput) ParameterOutput { 517 return pulumi.All(o, i).ApplyT(func(vs []interface{}) *Parameter { 518 return vs[0].([]*Parameter)[vs[1].(int)] 519 }).(ParameterOutput) 520 } 521 522 type ParameterMapOutput struct{ *pulumi.OutputState } 523 524 func (ParameterMapOutput) ElementType() reflect.Type { 525 return reflect.TypeOf((*map[string]*Parameter)(nil)).Elem() 526 } 527 528 func (o ParameterMapOutput) ToParameterMapOutput() ParameterMapOutput { 529 return o 530 } 531 532 func (o ParameterMapOutput) ToParameterMapOutputWithContext(ctx context.Context) ParameterMapOutput { 533 return o 534 } 535 536 func (o ParameterMapOutput) MapIndex(k pulumi.StringInput) ParameterOutput { 537 return pulumi.All(o, k).ApplyT(func(vs []interface{}) *Parameter { 538 return vs[0].(map[string]*Parameter)[vs[1].(string)] 539 }).(ParameterOutput) 540 } 541 542 func init() { 543 pulumi.RegisterInputType(reflect.TypeOf((*ParameterInput)(nil)).Elem(), &Parameter{}) 544 pulumi.RegisterInputType(reflect.TypeOf((*ParameterArrayInput)(nil)).Elem(), ParameterArray{}) 545 pulumi.RegisterInputType(reflect.TypeOf((*ParameterMapInput)(nil)).Elem(), ParameterMap{}) 546 pulumi.RegisterOutputType(ParameterOutput{}) 547 pulumi.RegisterOutputType(ParameterArrayOutput{}) 548 pulumi.RegisterOutputType(ParameterMapOutput{}) 549 }