github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/ssm/defaultPatchBaseline.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 // Resource for registering an AWS Systems Manager Default Patch Baseline. 16 // 17 // ## Example Usage 18 // 19 // ### Basic Usage 20 // 21 // <!--Start PulumiCodeChooser --> 22 // ```go 23 // package main 24 // 25 // import ( 26 // 27 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ssm" 28 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 29 // 30 // ) 31 // 32 // func main() { 33 // pulumi.Run(func(ctx *pulumi.Context) error { 34 // examplePatchBaseline, err := ssm.NewPatchBaseline(ctx, "example", &ssm.PatchBaselineArgs{ 35 // Name: pulumi.String("example"), 36 // ApprovedPatches: pulumi.StringArray{ 37 // pulumi.String("KB123456"), 38 // }, 39 // }) 40 // if err != nil { 41 // return err 42 // } 43 // _, err = ssm.NewDefaultPatchBaseline(ctx, "example", &ssm.DefaultPatchBaselineArgs{ 44 // BaselineId: examplePatchBaseline.ID(), 45 // OperatingSystem: examplePatchBaseline.OperatingSystem, 46 // }) 47 // if err != nil { 48 // return err 49 // } 50 // return nil 51 // }) 52 // } 53 // 54 // ``` 55 // <!--End PulumiCodeChooser --> 56 // 57 // ## Import 58 // 59 // Using the patch baseline ARN: 60 // 61 // Using the operating system value: 62 // 63 // __Using `pulumi import` to import__ the Systems Manager Default Patch Baseline using the patch baseline ID, patch baseline ARN, or the operating system value. For example: 64 // 65 // Using the patch baseline ID: 66 // 67 // ```sh 68 // $ pulumi import aws:ssm/defaultPatchBaseline:DefaultPatchBaseline example pb-1234567890abcdef1 69 // ``` 70 // Using the patch baseline ARN: 71 // 72 // ```sh 73 // $ pulumi import aws:ssm/defaultPatchBaseline:DefaultPatchBaseline example arn:aws:ssm:us-west-2:123456789012:patchbaseline/pb-1234567890abcdef1 74 // ``` 75 // Using the operating system value: 76 // 77 // ```sh 78 // $ pulumi import aws:ssm/defaultPatchBaseline:DefaultPatchBaseline example CENTOS 79 // ``` 80 type DefaultPatchBaseline struct { 81 pulumi.CustomResourceState 82 83 // ID of the patch baseline. 84 // Can be an ID or an ARN. 85 // When specifying an AWS-provided patch baseline, must be the ARN. 86 BaselineId pulumi.StringOutput `pulumi:"baselineId"` 87 // The operating system the patch baseline applies to. 88 // Valid values are 89 // `AMAZON_LINUX`, 90 // `AMAZON_LINUX_2`, 91 // `AMAZON_LINUX_2022`, 92 // `CENTOS`, 93 // `DEBIAN`, 94 // `MACOS`, 95 // `ORACLE_LINUX`, 96 // `RASPBIAN`, 97 // `REDHAT_ENTERPRISE_LINUX`, 98 // `ROCKY_LINUX`, 99 // `SUSE`, 100 // `UBUNTU`, and 101 // `WINDOWS`. 102 OperatingSystem pulumi.StringOutput `pulumi:"operatingSystem"` 103 } 104 105 // NewDefaultPatchBaseline registers a new resource with the given unique name, arguments, and options. 106 func NewDefaultPatchBaseline(ctx *pulumi.Context, 107 name string, args *DefaultPatchBaselineArgs, opts ...pulumi.ResourceOption) (*DefaultPatchBaseline, error) { 108 if args == nil { 109 return nil, errors.New("missing one or more required arguments") 110 } 111 112 if args.BaselineId == nil { 113 return nil, errors.New("invalid value for required argument 'BaselineId'") 114 } 115 if args.OperatingSystem == nil { 116 return nil, errors.New("invalid value for required argument 'OperatingSystem'") 117 } 118 opts = internal.PkgResourceDefaultOpts(opts) 119 var resource DefaultPatchBaseline 120 err := ctx.RegisterResource("aws:ssm/defaultPatchBaseline:DefaultPatchBaseline", name, args, &resource, opts...) 121 if err != nil { 122 return nil, err 123 } 124 return &resource, nil 125 } 126 127 // GetDefaultPatchBaseline gets an existing DefaultPatchBaseline resource's state with the given name, ID, and optional 128 // state properties that are used to uniquely qualify the lookup (nil if not required). 129 func GetDefaultPatchBaseline(ctx *pulumi.Context, 130 name string, id pulumi.IDInput, state *DefaultPatchBaselineState, opts ...pulumi.ResourceOption) (*DefaultPatchBaseline, error) { 131 var resource DefaultPatchBaseline 132 err := ctx.ReadResource("aws:ssm/defaultPatchBaseline:DefaultPatchBaseline", name, id, state, &resource, opts...) 133 if err != nil { 134 return nil, err 135 } 136 return &resource, nil 137 } 138 139 // Input properties used for looking up and filtering DefaultPatchBaseline resources. 140 type defaultPatchBaselineState struct { 141 // ID of the patch baseline. 142 // Can be an ID or an ARN. 143 // When specifying an AWS-provided patch baseline, must be the ARN. 144 BaselineId *string `pulumi:"baselineId"` 145 // The operating system the patch baseline applies to. 146 // Valid values are 147 // `AMAZON_LINUX`, 148 // `AMAZON_LINUX_2`, 149 // `AMAZON_LINUX_2022`, 150 // `CENTOS`, 151 // `DEBIAN`, 152 // `MACOS`, 153 // `ORACLE_LINUX`, 154 // `RASPBIAN`, 155 // `REDHAT_ENTERPRISE_LINUX`, 156 // `ROCKY_LINUX`, 157 // `SUSE`, 158 // `UBUNTU`, and 159 // `WINDOWS`. 160 OperatingSystem *string `pulumi:"operatingSystem"` 161 } 162 163 type DefaultPatchBaselineState struct { 164 // ID of the patch baseline. 165 // Can be an ID or an ARN. 166 // When specifying an AWS-provided patch baseline, must be the ARN. 167 BaselineId pulumi.StringPtrInput 168 // The operating system the patch baseline applies to. 169 // Valid values are 170 // `AMAZON_LINUX`, 171 // `AMAZON_LINUX_2`, 172 // `AMAZON_LINUX_2022`, 173 // `CENTOS`, 174 // `DEBIAN`, 175 // `MACOS`, 176 // `ORACLE_LINUX`, 177 // `RASPBIAN`, 178 // `REDHAT_ENTERPRISE_LINUX`, 179 // `ROCKY_LINUX`, 180 // `SUSE`, 181 // `UBUNTU`, and 182 // `WINDOWS`. 183 OperatingSystem pulumi.StringPtrInput 184 } 185 186 func (DefaultPatchBaselineState) ElementType() reflect.Type { 187 return reflect.TypeOf((*defaultPatchBaselineState)(nil)).Elem() 188 } 189 190 type defaultPatchBaselineArgs struct { 191 // ID of the patch baseline. 192 // Can be an ID or an ARN. 193 // When specifying an AWS-provided patch baseline, must be the ARN. 194 BaselineId string `pulumi:"baselineId"` 195 // The operating system the patch baseline applies to. 196 // Valid values are 197 // `AMAZON_LINUX`, 198 // `AMAZON_LINUX_2`, 199 // `AMAZON_LINUX_2022`, 200 // `CENTOS`, 201 // `DEBIAN`, 202 // `MACOS`, 203 // `ORACLE_LINUX`, 204 // `RASPBIAN`, 205 // `REDHAT_ENTERPRISE_LINUX`, 206 // `ROCKY_LINUX`, 207 // `SUSE`, 208 // `UBUNTU`, and 209 // `WINDOWS`. 210 OperatingSystem string `pulumi:"operatingSystem"` 211 } 212 213 // The set of arguments for constructing a DefaultPatchBaseline resource. 214 type DefaultPatchBaselineArgs struct { 215 // ID of the patch baseline. 216 // Can be an ID or an ARN. 217 // When specifying an AWS-provided patch baseline, must be the ARN. 218 BaselineId pulumi.StringInput 219 // The operating system the patch baseline applies to. 220 // Valid values are 221 // `AMAZON_LINUX`, 222 // `AMAZON_LINUX_2`, 223 // `AMAZON_LINUX_2022`, 224 // `CENTOS`, 225 // `DEBIAN`, 226 // `MACOS`, 227 // `ORACLE_LINUX`, 228 // `RASPBIAN`, 229 // `REDHAT_ENTERPRISE_LINUX`, 230 // `ROCKY_LINUX`, 231 // `SUSE`, 232 // `UBUNTU`, and 233 // `WINDOWS`. 234 OperatingSystem pulumi.StringInput 235 } 236 237 func (DefaultPatchBaselineArgs) ElementType() reflect.Type { 238 return reflect.TypeOf((*defaultPatchBaselineArgs)(nil)).Elem() 239 } 240 241 type DefaultPatchBaselineInput interface { 242 pulumi.Input 243 244 ToDefaultPatchBaselineOutput() DefaultPatchBaselineOutput 245 ToDefaultPatchBaselineOutputWithContext(ctx context.Context) DefaultPatchBaselineOutput 246 } 247 248 func (*DefaultPatchBaseline) ElementType() reflect.Type { 249 return reflect.TypeOf((**DefaultPatchBaseline)(nil)).Elem() 250 } 251 252 func (i *DefaultPatchBaseline) ToDefaultPatchBaselineOutput() DefaultPatchBaselineOutput { 253 return i.ToDefaultPatchBaselineOutputWithContext(context.Background()) 254 } 255 256 func (i *DefaultPatchBaseline) ToDefaultPatchBaselineOutputWithContext(ctx context.Context) DefaultPatchBaselineOutput { 257 return pulumi.ToOutputWithContext(ctx, i).(DefaultPatchBaselineOutput) 258 } 259 260 // DefaultPatchBaselineArrayInput is an input type that accepts DefaultPatchBaselineArray and DefaultPatchBaselineArrayOutput values. 261 // You can construct a concrete instance of `DefaultPatchBaselineArrayInput` via: 262 // 263 // DefaultPatchBaselineArray{ DefaultPatchBaselineArgs{...} } 264 type DefaultPatchBaselineArrayInput interface { 265 pulumi.Input 266 267 ToDefaultPatchBaselineArrayOutput() DefaultPatchBaselineArrayOutput 268 ToDefaultPatchBaselineArrayOutputWithContext(context.Context) DefaultPatchBaselineArrayOutput 269 } 270 271 type DefaultPatchBaselineArray []DefaultPatchBaselineInput 272 273 func (DefaultPatchBaselineArray) ElementType() reflect.Type { 274 return reflect.TypeOf((*[]*DefaultPatchBaseline)(nil)).Elem() 275 } 276 277 func (i DefaultPatchBaselineArray) ToDefaultPatchBaselineArrayOutput() DefaultPatchBaselineArrayOutput { 278 return i.ToDefaultPatchBaselineArrayOutputWithContext(context.Background()) 279 } 280 281 func (i DefaultPatchBaselineArray) ToDefaultPatchBaselineArrayOutputWithContext(ctx context.Context) DefaultPatchBaselineArrayOutput { 282 return pulumi.ToOutputWithContext(ctx, i).(DefaultPatchBaselineArrayOutput) 283 } 284 285 // DefaultPatchBaselineMapInput is an input type that accepts DefaultPatchBaselineMap and DefaultPatchBaselineMapOutput values. 286 // You can construct a concrete instance of `DefaultPatchBaselineMapInput` via: 287 // 288 // DefaultPatchBaselineMap{ "key": DefaultPatchBaselineArgs{...} } 289 type DefaultPatchBaselineMapInput interface { 290 pulumi.Input 291 292 ToDefaultPatchBaselineMapOutput() DefaultPatchBaselineMapOutput 293 ToDefaultPatchBaselineMapOutputWithContext(context.Context) DefaultPatchBaselineMapOutput 294 } 295 296 type DefaultPatchBaselineMap map[string]DefaultPatchBaselineInput 297 298 func (DefaultPatchBaselineMap) ElementType() reflect.Type { 299 return reflect.TypeOf((*map[string]*DefaultPatchBaseline)(nil)).Elem() 300 } 301 302 func (i DefaultPatchBaselineMap) ToDefaultPatchBaselineMapOutput() DefaultPatchBaselineMapOutput { 303 return i.ToDefaultPatchBaselineMapOutputWithContext(context.Background()) 304 } 305 306 func (i DefaultPatchBaselineMap) ToDefaultPatchBaselineMapOutputWithContext(ctx context.Context) DefaultPatchBaselineMapOutput { 307 return pulumi.ToOutputWithContext(ctx, i).(DefaultPatchBaselineMapOutput) 308 } 309 310 type DefaultPatchBaselineOutput struct{ *pulumi.OutputState } 311 312 func (DefaultPatchBaselineOutput) ElementType() reflect.Type { 313 return reflect.TypeOf((**DefaultPatchBaseline)(nil)).Elem() 314 } 315 316 func (o DefaultPatchBaselineOutput) ToDefaultPatchBaselineOutput() DefaultPatchBaselineOutput { 317 return o 318 } 319 320 func (o DefaultPatchBaselineOutput) ToDefaultPatchBaselineOutputWithContext(ctx context.Context) DefaultPatchBaselineOutput { 321 return o 322 } 323 324 // ID of the patch baseline. 325 // Can be an ID or an ARN. 326 // When specifying an AWS-provided patch baseline, must be the ARN. 327 func (o DefaultPatchBaselineOutput) BaselineId() pulumi.StringOutput { 328 return o.ApplyT(func(v *DefaultPatchBaseline) pulumi.StringOutput { return v.BaselineId }).(pulumi.StringOutput) 329 } 330 331 // The operating system the patch baseline applies to. 332 // Valid values are 333 // `AMAZON_LINUX`, 334 // `AMAZON_LINUX_2`, 335 // `AMAZON_LINUX_2022`, 336 // `CENTOS`, 337 // `DEBIAN`, 338 // `MACOS`, 339 // `ORACLE_LINUX`, 340 // `RASPBIAN`, 341 // `REDHAT_ENTERPRISE_LINUX`, 342 // `ROCKY_LINUX`, 343 // `SUSE`, 344 // `UBUNTU`, and 345 // `WINDOWS`. 346 func (o DefaultPatchBaselineOutput) OperatingSystem() pulumi.StringOutput { 347 return o.ApplyT(func(v *DefaultPatchBaseline) pulumi.StringOutput { return v.OperatingSystem }).(pulumi.StringOutput) 348 } 349 350 type DefaultPatchBaselineArrayOutput struct{ *pulumi.OutputState } 351 352 func (DefaultPatchBaselineArrayOutput) ElementType() reflect.Type { 353 return reflect.TypeOf((*[]*DefaultPatchBaseline)(nil)).Elem() 354 } 355 356 func (o DefaultPatchBaselineArrayOutput) ToDefaultPatchBaselineArrayOutput() DefaultPatchBaselineArrayOutput { 357 return o 358 } 359 360 func (o DefaultPatchBaselineArrayOutput) ToDefaultPatchBaselineArrayOutputWithContext(ctx context.Context) DefaultPatchBaselineArrayOutput { 361 return o 362 } 363 364 func (o DefaultPatchBaselineArrayOutput) Index(i pulumi.IntInput) DefaultPatchBaselineOutput { 365 return pulumi.All(o, i).ApplyT(func(vs []interface{}) *DefaultPatchBaseline { 366 return vs[0].([]*DefaultPatchBaseline)[vs[1].(int)] 367 }).(DefaultPatchBaselineOutput) 368 } 369 370 type DefaultPatchBaselineMapOutput struct{ *pulumi.OutputState } 371 372 func (DefaultPatchBaselineMapOutput) ElementType() reflect.Type { 373 return reflect.TypeOf((*map[string]*DefaultPatchBaseline)(nil)).Elem() 374 } 375 376 func (o DefaultPatchBaselineMapOutput) ToDefaultPatchBaselineMapOutput() DefaultPatchBaselineMapOutput { 377 return o 378 } 379 380 func (o DefaultPatchBaselineMapOutput) ToDefaultPatchBaselineMapOutputWithContext(ctx context.Context) DefaultPatchBaselineMapOutput { 381 return o 382 } 383 384 func (o DefaultPatchBaselineMapOutput) MapIndex(k pulumi.StringInput) DefaultPatchBaselineOutput { 385 return pulumi.All(o, k).ApplyT(func(vs []interface{}) *DefaultPatchBaseline { 386 return vs[0].(map[string]*DefaultPatchBaseline)[vs[1].(string)] 387 }).(DefaultPatchBaselineOutput) 388 } 389 390 func init() { 391 pulumi.RegisterInputType(reflect.TypeOf((*DefaultPatchBaselineInput)(nil)).Elem(), &DefaultPatchBaseline{}) 392 pulumi.RegisterInputType(reflect.TypeOf((*DefaultPatchBaselineArrayInput)(nil)).Elem(), DefaultPatchBaselineArray{}) 393 pulumi.RegisterInputType(reflect.TypeOf((*DefaultPatchBaselineMapInput)(nil)).Elem(), DefaultPatchBaselineMap{}) 394 pulumi.RegisterOutputType(DefaultPatchBaselineOutput{}) 395 pulumi.RegisterOutputType(DefaultPatchBaselineArrayOutput{}) 396 pulumi.RegisterOutputType(DefaultPatchBaselineMapOutput{}) 397 }