aws-sdk-imagebuilder 1.55.0 → 1.56.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -515,7 +515,7 @@ module Aws::Imagebuilder
515
515
  # @option params [String] :change_description
516
516
  # The change description of the component. Describes what change has
517
517
  # been made in this version, or what makes this version different from
518
- # other versions of this component.
518
+ # other versions of the component.
519
519
  #
520
520
  # @option params [required, String] :platform
521
521
  # The operating system platform of the component.
@@ -920,6 +920,13 @@ module Aws::Imagebuilder
920
920
  # @option params [Types::ImageScanningConfiguration] :image_scanning_configuration
921
921
  # Contains settings for vulnerability scans.
922
922
  #
923
+ # @option params [Array<Types::WorkflowConfiguration>] :workflows
924
+ # Contains an array of workflow configuration objects.
925
+ #
926
+ # @option params [String] :execution_role
927
+ # The name or Amazon Resource Name (ARN) for the IAM role you create
928
+ # that grants Image Builder access to perform workflow actions.
929
+ #
923
930
  # @return [Types::CreateImageResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
924
931
  #
925
932
  # * {Types::CreateImageResponse#request_id #request_id} => String
@@ -949,6 +956,20 @@ module Aws::Imagebuilder
949
956
  # container_tags: ["NonEmptyString"],
950
957
  # },
951
958
  # },
959
+ # workflows: [
960
+ # {
961
+ # workflow_arn: "WorkflowVersionArnOrBuildVersionArn", # required
962
+ # parameters: [
963
+ # {
964
+ # name: "WorkflowParameterName", # required
965
+ # value: ["WorkflowParameterValue"], # required
966
+ # },
967
+ # ],
968
+ # parallel_group: "ParallelGroup",
969
+ # on_failure: "CONTINUE", # accepts CONTINUE, ABORT
970
+ # },
971
+ # ],
972
+ # execution_role: "RoleNameOrArn",
952
973
  # })
953
974
  #
954
975
  # @example Response structure
@@ -1025,6 +1046,13 @@ module Aws::Imagebuilder
1025
1046
  # @option params [Types::ImageScanningConfiguration] :image_scanning_configuration
1026
1047
  # Contains settings for vulnerability scans.
1027
1048
  #
1049
+ # @option params [Array<Types::WorkflowConfiguration>] :workflows
1050
+ # Contains an array of workflow configuration objects.
1051
+ #
1052
+ # @option params [String] :execution_role
1053
+ # The name or Amazon Resource Name (ARN) for the IAM role you create
1054
+ # that grants Image Builder access to perform workflow actions.
1055
+ #
1028
1056
  # @return [Types::CreateImagePipelineResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1029
1057
  #
1030
1058
  # * {Types::CreateImagePipelineResponse#request_id #request_id} => String
@@ -1062,6 +1090,20 @@ module Aws::Imagebuilder
1062
1090
  # container_tags: ["NonEmptyString"],
1063
1091
  # },
1064
1092
  # },
1093
+ # workflows: [
1094
+ # {
1095
+ # workflow_arn: "WorkflowVersionArnOrBuildVersionArn", # required
1096
+ # parameters: [
1097
+ # {
1098
+ # name: "WorkflowParameterName", # required
1099
+ # value: ["WorkflowParameterValue"], # required
1100
+ # },
1101
+ # ],
1102
+ # parallel_group: "ParallelGroup",
1103
+ # on_failure: "CONTINUE", # accepts CONTINUE, ABORT
1104
+ # },
1105
+ # ],
1106
+ # execution_role: "RoleNameOrArn",
1065
1107
  # })
1066
1108
  #
1067
1109
  # @example Response structure
@@ -1352,8 +1394,8 @@ module Aws::Imagebuilder
1352
1394
  # Indicates whether the lifecycle policy resource is enabled.
1353
1395
  #
1354
1396
  # @option params [required, String] :execution_role
1355
- # The role name or Amazon Resource Name (ARN) for the IAM role that
1356
- # grants Image Builder access to run lifecycle actions.
1397
+ # The name or Amazon Resource Name (ARN) for the IAM role you create
1398
+ # that grants Image Builder access to run lifecycle actions.
1357
1399
  #
1358
1400
  # @option params [required, String] :resource_type
1359
1401
  # The type of Image Builder resource that the lifecycle policy applies
@@ -1460,6 +1502,111 @@ module Aws::Imagebuilder
1460
1502
  req.send_request(options)
1461
1503
  end
1462
1504
 
1505
+ # Create a new workflow or a new version of an existing workflow.
1506
+ #
1507
+ # @option params [required, String] :name
1508
+ # The name of the workflow to create.
1509
+ #
1510
+ # @option params [required, String] :semantic_version
1511
+ # The semantic version of this workflow resource. The semantic version
1512
+ # syntax adheres to the following rules.
1513
+ #
1514
+ # <note markdown="1"> The semantic version has four nodes:
1515
+ # &lt;major&gt;.&lt;minor&gt;.&lt;patch&gt;/&lt;build&gt;. You can
1516
+ # assign values for the first three, and can filter on all of them.
1517
+ #
1518
+ # **Assignment:** For the first three nodes you can assign any positive
1519
+ # integer value, including zero, with an upper limit of 2^30-1, or
1520
+ # 1073741823 for each node. Image Builder automatically assigns the
1521
+ # build number to the fourth node.
1522
+ #
1523
+ # **Patterns:** You can use any numeric pattern that adheres to the
1524
+ # assignment requirements for the nodes that you can assign. For
1525
+ # example, you might choose a software version pattern, such as 1.0.0,
1526
+ # or a date, such as 2021.01.01.
1527
+ #
1528
+ # </note>
1529
+ #
1530
+ # @option params [String] :description
1531
+ # Describes the workflow.
1532
+ #
1533
+ # @option params [String] :change_description
1534
+ # Describes what change has been made in this version of the workflow,
1535
+ # or what makes this version different from other versions of the
1536
+ # workflow.
1537
+ #
1538
+ # @option params [String] :data
1539
+ # Contains the UTF-8 encoded YAML document content for the workflow.
1540
+ # Alternatively, you can specify the `uri` of a YAML document file
1541
+ # stored in Amazon S3. However, you cannot specify both properties.
1542
+ #
1543
+ # @option params [String] :uri
1544
+ # The `uri` of a YAML component document file. This must be an S3 URL
1545
+ # (`s3://bucket/key`), and the requester must have permission to access
1546
+ # the S3 bucket it points to. If you use Amazon S3, you can specify
1547
+ # component content up to your service quota.
1548
+ #
1549
+ # Alternatively, you can specify the YAML document inline, using the
1550
+ # component `data` property. You cannot specify both properties.
1551
+ #
1552
+ # @option params [String] :kms_key_id
1553
+ # The ID of the KMS key that is used to encrypt this workflow resource.
1554
+ #
1555
+ # @option params [Hash<String,String>] :tags
1556
+ # Tags that apply to the workflow resource.
1557
+ #
1558
+ # @option params [required, String] :client_token
1559
+ # Unique, case-sensitive identifier you provide to ensure idempotency of
1560
+ # the request. For more information, see [Ensuring idempotency][1] in
1561
+ # the *Amazon EC2 API Reference*.
1562
+ #
1563
+ # **A suitable default value is auto-generated.** You should normally
1564
+ # not need to pass this option.**
1565
+ #
1566
+ #
1567
+ #
1568
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
1569
+ #
1570
+ # @option params [required, String] :type
1571
+ # The phase in the image build process for which the workflow resource
1572
+ # is responsible.
1573
+ #
1574
+ # @return [Types::CreateWorkflowResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1575
+ #
1576
+ # * {Types::CreateWorkflowResponse#client_token #client_token} => String
1577
+ # * {Types::CreateWorkflowResponse#workflow_build_version_arn #workflow_build_version_arn} => String
1578
+ #
1579
+ # @example Request syntax with placeholder values
1580
+ #
1581
+ # resp = client.create_workflow({
1582
+ # name: "ResourceName", # required
1583
+ # semantic_version: "VersionNumber", # required
1584
+ # description: "NonEmptyString",
1585
+ # change_description: "NonEmptyString",
1586
+ # data: "InlineWorkflowData",
1587
+ # uri: "Uri",
1588
+ # kms_key_id: "NonEmptyString",
1589
+ # tags: {
1590
+ # "TagKey" => "TagValue",
1591
+ # },
1592
+ # client_token: "ClientToken", # required
1593
+ # type: "BUILD", # required, accepts BUILD, TEST, DISTRIBUTION
1594
+ # })
1595
+ #
1596
+ # @example Response structure
1597
+ #
1598
+ # resp.client_token #=> String
1599
+ # resp.workflow_build_version_arn #=> String
1600
+ #
1601
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/CreateWorkflow AWS API Documentation
1602
+ #
1603
+ # @overload create_workflow(params = {})
1604
+ # @param [Hash] params ({})
1605
+ def create_workflow(params = {}, options = {})
1606
+ req = build_request(:create_workflow, params)
1607
+ req.send_request(options)
1608
+ end
1609
+
1463
1610
  # Deletes a component build version.
1464
1611
  #
1465
1612
  # @option params [required, String] :component_build_version_arn
@@ -1721,6 +1868,34 @@ module Aws::Imagebuilder
1721
1868
  req.send_request(options)
1722
1869
  end
1723
1870
 
1871
+ # Deletes a specific workflow resource.
1872
+ #
1873
+ # @option params [required, String] :workflow_build_version_arn
1874
+ # The Amazon Resource Name (ARN) of the workflow resource to delete.
1875
+ #
1876
+ # @return [Types::DeleteWorkflowResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1877
+ #
1878
+ # * {Types::DeleteWorkflowResponse#workflow_build_version_arn #workflow_build_version_arn} => String
1879
+ #
1880
+ # @example Request syntax with placeholder values
1881
+ #
1882
+ # resp = client.delete_workflow({
1883
+ # workflow_build_version_arn: "WorkflowBuildVersionArn", # required
1884
+ # })
1885
+ #
1886
+ # @example Response structure
1887
+ #
1888
+ # resp.workflow_build_version_arn #=> String
1889
+ #
1890
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/DeleteWorkflow AWS API Documentation
1891
+ #
1892
+ # @overload delete_workflow(params = {})
1893
+ # @param [Hash] params ({})
1894
+ def delete_workflow(params = {}, options = {})
1895
+ req = build_request(:delete_workflow, params)
1896
+ req.send_request(options)
1897
+ end
1898
+
1724
1899
  # Gets a component object.
1725
1900
  #
1726
1901
  # @option params [required, String] :component_build_version_arn
@@ -2177,6 +2352,15 @@ module Aws::Imagebuilder
2177
2352
  # resp.image.image_scanning_configuration.ecr_configuration.container_tags[0] #=> String
2178
2353
  # resp.image.deprecation_time #=> Time
2179
2354
  # resp.image.lifecycle_execution_id #=> String
2355
+ # resp.image.execution_role #=> String
2356
+ # resp.image.workflows #=> Array
2357
+ # resp.image.workflows[0].workflow_arn #=> String
2358
+ # resp.image.workflows[0].parameters #=> Array
2359
+ # resp.image.workflows[0].parameters[0].name #=> String
2360
+ # resp.image.workflows[0].parameters[0].value #=> Array
2361
+ # resp.image.workflows[0].parameters[0].value[0] #=> String
2362
+ # resp.image.workflows[0].parallel_group #=> String
2363
+ # resp.image.workflows[0].on_failure #=> String, one of "CONTINUE", "ABORT"
2180
2364
  #
2181
2365
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/GetImage AWS API Documentation
2182
2366
  #
@@ -2232,6 +2416,15 @@ module Aws::Imagebuilder
2232
2416
  # resp.image_pipeline.image_scanning_configuration.ecr_configuration.repository_name #=> String
2233
2417
  # resp.image_pipeline.image_scanning_configuration.ecr_configuration.container_tags #=> Array
2234
2418
  # resp.image_pipeline.image_scanning_configuration.ecr_configuration.container_tags[0] #=> String
2419
+ # resp.image_pipeline.execution_role #=> String
2420
+ # resp.image_pipeline.workflows #=> Array
2421
+ # resp.image_pipeline.workflows[0].workflow_arn #=> String
2422
+ # resp.image_pipeline.workflows[0].parameters #=> Array
2423
+ # resp.image_pipeline.workflows[0].parameters[0].name #=> String
2424
+ # resp.image_pipeline.workflows[0].parameters[0].value #=> Array
2425
+ # resp.image_pipeline.workflows[0].parameters[0].value[0] #=> String
2426
+ # resp.image_pipeline.workflows[0].parallel_group #=> String
2427
+ # resp.image_pipeline.workflows[0].on_failure #=> String, one of "CONTINUE", "ABORT"
2235
2428
  #
2236
2429
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/GetImagePipeline AWS API Documentation
2237
2430
  #
@@ -2518,6 +2711,54 @@ module Aws::Imagebuilder
2518
2711
  req.send_request(options)
2519
2712
  end
2520
2713
 
2714
+ # Get a workflow resource object.
2715
+ #
2716
+ # @option params [required, String] :workflow_build_version_arn
2717
+ # The Amazon Resource Name (ARN) of the workflow resource that you want
2718
+ # to get.
2719
+ #
2720
+ # @return [Types::GetWorkflowResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2721
+ #
2722
+ # * {Types::GetWorkflowResponse#workflow #workflow} => Types::Workflow
2723
+ #
2724
+ # @example Request syntax with placeholder values
2725
+ #
2726
+ # resp = client.get_workflow({
2727
+ # workflow_build_version_arn: "WorkflowVersionArnOrBuildVersionArn", # required
2728
+ # })
2729
+ #
2730
+ # @example Response structure
2731
+ #
2732
+ # resp.workflow.arn #=> String
2733
+ # resp.workflow.name #=> String
2734
+ # resp.workflow.version #=> String
2735
+ # resp.workflow.description #=> String
2736
+ # resp.workflow.change_description #=> String
2737
+ # resp.workflow.type #=> String, one of "BUILD", "TEST", "DISTRIBUTION"
2738
+ # resp.workflow.state.status #=> String, one of "DEPRECATED"
2739
+ # resp.workflow.state.reason #=> String
2740
+ # resp.workflow.owner #=> String
2741
+ # resp.workflow.data #=> String
2742
+ # resp.workflow.kms_key_id #=> String
2743
+ # resp.workflow.date_created #=> String
2744
+ # resp.workflow.tags #=> Hash
2745
+ # resp.workflow.tags["TagKey"] #=> String
2746
+ # resp.workflow.parameters #=> Array
2747
+ # resp.workflow.parameters[0].name #=> String
2748
+ # resp.workflow.parameters[0].type #=> String
2749
+ # resp.workflow.parameters[0].default_value #=> Array
2750
+ # resp.workflow.parameters[0].default_value[0] #=> String
2751
+ # resp.workflow.parameters[0].description #=> String
2752
+ #
2753
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/GetWorkflow AWS API Documentation
2754
+ #
2755
+ # @overload get_workflow(params = {})
2756
+ # @param [Hash] params ({})
2757
+ def get_workflow(params = {}, options = {})
2758
+ req = build_request(:get_workflow, params)
2759
+ req.send_request(options)
2760
+ end
2761
+
2521
2762
  # Get the runtime information that was logged for a specific runtime
2522
2763
  # instance of the workflow.
2523
2764
  #
@@ -2540,6 +2781,7 @@ module Aws::Imagebuilder
2540
2781
  # * {Types::GetWorkflowExecutionResponse#total_steps_skipped #total_steps_skipped} => Integer
2541
2782
  # * {Types::GetWorkflowExecutionResponse#start_time #start_time} => String
2542
2783
  # * {Types::GetWorkflowExecutionResponse#end_time #end_time} => String
2784
+ # * {Types::GetWorkflowExecutionResponse#parallel_group #parallel_group} => String
2543
2785
  #
2544
2786
  # @example Request syntax with placeholder values
2545
2787
  #
@@ -2554,7 +2796,7 @@ module Aws::Imagebuilder
2554
2796
  # resp.workflow_execution_id #=> String
2555
2797
  # resp.image_build_version_arn #=> String
2556
2798
  # resp.type #=> String, one of "BUILD", "TEST", "DISTRIBUTION"
2557
- # resp.status #=> String, one of "PENDING", "SKIPPED", "RUNNING", "COMPLETED", "FAILED", "ROLLBACK_IN_PROGRESS", "ROLLBACK_COMPLETED"
2799
+ # resp.status #=> String, one of "PENDING", "SKIPPED", "RUNNING", "COMPLETED", "FAILED", "ROLLBACK_IN_PROGRESS", "ROLLBACK_COMPLETED", "CANCELLED"
2558
2800
  # resp.message #=> String
2559
2801
  # resp.total_step_count #=> Integer
2560
2802
  # resp.total_steps_succeeded #=> Integer
@@ -2562,6 +2804,7 @@ module Aws::Imagebuilder
2562
2804
  # resp.total_steps_skipped #=> Integer
2563
2805
  # resp.start_time #=> String
2564
2806
  # resp.end_time #=> String
2807
+ # resp.parallel_group #=> String
2565
2808
  #
2566
2809
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/GetWorkflowExecution AWS API Documentation
2567
2810
  #
@@ -2615,7 +2858,7 @@ module Aws::Imagebuilder
2615
2858
  # resp.name #=> String
2616
2859
  # resp.description #=> String
2617
2860
  # resp.action #=> String
2618
- # resp.status #=> String, one of "PENDING", "SKIPPED", "RUNNING", "COMPLETED", "FAILED"
2861
+ # resp.status #=> String, one of "PENDING", "SKIPPED", "RUNNING", "COMPLETED", "FAILED", "CANCELLED"
2619
2862
  # resp.rollback_status #=> String, one of "RUNNING", "COMPLETED", "SKIPPED", "FAILED"
2620
2863
  # resp.message #=> String
2621
2864
  # resp.inputs #=> String
@@ -2662,7 +2905,7 @@ module Aws::Imagebuilder
2662
2905
  # @option params [String] :change_description
2663
2906
  # The change description of the component. This description indicates
2664
2907
  # the change that has been made in this version, or what makes this
2665
- # version different from other versions of this component.
2908
+ # version different from other versions of the component.
2666
2909
  #
2667
2910
  # @option params [required, String] :type
2668
2911
  # The type of the component denotes whether the component is used to
@@ -3446,6 +3689,15 @@ module Aws::Imagebuilder
3446
3689
  # resp.image_pipeline_list[0].image_scanning_configuration.ecr_configuration.repository_name #=> String
3447
3690
  # resp.image_pipeline_list[0].image_scanning_configuration.ecr_configuration.container_tags #=> Array
3448
3691
  # resp.image_pipeline_list[0].image_scanning_configuration.ecr_configuration.container_tags[0] #=> String
3692
+ # resp.image_pipeline_list[0].execution_role #=> String
3693
+ # resp.image_pipeline_list[0].workflows #=> Array
3694
+ # resp.image_pipeline_list[0].workflows[0].workflow_arn #=> String
3695
+ # resp.image_pipeline_list[0].workflows[0].parameters #=> Array
3696
+ # resp.image_pipeline_list[0].workflows[0].parameters[0].name #=> String
3697
+ # resp.image_pipeline_list[0].workflows[0].parameters[0].value #=> Array
3698
+ # resp.image_pipeline_list[0].workflows[0].parameters[0].value[0] #=> String
3699
+ # resp.image_pipeline_list[0].workflows[0].parallel_group #=> String
3700
+ # resp.image_pipeline_list[0].workflows[0].on_failure #=> String, one of "CONTINUE", "ABORT"
3449
3701
  # resp.next_token #=> String
3450
3702
  #
3451
3703
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ListImagePipelines AWS API Documentation
@@ -4072,6 +4324,105 @@ module Aws::Imagebuilder
4072
4324
  req.send_request(options)
4073
4325
  end
4074
4326
 
4327
+ # Get a list of workflow steps that are waiting for action for workflows
4328
+ # in your Amazon Web Services account.
4329
+ #
4330
+ # @option params [Integer] :max_results
4331
+ # The maximum items to return in a request.
4332
+ #
4333
+ # @option params [String] :next_token
4334
+ # A token to specify where to start paginating. This is the nextToken
4335
+ # from a previously truncated response.
4336
+ #
4337
+ # @return [Types::ListWaitingWorkflowStepsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4338
+ #
4339
+ # * {Types::ListWaitingWorkflowStepsResponse#steps #steps} => Array&lt;Types::WorkflowStepExecution&gt;
4340
+ # * {Types::ListWaitingWorkflowStepsResponse#next_token #next_token} => String
4341
+ #
4342
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4343
+ #
4344
+ # @example Request syntax with placeholder values
4345
+ #
4346
+ # resp = client.list_waiting_workflow_steps({
4347
+ # max_results: 1,
4348
+ # next_token: "PaginationToken",
4349
+ # })
4350
+ #
4351
+ # @example Response structure
4352
+ #
4353
+ # resp.steps #=> Array
4354
+ # resp.steps[0].step_execution_id #=> String
4355
+ # resp.steps[0].image_build_version_arn #=> String
4356
+ # resp.steps[0].workflow_execution_id #=> String
4357
+ # resp.steps[0].workflow_build_version_arn #=> String
4358
+ # resp.steps[0].name #=> String
4359
+ # resp.steps[0].action #=> String
4360
+ # resp.steps[0].start_time #=> String
4361
+ # resp.next_token #=> String
4362
+ #
4363
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ListWaitingWorkflowSteps AWS API Documentation
4364
+ #
4365
+ # @overload list_waiting_workflow_steps(params = {})
4366
+ # @param [Hash] params ({})
4367
+ def list_waiting_workflow_steps(params = {}, options = {})
4368
+ req = build_request(:list_waiting_workflow_steps, params)
4369
+ req.send_request(options)
4370
+ end
4371
+
4372
+ # Returns a list of build versions for a specific workflow resource.
4373
+ #
4374
+ # @option params [required, String] :workflow_version_arn
4375
+ # The Amazon Resource Name (ARN) of the workflow resource for which to
4376
+ # get a list of build versions.
4377
+ #
4378
+ # @option params [Integer] :max_results
4379
+ # The maximum items to return in a request.
4380
+ #
4381
+ # @option params [String] :next_token
4382
+ # A token to specify where to start paginating. This is the nextToken
4383
+ # from a previously truncated response.
4384
+ #
4385
+ # @return [Types::ListWorkflowBuildVersionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4386
+ #
4387
+ # * {Types::ListWorkflowBuildVersionsResponse#workflow_summary_list #workflow_summary_list} => Array&lt;Types::WorkflowSummary&gt;
4388
+ # * {Types::ListWorkflowBuildVersionsResponse#next_token #next_token} => String
4389
+ #
4390
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4391
+ #
4392
+ # @example Request syntax with placeholder values
4393
+ #
4394
+ # resp = client.list_workflow_build_versions({
4395
+ # workflow_version_arn: "WorkflowWildcardVersionArn", # required
4396
+ # max_results: 1,
4397
+ # next_token: "PaginationToken",
4398
+ # })
4399
+ #
4400
+ # @example Response structure
4401
+ #
4402
+ # resp.workflow_summary_list #=> Array
4403
+ # resp.workflow_summary_list[0].arn #=> String
4404
+ # resp.workflow_summary_list[0].name #=> String
4405
+ # resp.workflow_summary_list[0].version #=> String
4406
+ # resp.workflow_summary_list[0].description #=> String
4407
+ # resp.workflow_summary_list[0].change_description #=> String
4408
+ # resp.workflow_summary_list[0].type #=> String, one of "BUILD", "TEST", "DISTRIBUTION"
4409
+ # resp.workflow_summary_list[0].owner #=> String
4410
+ # resp.workflow_summary_list[0].state.status #=> String, one of "DEPRECATED"
4411
+ # resp.workflow_summary_list[0].state.reason #=> String
4412
+ # resp.workflow_summary_list[0].date_created #=> String
4413
+ # resp.workflow_summary_list[0].tags #=> Hash
4414
+ # resp.workflow_summary_list[0].tags["TagKey"] #=> String
4415
+ # resp.next_token #=> String
4416
+ #
4417
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ListWorkflowBuildVersions AWS API Documentation
4418
+ #
4419
+ # @overload list_workflow_build_versions(params = {})
4420
+ # @param [Hash] params ({})
4421
+ def list_workflow_build_versions(params = {}, options = {})
4422
+ req = build_request(:list_workflow_build_versions, params)
4423
+ req.send_request(options)
4424
+ end
4425
+
4075
4426
  # Returns a list of workflow runtime instance metadata objects for a
4076
4427
  # specific image build version.
4077
4428
  #
@@ -4111,7 +4462,7 @@ module Aws::Imagebuilder
4111
4462
  # resp.workflow_executions[0].workflow_build_version_arn #=> String
4112
4463
  # resp.workflow_executions[0].workflow_execution_id #=> String
4113
4464
  # resp.workflow_executions[0].type #=> String, one of "BUILD", "TEST", "DISTRIBUTION"
4114
- # resp.workflow_executions[0].status #=> String, one of "PENDING", "SKIPPED", "RUNNING", "COMPLETED", "FAILED", "ROLLBACK_IN_PROGRESS", "ROLLBACK_COMPLETED"
4465
+ # resp.workflow_executions[0].status #=> String, one of "PENDING", "SKIPPED", "RUNNING", "COMPLETED", "FAILED", "ROLLBACK_IN_PROGRESS", "ROLLBACK_COMPLETED", "CANCELLED"
4115
4466
  # resp.workflow_executions[0].message #=> String
4116
4467
  # resp.workflow_executions[0].total_step_count #=> Integer
4117
4468
  # resp.workflow_executions[0].total_steps_succeeded #=> Integer
@@ -4119,6 +4470,7 @@ module Aws::Imagebuilder
4119
4470
  # resp.workflow_executions[0].total_steps_skipped #=> Integer
4120
4471
  # resp.workflow_executions[0].start_time #=> String
4121
4472
  # resp.workflow_executions[0].end_time #=> String
4473
+ # resp.workflow_executions[0].parallel_group #=> String
4122
4474
  # resp.image_build_version_arn #=> String
4123
4475
  # resp.message #=> String
4124
4476
  # resp.next_token #=> String
@@ -4132,8 +4484,8 @@ module Aws::Imagebuilder
4132
4484
  req.send_request(options)
4133
4485
  end
4134
4486
 
4135
- # Shows runtime data for each step in a runtime instance of the workflow
4136
- # that you specify in the request.
4487
+ # Returns runtime data for each step in a runtime instance of the
4488
+ # workflow that you specify in the request.
4137
4489
  #
4138
4490
  # @option params [Integer] :max_results
4139
4491
  # The maximum items to return in a request.
@@ -4174,7 +4526,7 @@ module Aws::Imagebuilder
4174
4526
  # resp.steps[0].name #=> String
4175
4527
  # resp.steps[0].description #=> String
4176
4528
  # resp.steps[0].action #=> String
4177
- # resp.steps[0].status #=> String, one of "PENDING", "SKIPPED", "RUNNING", "COMPLETED", "FAILED"
4529
+ # resp.steps[0].status #=> String, one of "PENDING", "SKIPPED", "RUNNING", "COMPLETED", "FAILED", "CANCELLED"
4178
4530
  # resp.steps[0].rollback_status #=> String, one of "RUNNING", "COMPLETED", "SKIPPED", "FAILED"
4179
4531
  # resp.steps[0].message #=> String
4180
4532
  # resp.steps[0].inputs #=> String
@@ -4196,6 +4548,68 @@ module Aws::Imagebuilder
4196
4548
  req.send_request(options)
4197
4549
  end
4198
4550
 
4551
+ # Lists workflow build versions based on filtering parameters.
4552
+ #
4553
+ # @option params [String] :owner
4554
+ # Used to get a list of workflow build version filtered by the identity
4555
+ # of the creator.
4556
+ #
4557
+ # @option params [Array<Types::Filter>] :filters
4558
+ # Used to streamline search results.
4559
+ #
4560
+ # @option params [Boolean] :by_name
4561
+ # Specify all or part of the workflow name to streamline results.
4562
+ #
4563
+ # @option params [Integer] :max_results
4564
+ # The maximum items to return in a request.
4565
+ #
4566
+ # @option params [String] :next_token
4567
+ # A token to specify where to start paginating. This is the nextToken
4568
+ # from a previously truncated response.
4569
+ #
4570
+ # @return [Types::ListWorkflowsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4571
+ #
4572
+ # * {Types::ListWorkflowsResponse#workflow_version_list #workflow_version_list} => Array&lt;Types::WorkflowVersion&gt;
4573
+ # * {Types::ListWorkflowsResponse#next_token #next_token} => String
4574
+ #
4575
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4576
+ #
4577
+ # @example Request syntax with placeholder values
4578
+ #
4579
+ # resp = client.list_workflows({
4580
+ # owner: "Self", # accepts Self, Shared, Amazon, ThirdParty
4581
+ # filters: [
4582
+ # {
4583
+ # name: "FilterName",
4584
+ # values: ["FilterValue"],
4585
+ # },
4586
+ # ],
4587
+ # by_name: false,
4588
+ # max_results: 1,
4589
+ # next_token: "PaginationToken",
4590
+ # })
4591
+ #
4592
+ # @example Response structure
4593
+ #
4594
+ # resp.workflow_version_list #=> Array
4595
+ # resp.workflow_version_list[0].arn #=> String
4596
+ # resp.workflow_version_list[0].name #=> String
4597
+ # resp.workflow_version_list[0].version #=> String
4598
+ # resp.workflow_version_list[0].description #=> String
4599
+ # resp.workflow_version_list[0].type #=> String, one of "BUILD", "TEST", "DISTRIBUTION"
4600
+ # resp.workflow_version_list[0].owner #=> String
4601
+ # resp.workflow_version_list[0].date_created #=> String
4602
+ # resp.next_token #=> String
4603
+ #
4604
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ListWorkflows AWS API Documentation
4605
+ #
4606
+ # @overload list_workflows(params = {})
4607
+ # @param [Hash] params ({})
4608
+ def list_workflows(params = {}, options = {})
4609
+ req = build_request(:list_workflows, params)
4610
+ req.send_request(options)
4611
+ end
4612
+
4199
4613
  # Applies a policy to a component. We recommend that you call the RAM
4200
4614
  # API [CreateResourceShare][1] to share resources. If you call the Image
4201
4615
  # Builder API `PutComponentPolicy`, you must also call the RAM API
@@ -4372,6 +4786,66 @@ module Aws::Imagebuilder
4372
4786
  req.send_request(options)
4373
4787
  end
4374
4788
 
4789
+ # Pauses or resumes image creation when the associated workflow runs a
4790
+ # `WaitForAction` step.
4791
+ #
4792
+ # @option params [required, String] :step_execution_id
4793
+ # Uniquely identifies the workflow step that sent the step action.
4794
+ #
4795
+ # @option params [required, String] :image_build_version_arn
4796
+ # The Amazon Resource Name (ARN) of the image build version to send
4797
+ # action for.
4798
+ #
4799
+ # @option params [required, String] :action
4800
+ # The action for the image creation process to take while a workflow
4801
+ # `WaitForAction` step waits for an asynchronous action to complete.
4802
+ #
4803
+ # @option params [String] :reason
4804
+ # The reason why this action is sent.
4805
+ #
4806
+ # @option params [required, String] :client_token
4807
+ # Unique, case-sensitive identifier you provide to ensure idempotency of
4808
+ # the request. For more information, see [Ensuring idempotency][1] in
4809
+ # the *Amazon EC2 API Reference*.
4810
+ #
4811
+ # **A suitable default value is auto-generated.** You should normally
4812
+ # not need to pass this option.**
4813
+ #
4814
+ #
4815
+ #
4816
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
4817
+ #
4818
+ # @return [Types::SendWorkflowStepActionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4819
+ #
4820
+ # * {Types::SendWorkflowStepActionResponse#step_execution_id #step_execution_id} => String
4821
+ # * {Types::SendWorkflowStepActionResponse#image_build_version_arn #image_build_version_arn} => String
4822
+ # * {Types::SendWorkflowStepActionResponse#client_token #client_token} => String
4823
+ #
4824
+ # @example Request syntax with placeholder values
4825
+ #
4826
+ # resp = client.send_workflow_step_action({
4827
+ # step_execution_id: "WorkflowStepExecutionId", # required
4828
+ # image_build_version_arn: "ImageBuildVersionArn", # required
4829
+ # action: "RESUME", # required, accepts RESUME, STOP
4830
+ # reason: "NonEmptyString",
4831
+ # client_token: "ClientToken", # required
4832
+ # })
4833
+ #
4834
+ # @example Response structure
4835
+ #
4836
+ # resp.step_execution_id #=> String
4837
+ # resp.image_build_version_arn #=> String
4838
+ # resp.client_token #=> String
4839
+ #
4840
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/SendWorkflowStepAction AWS API Documentation
4841
+ #
4842
+ # @overload send_workflow_step_action(params = {})
4843
+ # @param [Hash] params ({})
4844
+ def send_workflow_step_action(params = {}, options = {})
4845
+ req = build_request(:send_workflow_step_action, params)
4846
+ req.send_request(options)
4847
+ end
4848
+
4375
4849
  # Manually triggers a pipeline to create an image.
4376
4850
  #
4377
4851
  # @option params [required, String] :image_pipeline_arn
@@ -4671,7 +5145,9 @@ module Aws::Imagebuilder
4671
5145
  end
4672
5146
 
4673
5147
  # Updates an image pipeline. Image pipelines enable you to automate the
4674
- # creation and distribution of images.
5148
+ # creation and distribution of images. You must specify exactly one
5149
+ # recipe for your image, using either a `containerRecipeArn` or an
5150
+ # `imageRecipeArn`.
4675
5151
  #
4676
5152
  # <note markdown="1"> UpdateImagePipeline does not support selective updates for the
4677
5153
  # pipeline. You must specify all of the required properties in the
@@ -4733,6 +5209,13 @@ module Aws::Imagebuilder
4733
5209
  # @option params [Types::ImageScanningConfiguration] :image_scanning_configuration
4734
5210
  # Contains settings for vulnerability scans.
4735
5211
  #
5212
+ # @option params [Array<Types::WorkflowConfiguration>] :workflows
5213
+ # Contains the workflows to run for the pipeline.
5214
+ #
5215
+ # @option params [String] :execution_role
5216
+ # The name or Amazon Resource Name (ARN) for the IAM role you create
5217
+ # that grants Image Builder access to perform workflow actions.
5218
+ #
4736
5219
  # @return [Types::UpdateImagePipelineResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4737
5220
  #
4738
5221
  # * {Types::UpdateImagePipelineResponse#request_id #request_id} => String
@@ -4767,6 +5250,20 @@ module Aws::Imagebuilder
4767
5250
  # container_tags: ["NonEmptyString"],
4768
5251
  # },
4769
5252
  # },
5253
+ # workflows: [
5254
+ # {
5255
+ # workflow_arn: "WorkflowVersionArnOrBuildVersionArn", # required
5256
+ # parameters: [
5257
+ # {
5258
+ # name: "WorkflowParameterName", # required
5259
+ # value: ["WorkflowParameterValue"], # required
5260
+ # },
5261
+ # ],
5262
+ # parallel_group: "ParallelGroup",
5263
+ # on_failure: "CONTINUE", # accepts CONTINUE, ABORT
5264
+ # },
5265
+ # ],
5266
+ # execution_role: "RoleNameOrArn",
4770
5267
  # })
4771
5268
  #
4772
5269
  # @example Response structure
@@ -4929,8 +5426,8 @@ module Aws::Imagebuilder
4929
5426
  # Indicates whether the lifecycle policy resource is enabled.
4930
5427
  #
4931
5428
  # @option params [required, String] :execution_role
4932
- # The name of the IAM role that Image Builder should use to update the
4933
- # lifecycle policy.
5429
+ # The name or Amazon Resource Name (ARN) of the IAM role that Image
5430
+ # Builder uses to update the lifecycle policy.
4934
5431
  #
4935
5432
  # @option params [required, String] :resource_type
4936
5433
  # The type of image resource that the lifecycle policy applies to.
@@ -5040,7 +5537,7 @@ module Aws::Imagebuilder
5040
5537
  params: params,
5041
5538
  config: config)
5042
5539
  context[:gem_name] = 'aws-sdk-imagebuilder'
5043
- context[:gem_version] = '1.55.0'
5540
+ context[:gem_version] = '1.56.0'
5044
5541
  Seahorse::Client::Request.new(handlers, context)
5045
5542
  end
5046
5543