Skip to content

Commit

Permalink
Add macOS platform and instance placement options
Browse files Browse the repository at this point in the history
Updating invoke regex to support imported models for converse API
Adds the BatchAddRole and BatchRemoveRole APIs.
This release adds support for Query Insights, a feature that provides details of query execution, enabling users to identify areas for improvement to optimize their queries, resulting in improved query performance and lower query costs.
Add AuthSecretsManagerArn optional parameter to batch job APIs, expand batch parameter limits, and introduce clientToken constraints.
Global clusters now expose the Endpoint attribute as one of its fields. It is a Read/Write endpoint for the global cluster which resolves to the Global Cluster writer instance.
  • Loading branch information
aws-sdk-cpp-automation committed Oct 22, 2024
1 parent ccedfe0 commit 2345a84
Show file tree
Hide file tree
Showing 89 changed files with 3,969 additions and 180 deletions.
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.11.431
1.11.432
Original file line number Diff line number Diff line change
Expand Up @@ -1075,15 +1075,8 @@ namespace imagebuilder
}

/**
* <p>Returns the list of component build versions for the specified semantic
* version.</p> <p>The semantic version has four nodes:
* &lt;major&gt;.&lt;minor&gt;.&lt;patch&gt;/&lt;build&gt;. You can assign values
* for the first three, and can filter on all of them.</p> <p> <b>Filtering:</b>
* With semantic versioning, you have the flexibility to use wildcards (x) to
* specify the most recent versions or nodes when selecting the base image or
* components for your recipe. When you use a wildcard in any node, all nodes to
* the right of the first wildcard must also be wildcards.</p> <p><h3>See
* Also:</h3> <a
* <p>Returns the list of component build versions for the specified component
* version Amazon Resource Name (ARN).</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ListComponentBuildVersions">AWS
* API Reference</a></p>
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -249,7 +249,7 @@ namespace Model

///@{
/**
* <p>Identifies which KMS key is used to encrypt the container image.</p>
* <p>Identifies which KMS key is used to encrypt the Dockerfile template.</p>
*/
inline const Aws::String& GetKmsKeyId() const{ return m_kmsKeyId; }
inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
#include <aws/imagebuilder/model/Logging.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <aws/imagebuilder/model/InstanceMetadataOptions.h>
#include <aws/imagebuilder/model/Placement.h>
#include <utility>
#include <aws/core/utils/UUID.h>

Expand Down Expand Up @@ -188,7 +189,8 @@ namespace Model

///@{
/**
* <p>The tags attached to the resource created by Image Builder.</p>
* <p>The metadata tags to assign to the Amazon EC2 instance that Image Builder
* launches during the build process. Tags are formatted as key value pairs.</p>
*/
inline const Aws::Map<Aws::String, Aws::String>& GetResourceTags() const{ return m_resourceTags; }
inline bool ResourceTagsHasBeenSet() const { return m_resourceTagsHasBeenSet; }
Expand Down Expand Up @@ -220,7 +222,8 @@ namespace Model

///@{
/**
* <p>The tags of the infrastructure configuration.</p>
* <p>The metadata tags to assign to the infrastructure configuration resource that
* Image Builder creates as output. Tags are formatted as key value pairs.</p>
*/
inline const Aws::Map<Aws::String, Aws::String>& GetTags() const{ return m_tags; }
inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
Expand All @@ -237,6 +240,19 @@ namespace Model
inline CreateInfrastructureConfigurationRequest& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; }
///@}

///@{
/**
* <p>The instance placement settings that define where the instances that are
* launched from your image will run.</p>
*/
inline const Placement& GetPlacement() const{ return m_placement; }
inline bool PlacementHasBeenSet() const { return m_placementHasBeenSet; }
inline void SetPlacement(const Placement& value) { m_placementHasBeenSet = true; m_placement = value; }
inline void SetPlacement(Placement&& value) { m_placementHasBeenSet = true; m_placement = std::move(value); }
inline CreateInfrastructureConfigurationRequest& WithPlacement(const Placement& value) { SetPlacement(value); return *this;}
inline CreateInfrastructureConfigurationRequest& WithPlacement(Placement&& value) { SetPlacement(std::move(value)); return *this;}
///@}

///@{
/**
* <p>Unique, case-sensitive identifier you provide to ensure idempotency of the
Expand Down Expand Up @@ -294,6 +310,9 @@ namespace Model
Aws::Map<Aws::String, Aws::String> m_tags;
bool m_tagsHasBeenSet = false;

Placement m_placement;
bool m_placementHasBeenSet = false;

Aws::String m_clientToken;
bool m_clientTokenHasBeenSet = false;
};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,8 +61,8 @@ namespace Model

///@{
/**
* <p>Tags for Image Builder to apply to the output container image that &amp;INS;
* scans. Tags can help you identify and manage your scanned images.</p>
* <p>Tags for Image Builder to apply to the output container image that Amazon
* Inspector scans. Tags can help you identify and manage your scanned images.</p>
*/
inline const Aws::Vector<Aws::String>& GetContainerTags() const{ return m_containerTags; }
inline bool ContainerTagsHasBeenSet() const { return m_containerTagsHasBeenSet; }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
#include <aws/imagebuilder/model/Logging.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <aws/imagebuilder/model/InstanceMetadataOptions.h>
#include <aws/imagebuilder/model/Placement.h>
#include <utility>

namespace Aws
Expand Down Expand Up @@ -274,6 +275,19 @@ namespace Model
inline InfrastructureConfiguration& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; }
inline InfrastructureConfiguration& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; }
///@}

///@{
/**
* <p>The instance placement settings that define where the instances that are
* launched from your image will run.</p>
*/
inline const Placement& GetPlacement() const{ return m_placement; }
inline bool PlacementHasBeenSet() const { return m_placementHasBeenSet; }
inline void SetPlacement(const Placement& value) { m_placementHasBeenSet = true; m_placement = value; }
inline void SetPlacement(Placement&& value) { m_placementHasBeenSet = true; m_placement = std::move(value); }
inline InfrastructureConfiguration& WithPlacement(const Placement& value) { SetPlacement(value); return *this;}
inline InfrastructureConfiguration& WithPlacement(Placement&& value) { SetPlacement(std::move(value)); return *this;}
///@}
private:

Aws::String m_arn;
Expand Down Expand Up @@ -323,6 +337,9 @@ namespace Model

Aws::Map<Aws::String, Aws::String> m_tags;
bool m_tagsHasBeenSet = false;

Placement m_placement;
bool m_placementHasBeenSet = false;
};

} // namespace Model
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/imagebuilder/model/Placement.h>
#include <utility>

namespace Aws
Expand Down Expand Up @@ -176,6 +177,19 @@ namespace Model
inline InfrastructureConfigurationSummary& WithInstanceProfileName(Aws::String&& value) { SetInstanceProfileName(std::move(value)); return *this;}
inline InfrastructureConfigurationSummary& WithInstanceProfileName(const char* value) { SetInstanceProfileName(value); return *this;}
///@}

///@{
/**
* <p>The instance placement settings that define where the instances that are
* launched from your image will run.</p>
*/
inline const Placement& GetPlacement() const{ return m_placement; }
inline bool PlacementHasBeenSet() const { return m_placementHasBeenSet; }
inline void SetPlacement(const Placement& value) { m_placementHasBeenSet = true; m_placement = value; }
inline void SetPlacement(Placement&& value) { m_placementHasBeenSet = true; m_placement = std::move(value); }
inline InfrastructureConfigurationSummary& WithPlacement(const Placement& value) { SetPlacement(value); return *this;}
inline InfrastructureConfigurationSummary& WithPlacement(Placement&& value) { SetPlacement(std::move(value)); return *this;}
///@}
private:

Aws::String m_arn;
Expand Down Expand Up @@ -204,6 +218,9 @@ namespace Model

Aws::String m_instanceProfileName;
bool m_instanceProfileNameHasBeenSet = false;

Placement m_placement;
bool m_placementHasBeenSet = false;
};

} // namespace Model
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/

#pragma once
#include <aws/imagebuilder/Imagebuilder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/imagebuilder/model/TenancyType.h>
#include <utility>

namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace imagebuilder
{
namespace Model
{

/**
* <p>By default, EC2 instances run on shared tenancy hardware. This means that
* multiple Amazon Web Services accounts might share the same physical hardware.
* When you use dedicated hardware, the physical server that hosts your instances
* is dedicated to your Amazon Web Services account. Instance placement settings
* contain the details for the physical hardware where instances that Image Builder
* launches during image creation will run.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/Placement">AWS
* API Reference</a></p>
*/
class Placement
{
public:
AWS_IMAGEBUILDER_API Placement();
AWS_IMAGEBUILDER_API Placement(Aws::Utils::Json::JsonView jsonValue);
AWS_IMAGEBUILDER_API Placement& operator=(Aws::Utils::Json::JsonView jsonValue);
AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const;


///@{
/**
* <p>The Availability Zone where your build and test instances will launch.</p>
*/
inline const Aws::String& GetAvailabilityZone() const{ return m_availabilityZone; }
inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
inline void SetAvailabilityZone(const Aws::String& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = value; }
inline void SetAvailabilityZone(Aws::String&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = std::move(value); }
inline void SetAvailabilityZone(const char* value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone.assign(value); }
inline Placement& WithAvailabilityZone(const Aws::String& value) { SetAvailabilityZone(value); return *this;}
inline Placement& WithAvailabilityZone(Aws::String&& value) { SetAvailabilityZone(std::move(value)); return *this;}
inline Placement& WithAvailabilityZone(const char* value) { SetAvailabilityZone(value); return *this;}
///@}

///@{
/**
* <p>The tenancy of the instance. An instance with a tenancy of
* <code>dedicated</code> runs on single-tenant hardware. An instance with a
* tenancy of <code>host</code> runs on a Dedicated Host.</p> <p>If tenancy is set
* to <code>host</code>, then you can optionally specify one target for placement –
* either host ID or host resource group ARN. If automatic placement is enabled for
* your host, and you don't specify any placement target, Amazon EC2 will try to
* find an available host for your build and test instances.</p>
*/
inline const TenancyType& GetTenancy() const{ return m_tenancy; }
inline bool TenancyHasBeenSet() const { return m_tenancyHasBeenSet; }
inline void SetTenancy(const TenancyType& value) { m_tenancyHasBeenSet = true; m_tenancy = value; }
inline void SetTenancy(TenancyType&& value) { m_tenancyHasBeenSet = true; m_tenancy = std::move(value); }
inline Placement& WithTenancy(const TenancyType& value) { SetTenancy(value); return *this;}
inline Placement& WithTenancy(TenancyType&& value) { SetTenancy(std::move(value)); return *this;}
///@}

///@{
/**
* <p>The ID of the Dedicated Host on which build and test instances run. This only
* applies if <code>tenancy</code> is <code>host</code>. If you specify the host
* ID, you must not specify the resource group ARN. If you specify both, Image
* Builder returns an error.</p>
*/
inline const Aws::String& GetHostId() const{ return m_hostId; }
inline bool HostIdHasBeenSet() const { return m_hostIdHasBeenSet; }
inline void SetHostId(const Aws::String& value) { m_hostIdHasBeenSet = true; m_hostId = value; }
inline void SetHostId(Aws::String&& value) { m_hostIdHasBeenSet = true; m_hostId = std::move(value); }
inline void SetHostId(const char* value) { m_hostIdHasBeenSet = true; m_hostId.assign(value); }
inline Placement& WithHostId(const Aws::String& value) { SetHostId(value); return *this;}
inline Placement& WithHostId(Aws::String&& value) { SetHostId(std::move(value)); return *this;}
inline Placement& WithHostId(const char* value) { SetHostId(value); return *this;}
///@}

///@{
/**
* <p>The Amazon Resource Name (ARN) of the host resource group in which to launch
* build and test instances. This only applies if <code>tenancy</code> is
* <code>host</code>. If you specify the resource group ARN, you must not specify
* the host ID. If you specify both, Image Builder returns an error.</p>
*/
inline const Aws::String& GetHostResourceGroupArn() const{ return m_hostResourceGroupArn; }
inline bool HostResourceGroupArnHasBeenSet() const { return m_hostResourceGroupArnHasBeenSet; }
inline void SetHostResourceGroupArn(const Aws::String& value) { m_hostResourceGroupArnHasBeenSet = true; m_hostResourceGroupArn = value; }
inline void SetHostResourceGroupArn(Aws::String&& value) { m_hostResourceGroupArnHasBeenSet = true; m_hostResourceGroupArn = std::move(value); }
inline void SetHostResourceGroupArn(const char* value) { m_hostResourceGroupArnHasBeenSet = true; m_hostResourceGroupArn.assign(value); }
inline Placement& WithHostResourceGroupArn(const Aws::String& value) { SetHostResourceGroupArn(value); return *this;}
inline Placement& WithHostResourceGroupArn(Aws::String&& value) { SetHostResourceGroupArn(std::move(value)); return *this;}
inline Placement& WithHostResourceGroupArn(const char* value) { SetHostResourceGroupArn(value); return *this;}
///@}
private:

Aws::String m_availabilityZone;
bool m_availabilityZoneHasBeenSet = false;

TenancyType m_tenancy;
bool m_tenancyHasBeenSet = false;

Aws::String m_hostId;
bool m_hostIdHasBeenSet = false;

Aws::String m_hostResourceGroupArn;
bool m_hostResourceGroupArnHasBeenSet = false;
};

} // namespace Model
} // namespace imagebuilder
} // namespace Aws
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@ namespace Model
{
NOT_SET,
Windows,
Linux
Linux,
macOS
};

namespace PlatformMapper
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/

#pragma once
#include <aws/imagebuilder/Imagebuilder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>

namespace Aws
{
namespace imagebuilder
{
namespace Model
{
enum class TenancyType
{
NOT_SET,
default_,
dedicated,
host
};

namespace TenancyTypeMapper
{
AWS_IMAGEBUILDER_API TenancyType GetTenancyTypeForName(const Aws::String& name);

AWS_IMAGEBUILDER_API Aws::String GetNameForTenancyType(TenancyType value);
} // namespace TenancyTypeMapper
} // namespace Model
} // namespace imagebuilder
} // namespace Aws
Loading

0 comments on commit 2345a84

Please sign in to comment.