github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/signer/signingJob.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 signer 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 // Creates a Signer Signing Job. 16 // 17 // ## Example Usage 18 // 19 // <!--Start PulumiCodeChooser --> 20 // ```go 21 // package main 22 // 23 // import ( 24 // 25 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/signer" 26 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 27 // 28 // ) 29 // 30 // func main() { 31 // pulumi.Run(func(ctx *pulumi.Context) error { 32 // testSp, err := signer.NewSigningProfile(ctx, "test_sp", &signer.SigningProfileArgs{ 33 // PlatformId: pulumi.String("AWSLambda-SHA384-ECDSA"), 34 // }) 35 // if err != nil { 36 // return err 37 // } 38 // _, err = signer.NewSigningJob(ctx, "build_signing_job", &signer.SigningJobArgs{ 39 // ProfileName: testSp.Name, 40 // Source: &signer.SigningJobSourceArgs{ 41 // S3: &signer.SigningJobSourceS3Args{ 42 // Bucket: pulumi.String("s3-bucket-name"), 43 // Key: pulumi.String("object-to-be-signed.zip"), 44 // Version: pulumi.String("jADjFYYYEXAMPLETszPjOmCMFDzd9dN1"), 45 // }, 46 // }, 47 // Destination: &signer.SigningJobDestinationArgs{ 48 // S3: &signer.SigningJobDestinationS3Args{ 49 // Bucket: pulumi.String("s3-bucket-name"), 50 // Prefix: pulumi.String("signed/"), 51 // }, 52 // }, 53 // IgnoreSigningJobFailure: pulumi.Bool(true), 54 // }) 55 // if err != nil { 56 // return err 57 // } 58 // return nil 59 // }) 60 // } 61 // 62 // ``` 63 // <!--End PulumiCodeChooser --> 64 // 65 // ## Import 66 // 67 // Using `pulumi import`, import Signer signing jobs using the `job_id`. For example: 68 // 69 // ```sh 70 // $ pulumi import aws:signer/signingJob:SigningJob test_signer_signing_job 9ed7e5c3-b8d4-4da0-8459-44e0b068f7ee 71 // ``` 72 type SigningJob struct { 73 pulumi.CustomResourceState 74 75 // Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the signing job was completed. 76 CompletedAt pulumi.StringOutput `pulumi:"completedAt"` 77 // Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the signing job was created. 78 CreatedAt pulumi.StringOutput `pulumi:"createdAt"` 79 // The S3 bucket in which to save your signed object. See Destination below for details. 80 Destination SigningJobDestinationOutput `pulumi:"destination"` 81 // Set this argument to `true` to ignore signing job failures and retrieve failed status and reason. Default `false`. 82 IgnoreSigningJobFailure pulumi.BoolPtrOutput `pulumi:"ignoreSigningJobFailure"` 83 // The ID of the signing job on output. 84 JobId pulumi.StringOutput `pulumi:"jobId"` 85 // The IAM entity that initiated the signing job. 86 JobInvoker pulumi.StringOutput `pulumi:"jobInvoker"` 87 // The AWS account ID of the job owner. 88 JobOwner pulumi.StringOutput `pulumi:"jobOwner"` 89 // A human-readable name for the signing platform associated with the signing job. 90 PlatformDisplayName pulumi.StringOutput `pulumi:"platformDisplayName"` 91 // The platform to which your signed code image will be distributed. 92 PlatformId pulumi.StringOutput `pulumi:"platformId"` 93 // The name of the profile to initiate the signing operation. 94 ProfileName pulumi.StringOutput `pulumi:"profileName"` 95 // The version of the signing profile used to initiate the signing job. 96 ProfileVersion pulumi.StringOutput `pulumi:"profileVersion"` 97 // The IAM principal that requested the signing job. 98 RequestedBy pulumi.StringOutput `pulumi:"requestedBy"` 99 // A revocation record if the signature generated by the signing job has been revoked. Contains a timestamp and the ID of the IAM entity that revoked the signature. 100 RevocationRecords SigningJobRevocationRecordArrayOutput `pulumi:"revocationRecords"` 101 // The time when the signature of a signing job expires. 102 SignatureExpiresAt pulumi.StringOutput `pulumi:"signatureExpiresAt"` 103 // Name of the S3 bucket where the signed code image is saved by code signing. 104 SignedObjects SigningJobSignedObjectArrayOutput `pulumi:"signedObjects"` 105 // The S3 bucket that contains the object to sign. See Source below for details. 106 Source SigningJobSourceOutput `pulumi:"source"` 107 // Status of the signing job. 108 Status pulumi.StringOutput `pulumi:"status"` 109 // String value that contains the status reason. 110 StatusReason pulumi.StringOutput `pulumi:"statusReason"` 111 } 112 113 // NewSigningJob registers a new resource with the given unique name, arguments, and options. 114 func NewSigningJob(ctx *pulumi.Context, 115 name string, args *SigningJobArgs, opts ...pulumi.ResourceOption) (*SigningJob, error) { 116 if args == nil { 117 return nil, errors.New("missing one or more required arguments") 118 } 119 120 if args.Destination == nil { 121 return nil, errors.New("invalid value for required argument 'Destination'") 122 } 123 if args.ProfileName == nil { 124 return nil, errors.New("invalid value for required argument 'ProfileName'") 125 } 126 if args.Source == nil { 127 return nil, errors.New("invalid value for required argument 'Source'") 128 } 129 opts = internal.PkgResourceDefaultOpts(opts) 130 var resource SigningJob 131 err := ctx.RegisterResource("aws:signer/signingJob:SigningJob", name, args, &resource, opts...) 132 if err != nil { 133 return nil, err 134 } 135 return &resource, nil 136 } 137 138 // GetSigningJob gets an existing SigningJob resource's state with the given name, ID, and optional 139 // state properties that are used to uniquely qualify the lookup (nil if not required). 140 func GetSigningJob(ctx *pulumi.Context, 141 name string, id pulumi.IDInput, state *SigningJobState, opts ...pulumi.ResourceOption) (*SigningJob, error) { 142 var resource SigningJob 143 err := ctx.ReadResource("aws:signer/signingJob:SigningJob", name, id, state, &resource, opts...) 144 if err != nil { 145 return nil, err 146 } 147 return &resource, nil 148 } 149 150 // Input properties used for looking up and filtering SigningJob resources. 151 type signingJobState struct { 152 // Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the signing job was completed. 153 CompletedAt *string `pulumi:"completedAt"` 154 // Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the signing job was created. 155 CreatedAt *string `pulumi:"createdAt"` 156 // The S3 bucket in which to save your signed object. See Destination below for details. 157 Destination *SigningJobDestination `pulumi:"destination"` 158 // Set this argument to `true` to ignore signing job failures and retrieve failed status and reason. Default `false`. 159 IgnoreSigningJobFailure *bool `pulumi:"ignoreSigningJobFailure"` 160 // The ID of the signing job on output. 161 JobId *string `pulumi:"jobId"` 162 // The IAM entity that initiated the signing job. 163 JobInvoker *string `pulumi:"jobInvoker"` 164 // The AWS account ID of the job owner. 165 JobOwner *string `pulumi:"jobOwner"` 166 // A human-readable name for the signing platform associated with the signing job. 167 PlatformDisplayName *string `pulumi:"platformDisplayName"` 168 // The platform to which your signed code image will be distributed. 169 PlatformId *string `pulumi:"platformId"` 170 // The name of the profile to initiate the signing operation. 171 ProfileName *string `pulumi:"profileName"` 172 // The version of the signing profile used to initiate the signing job. 173 ProfileVersion *string `pulumi:"profileVersion"` 174 // The IAM principal that requested the signing job. 175 RequestedBy *string `pulumi:"requestedBy"` 176 // A revocation record if the signature generated by the signing job has been revoked. Contains a timestamp and the ID of the IAM entity that revoked the signature. 177 RevocationRecords []SigningJobRevocationRecord `pulumi:"revocationRecords"` 178 // The time when the signature of a signing job expires. 179 SignatureExpiresAt *string `pulumi:"signatureExpiresAt"` 180 // Name of the S3 bucket where the signed code image is saved by code signing. 181 SignedObjects []SigningJobSignedObject `pulumi:"signedObjects"` 182 // The S3 bucket that contains the object to sign. See Source below for details. 183 Source *SigningJobSource `pulumi:"source"` 184 // Status of the signing job. 185 Status *string `pulumi:"status"` 186 // String value that contains the status reason. 187 StatusReason *string `pulumi:"statusReason"` 188 } 189 190 type SigningJobState struct { 191 // Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the signing job was completed. 192 CompletedAt pulumi.StringPtrInput 193 // Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the signing job was created. 194 CreatedAt pulumi.StringPtrInput 195 // The S3 bucket in which to save your signed object. See Destination below for details. 196 Destination SigningJobDestinationPtrInput 197 // Set this argument to `true` to ignore signing job failures and retrieve failed status and reason. Default `false`. 198 IgnoreSigningJobFailure pulumi.BoolPtrInput 199 // The ID of the signing job on output. 200 JobId pulumi.StringPtrInput 201 // The IAM entity that initiated the signing job. 202 JobInvoker pulumi.StringPtrInput 203 // The AWS account ID of the job owner. 204 JobOwner pulumi.StringPtrInput 205 // A human-readable name for the signing platform associated with the signing job. 206 PlatformDisplayName pulumi.StringPtrInput 207 // The platform to which your signed code image will be distributed. 208 PlatformId pulumi.StringPtrInput 209 // The name of the profile to initiate the signing operation. 210 ProfileName pulumi.StringPtrInput 211 // The version of the signing profile used to initiate the signing job. 212 ProfileVersion pulumi.StringPtrInput 213 // The IAM principal that requested the signing job. 214 RequestedBy pulumi.StringPtrInput 215 // A revocation record if the signature generated by the signing job has been revoked. Contains a timestamp and the ID of the IAM entity that revoked the signature. 216 RevocationRecords SigningJobRevocationRecordArrayInput 217 // The time when the signature of a signing job expires. 218 SignatureExpiresAt pulumi.StringPtrInput 219 // Name of the S3 bucket where the signed code image is saved by code signing. 220 SignedObjects SigningJobSignedObjectArrayInput 221 // The S3 bucket that contains the object to sign. See Source below for details. 222 Source SigningJobSourcePtrInput 223 // Status of the signing job. 224 Status pulumi.StringPtrInput 225 // String value that contains the status reason. 226 StatusReason pulumi.StringPtrInput 227 } 228 229 func (SigningJobState) ElementType() reflect.Type { 230 return reflect.TypeOf((*signingJobState)(nil)).Elem() 231 } 232 233 type signingJobArgs struct { 234 // The S3 bucket in which to save your signed object. See Destination below for details. 235 Destination SigningJobDestination `pulumi:"destination"` 236 // Set this argument to `true` to ignore signing job failures and retrieve failed status and reason. Default `false`. 237 IgnoreSigningJobFailure *bool `pulumi:"ignoreSigningJobFailure"` 238 // The name of the profile to initiate the signing operation. 239 ProfileName string `pulumi:"profileName"` 240 // The S3 bucket that contains the object to sign. See Source below for details. 241 Source SigningJobSource `pulumi:"source"` 242 } 243 244 // The set of arguments for constructing a SigningJob resource. 245 type SigningJobArgs struct { 246 // The S3 bucket in which to save your signed object. See Destination below for details. 247 Destination SigningJobDestinationInput 248 // Set this argument to `true` to ignore signing job failures and retrieve failed status and reason. Default `false`. 249 IgnoreSigningJobFailure pulumi.BoolPtrInput 250 // The name of the profile to initiate the signing operation. 251 ProfileName pulumi.StringInput 252 // The S3 bucket that contains the object to sign. See Source below for details. 253 Source SigningJobSourceInput 254 } 255 256 func (SigningJobArgs) ElementType() reflect.Type { 257 return reflect.TypeOf((*signingJobArgs)(nil)).Elem() 258 } 259 260 type SigningJobInput interface { 261 pulumi.Input 262 263 ToSigningJobOutput() SigningJobOutput 264 ToSigningJobOutputWithContext(ctx context.Context) SigningJobOutput 265 } 266 267 func (*SigningJob) ElementType() reflect.Type { 268 return reflect.TypeOf((**SigningJob)(nil)).Elem() 269 } 270 271 func (i *SigningJob) ToSigningJobOutput() SigningJobOutput { 272 return i.ToSigningJobOutputWithContext(context.Background()) 273 } 274 275 func (i *SigningJob) ToSigningJobOutputWithContext(ctx context.Context) SigningJobOutput { 276 return pulumi.ToOutputWithContext(ctx, i).(SigningJobOutput) 277 } 278 279 // SigningJobArrayInput is an input type that accepts SigningJobArray and SigningJobArrayOutput values. 280 // You can construct a concrete instance of `SigningJobArrayInput` via: 281 // 282 // SigningJobArray{ SigningJobArgs{...} } 283 type SigningJobArrayInput interface { 284 pulumi.Input 285 286 ToSigningJobArrayOutput() SigningJobArrayOutput 287 ToSigningJobArrayOutputWithContext(context.Context) SigningJobArrayOutput 288 } 289 290 type SigningJobArray []SigningJobInput 291 292 func (SigningJobArray) ElementType() reflect.Type { 293 return reflect.TypeOf((*[]*SigningJob)(nil)).Elem() 294 } 295 296 func (i SigningJobArray) ToSigningJobArrayOutput() SigningJobArrayOutput { 297 return i.ToSigningJobArrayOutputWithContext(context.Background()) 298 } 299 300 func (i SigningJobArray) ToSigningJobArrayOutputWithContext(ctx context.Context) SigningJobArrayOutput { 301 return pulumi.ToOutputWithContext(ctx, i).(SigningJobArrayOutput) 302 } 303 304 // SigningJobMapInput is an input type that accepts SigningJobMap and SigningJobMapOutput values. 305 // You can construct a concrete instance of `SigningJobMapInput` via: 306 // 307 // SigningJobMap{ "key": SigningJobArgs{...} } 308 type SigningJobMapInput interface { 309 pulumi.Input 310 311 ToSigningJobMapOutput() SigningJobMapOutput 312 ToSigningJobMapOutputWithContext(context.Context) SigningJobMapOutput 313 } 314 315 type SigningJobMap map[string]SigningJobInput 316 317 func (SigningJobMap) ElementType() reflect.Type { 318 return reflect.TypeOf((*map[string]*SigningJob)(nil)).Elem() 319 } 320 321 func (i SigningJobMap) ToSigningJobMapOutput() SigningJobMapOutput { 322 return i.ToSigningJobMapOutputWithContext(context.Background()) 323 } 324 325 func (i SigningJobMap) ToSigningJobMapOutputWithContext(ctx context.Context) SigningJobMapOutput { 326 return pulumi.ToOutputWithContext(ctx, i).(SigningJobMapOutput) 327 } 328 329 type SigningJobOutput struct{ *pulumi.OutputState } 330 331 func (SigningJobOutput) ElementType() reflect.Type { 332 return reflect.TypeOf((**SigningJob)(nil)).Elem() 333 } 334 335 func (o SigningJobOutput) ToSigningJobOutput() SigningJobOutput { 336 return o 337 } 338 339 func (o SigningJobOutput) ToSigningJobOutputWithContext(ctx context.Context) SigningJobOutput { 340 return o 341 } 342 343 // Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the signing job was completed. 344 func (o SigningJobOutput) CompletedAt() pulumi.StringOutput { 345 return o.ApplyT(func(v *SigningJob) pulumi.StringOutput { return v.CompletedAt }).(pulumi.StringOutput) 346 } 347 348 // Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the signing job was created. 349 func (o SigningJobOutput) CreatedAt() pulumi.StringOutput { 350 return o.ApplyT(func(v *SigningJob) pulumi.StringOutput { return v.CreatedAt }).(pulumi.StringOutput) 351 } 352 353 // The S3 bucket in which to save your signed object. See Destination below for details. 354 func (o SigningJobOutput) Destination() SigningJobDestinationOutput { 355 return o.ApplyT(func(v *SigningJob) SigningJobDestinationOutput { return v.Destination }).(SigningJobDestinationOutput) 356 } 357 358 // Set this argument to `true` to ignore signing job failures and retrieve failed status and reason. Default `false`. 359 func (o SigningJobOutput) IgnoreSigningJobFailure() pulumi.BoolPtrOutput { 360 return o.ApplyT(func(v *SigningJob) pulumi.BoolPtrOutput { return v.IgnoreSigningJobFailure }).(pulumi.BoolPtrOutput) 361 } 362 363 // The ID of the signing job on output. 364 func (o SigningJobOutput) JobId() pulumi.StringOutput { 365 return o.ApplyT(func(v *SigningJob) pulumi.StringOutput { return v.JobId }).(pulumi.StringOutput) 366 } 367 368 // The IAM entity that initiated the signing job. 369 func (o SigningJobOutput) JobInvoker() pulumi.StringOutput { 370 return o.ApplyT(func(v *SigningJob) pulumi.StringOutput { return v.JobInvoker }).(pulumi.StringOutput) 371 } 372 373 // The AWS account ID of the job owner. 374 func (o SigningJobOutput) JobOwner() pulumi.StringOutput { 375 return o.ApplyT(func(v *SigningJob) pulumi.StringOutput { return v.JobOwner }).(pulumi.StringOutput) 376 } 377 378 // A human-readable name for the signing platform associated with the signing job. 379 func (o SigningJobOutput) PlatformDisplayName() pulumi.StringOutput { 380 return o.ApplyT(func(v *SigningJob) pulumi.StringOutput { return v.PlatformDisplayName }).(pulumi.StringOutput) 381 } 382 383 // The platform to which your signed code image will be distributed. 384 func (o SigningJobOutput) PlatformId() pulumi.StringOutput { 385 return o.ApplyT(func(v *SigningJob) pulumi.StringOutput { return v.PlatformId }).(pulumi.StringOutput) 386 } 387 388 // The name of the profile to initiate the signing operation. 389 func (o SigningJobOutput) ProfileName() pulumi.StringOutput { 390 return o.ApplyT(func(v *SigningJob) pulumi.StringOutput { return v.ProfileName }).(pulumi.StringOutput) 391 } 392 393 // The version of the signing profile used to initiate the signing job. 394 func (o SigningJobOutput) ProfileVersion() pulumi.StringOutput { 395 return o.ApplyT(func(v *SigningJob) pulumi.StringOutput { return v.ProfileVersion }).(pulumi.StringOutput) 396 } 397 398 // The IAM principal that requested the signing job. 399 func (o SigningJobOutput) RequestedBy() pulumi.StringOutput { 400 return o.ApplyT(func(v *SigningJob) pulumi.StringOutput { return v.RequestedBy }).(pulumi.StringOutput) 401 } 402 403 // A revocation record if the signature generated by the signing job has been revoked. Contains a timestamp and the ID of the IAM entity that revoked the signature. 404 func (o SigningJobOutput) RevocationRecords() SigningJobRevocationRecordArrayOutput { 405 return o.ApplyT(func(v *SigningJob) SigningJobRevocationRecordArrayOutput { return v.RevocationRecords }).(SigningJobRevocationRecordArrayOutput) 406 } 407 408 // The time when the signature of a signing job expires. 409 func (o SigningJobOutput) SignatureExpiresAt() pulumi.StringOutput { 410 return o.ApplyT(func(v *SigningJob) pulumi.StringOutput { return v.SignatureExpiresAt }).(pulumi.StringOutput) 411 } 412 413 // Name of the S3 bucket where the signed code image is saved by code signing. 414 func (o SigningJobOutput) SignedObjects() SigningJobSignedObjectArrayOutput { 415 return o.ApplyT(func(v *SigningJob) SigningJobSignedObjectArrayOutput { return v.SignedObjects }).(SigningJobSignedObjectArrayOutput) 416 } 417 418 // The S3 bucket that contains the object to sign. See Source below for details. 419 func (o SigningJobOutput) Source() SigningJobSourceOutput { 420 return o.ApplyT(func(v *SigningJob) SigningJobSourceOutput { return v.Source }).(SigningJobSourceOutput) 421 } 422 423 // Status of the signing job. 424 func (o SigningJobOutput) Status() pulumi.StringOutput { 425 return o.ApplyT(func(v *SigningJob) pulumi.StringOutput { return v.Status }).(pulumi.StringOutput) 426 } 427 428 // String value that contains the status reason. 429 func (o SigningJobOutput) StatusReason() pulumi.StringOutput { 430 return o.ApplyT(func(v *SigningJob) pulumi.StringOutput { return v.StatusReason }).(pulumi.StringOutput) 431 } 432 433 type SigningJobArrayOutput struct{ *pulumi.OutputState } 434 435 func (SigningJobArrayOutput) ElementType() reflect.Type { 436 return reflect.TypeOf((*[]*SigningJob)(nil)).Elem() 437 } 438 439 func (o SigningJobArrayOutput) ToSigningJobArrayOutput() SigningJobArrayOutput { 440 return o 441 } 442 443 func (o SigningJobArrayOutput) ToSigningJobArrayOutputWithContext(ctx context.Context) SigningJobArrayOutput { 444 return o 445 } 446 447 func (o SigningJobArrayOutput) Index(i pulumi.IntInput) SigningJobOutput { 448 return pulumi.All(o, i).ApplyT(func(vs []interface{}) *SigningJob { 449 return vs[0].([]*SigningJob)[vs[1].(int)] 450 }).(SigningJobOutput) 451 } 452 453 type SigningJobMapOutput struct{ *pulumi.OutputState } 454 455 func (SigningJobMapOutput) ElementType() reflect.Type { 456 return reflect.TypeOf((*map[string]*SigningJob)(nil)).Elem() 457 } 458 459 func (o SigningJobMapOutput) ToSigningJobMapOutput() SigningJobMapOutput { 460 return o 461 } 462 463 func (o SigningJobMapOutput) ToSigningJobMapOutputWithContext(ctx context.Context) SigningJobMapOutput { 464 return o 465 } 466 467 func (o SigningJobMapOutput) MapIndex(k pulumi.StringInput) SigningJobOutput { 468 return pulumi.All(o, k).ApplyT(func(vs []interface{}) *SigningJob { 469 return vs[0].(map[string]*SigningJob)[vs[1].(string)] 470 }).(SigningJobOutput) 471 } 472 473 func init() { 474 pulumi.RegisterInputType(reflect.TypeOf((*SigningJobInput)(nil)).Elem(), &SigningJob{}) 475 pulumi.RegisterInputType(reflect.TypeOf((*SigningJobArrayInput)(nil)).Elem(), SigningJobArray{}) 476 pulumi.RegisterInputType(reflect.TypeOf((*SigningJobMapInput)(nil)).Elem(), SigningJobMap{}) 477 pulumi.RegisterOutputType(SigningJobOutput{}) 478 pulumi.RegisterOutputType(SigningJobArrayOutput{}) 479 pulumi.RegisterOutputType(SigningJobMapOutput{}) 480 }