Skip to content

Commit eeaf050

Browse files
Add support for AWS Marketplace product IDs as input during CreateImageRecipe for the parent-image parameter. Add support for listing third-party components.
1 parent 1024df4 commit eeaf050

37 files changed

+570
-207
lines changed

generator/ServiceModels/imagebuilder/imagebuilder-2019-12-02.api.json

Lines changed: 23 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1048,7 +1048,9 @@
10481048
"kmsKeyId":{"shape":"NonEmptyString"},
10491049
"encrypted":{"shape":"NullableBoolean"},
10501050
"dateCreated":{"shape":"DateTime"},
1051-
"tags":{"shape":"TagMap"}
1051+
"tags":{"shape":"TagMap"},
1052+
"publisher":{"shape":"NonEmptyString"},
1053+
"obfuscate":{"shape":"Boolean"}
10521054
}
10531055
},
10541056
"ComponentBuildVersionArn":{
@@ -1158,7 +1160,9 @@
11581160
"description":{"shape":"NonEmptyString"},
11591161
"changeDescription":{"shape":"NonEmptyString"},
11601162
"dateCreated":{"shape":"DateTime"},
1161-
"tags":{"shape":"TagMap"}
1163+
"tags":{"shape":"TagMap"},
1164+
"publisher":{"shape":"NonEmptyString"},
1165+
"obfuscate":{"shape":"Boolean"}
11621166
}
11631167
},
11641168
"ComponentSummaryList":{
@@ -2038,7 +2042,8 @@
20382042
"dateCreated":{"shape":"DateTime"},
20392043
"outputResources":{"shape":"OutputResources"},
20402044
"tags":{"shape":"TagMap"},
2041-
"buildType":{"shape":"BuildType"}
2045+
"buildType":{"shape":"BuildType"},
2046+
"imageSource":{"shape":"ImageSource"}
20422047
}
20432048
},
20442049
"ImageBuildVersionArn":{
@@ -2129,6 +2134,15 @@
21292134
"type":"list",
21302135
"member":{"shape":"ImageRecipeSummary"}
21312136
},
2137+
"ImageSource":{
2138+
"type":"string",
2139+
"enum":[
2140+
"AMAZON_MANAGED",
2141+
"AWS_MARKETPLACE",
2142+
"IMPORTED",
2143+
"CUSTOM"
2144+
]
2145+
},
21322146
"ImageState":{
21332147
"type":"structure",
21342148
"members":{
@@ -2166,7 +2180,8 @@
21662180
"dateCreated":{"shape":"DateTime"},
21672181
"outputResources":{"shape":"OutputResources"},
21682182
"tags":{"shape":"TagMap"},
2169-
"buildType":{"shape":"BuildType"}
2183+
"buildType":{"shape":"BuildType"},
2184+
"imageSource":{"shape":"ImageSource"}
21702185
}
21712186
},
21722187
"ImageSummaryList":{
@@ -2203,7 +2218,8 @@
22032218
"osVersion":{"shape":"OsVersion"},
22042219
"owner":{"shape":"NonEmptyString"},
22052220
"dateCreated":{"shape":"DateTime"},
2206-
"buildType":{"shape":"BuildType"}
2221+
"buildType":{"shape":"BuildType"},
2222+
"imageSource":{"shape":"ImageSource"}
22072223
}
22082224
},
22092225
"ImageVersionArn":{
@@ -2762,7 +2778,8 @@
27622778
"enum":[
27632779
"Self",
27642780
"Shared",
2765-
"Amazon"
2781+
"Amazon",
2782+
"ThirdParty"
27662783
]
27672784
},
27682785
"PaginationToken":{

generator/ServiceModels/imagebuilder/imagebuilder-2019-12-02.docs.json

Lines changed: 63 additions & 51 deletions
Large diffs are not rendered by default.

generator/ServiceModels/imagebuilder/imagebuilder-2019-12-02.endpoint-rule-set.json

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"parameters": {
44
"Region": {
55
"builtIn": "AWS::Region",
6-
"required": false,
6+
"required": true,
77
"documentation": "The AWS region used to dispatch the request.",
88
"type": "String"
99
},
@@ -52,15 +52,6 @@
5252
"ref": "Endpoint"
5353
}
5454
]
55-
},
56-
{
57-
"fn": "parseURL",
58-
"argv": [
59-
{
60-
"ref": "Endpoint"
61-
}
62-
],
63-
"assign": "url"
6455
}
6556
],
6657
"type": "tree",

generator/ServiceModels/imagebuilder/imagebuilder-2019-12-02.endpoint-tests.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@
88
}
99
},
1010
"params": {
11-
"Region": "us-east-1",
1211
"UseDualStack": false,
1312
"UseFIPS": false,
13+
"Region": "us-east-1",
1414
"Endpoint": "https://example.com"
1515
}
1616
},
@@ -20,9 +20,9 @@
2020
"error": "Invalid Configuration: FIPS and custom endpoint are not supported"
2121
},
2222
"params": {
23-
"Region": "us-east-1",
2423
"UseDualStack": false,
2524
"UseFIPS": true,
25+
"Region": "us-east-1",
2626
"Endpoint": "https://example.com"
2727
}
2828
},
@@ -32,9 +32,9 @@
3232
"error": "Invalid Configuration: Dualstack and custom endpoint are not supported"
3333
},
3434
"params": {
35-
"Region": "us-east-1",
3635
"UseDualStack": true,
3736
"UseFIPS": false,
37+
"Region": "us-east-1",
3838
"Endpoint": "https://example.com"
3939
}
4040
}

generator/ServiceModels/imagebuilder/imagebuilder-2019-12-02.normal.json

Lines changed: 90 additions & 52 deletions
Large diffs are not rendered by default.

sdk/code-analysis/ServiceAnalysis/Imagebuilder/Generated/PropertyValueRules.xml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1159,6 +1159,11 @@
11591159
<min>1</min>
11601160
<max>1024</max>
11611161
</property-value-rule>
1162+
<property-value-rule>
1163+
<property>Amazon.Imagebuilder.Model.Component.Publisher</property>
1164+
<min>1</min>
1165+
<max>1024</max>
1166+
</property-value-rule>
11621167
<property-value-rule>
11631168
<property>Amazon.Imagebuilder.Model.Component.Version</property>
11641169
<pattern>^[0-9]+\.[0-9]+\.[0-9]+$</pattern>
@@ -1219,6 +1224,11 @@
12191224
<min>1</min>
12201225
<max>1024</max>
12211226
</property-value-rule>
1227+
<property-value-rule>
1228+
<property>Amazon.Imagebuilder.Model.ComponentSummary.Publisher</property>
1229+
<min>1</min>
1230+
<max>1024</max>
1231+
</property-value-rule>
12221232
<property-value-rule>
12231233
<property>Amazon.Imagebuilder.Model.ComponentSummary.Version</property>
12241234
<pattern>^[0-9]+\.[0-9]+\.[0-9]+$</pattern>

sdk/src/Services/Imagebuilder/Generated/Internal/AmazonImagebuilderEndpointProvider.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,8 @@ public Endpoint ResolveEndpoint(EndpointParameters parameters)
4040
if (parameters == null)
4141
throw new ArgumentNullException("parameters");
4242

43+
if (parameters["Region"] == null)
44+
throw new AmazonClientException("Region parameter must be set for endpoint resolution");
4345
if (parameters["UseDualStack"] == null)
4446
throw new AmazonClientException("UseDualStack parameter must be set for endpoint resolution");
4547
if (parameters["UseFIPS"] == null)
@@ -54,7 +56,7 @@ public Endpoint ResolveEndpoint(EndpointParameters parameters)
5456
};
5557
if ((refs["PartitionResult"] = Partition((string)refs["Region"])) != null)
5658
{
57-
if (IsSet(refs["Endpoint"]) && (refs["url"] = ParseURL((string)refs["Endpoint"])) != null)
59+
if (IsSet(refs["Endpoint"]))
5860
{
5961
if (Equals(refs["UseFIPS"], true))
6062
{

sdk/src/Services/Imagebuilder/Generated/Model/AdditionalInstanceConfiguration.cs

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,19 @@
2929
namespace Amazon.Imagebuilder.Model
3030
{
3131
/// <summary>
32-
/// In addition to your infrastruction configuration, these settings provide an extra
33-
/// layer of control over your build instances. For instances where Image Builder installs
34-
/// the Systems Manager agent, you can choose whether to keep it for the AMI that you
35-
/// create. You can also specify commands to run on launch for all of your build instances.
32+
/// In addition to your infrastructure configuration, these settings provide an extra
33+
/// layer of control over your build instances. You can also specify commands to run on
34+
/// launch for all of your build instances.
35+
///
36+
///
37+
/// <para>
38+
/// Image Builder does not automatically install the Systems Manager agent on Windows
39+
/// instances. If your base image includes the Systems Manager agent, then the AMI that
40+
/// you create will also include the agent. For Linux instances, if the base image does
41+
/// not already include the Systems Manager agent, Image Builder installs it. For Linux
42+
/// instances where Image Builder installs the Systems Manager agent, you can choose whether
43+
/// to keep it for the AMI that you create.
44+
/// </para>
3645
/// </summary>
3746
public partial class AdditionalInstanceConfiguration
3847
{

sdk/src/Services/Imagebuilder/Generated/Model/Component.cs

Lines changed: 50 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,11 @@ public partial class Component
4141
private bool? _encrypted;
4242
private string _kmsKeyId;
4343
private string _name;
44+
private bool? _obfuscate;
4445
private string _owner;
4546
private List<ComponentParameterDetail> _parameters = new List<ComponentParameterDetail>();
4647
private Platform _platform;
48+
private string _publisher;
4749
private ComponentState _state;
4850
private List<string> _supportedOsVersions = new List<string>();
4951
private Dictionary<string, string> _tags = new Dictionary<string, string>();
@@ -108,7 +110,7 @@ internal bool IsSetData()
108110
/// <summary>
109111
/// Gets and sets the property DateCreated.
110112
/// <para>
111-
/// The date that the component was created.
113+
/// The date that Image Builder created the component.
112114
/// </para>
113115
/// </summary>
114116
public string DateCreated
@@ -197,6 +199,25 @@ internal bool IsSetName()
197199
return this._name != null;
198200
}
199201

202+
/// <summary>
203+
/// Gets and sets the property Obfuscate.
204+
/// <para>
205+
/// Indicates whether component source is hidden from view in the console, and from component
206+
/// detail results for API, CLI, or SDK operations.
207+
/// </para>
208+
/// </summary>
209+
public bool Obfuscate
210+
{
211+
get { return this._obfuscate.GetValueOrDefault(); }
212+
set { this._obfuscate = value; }
213+
}
214+
215+
// Check to see if Obfuscate property is set
216+
internal bool IsSetObfuscate()
217+
{
218+
return this._obfuscate.HasValue;
219+
}
220+
200221
/// <summary>
201222
/// Gets and sets the property Owner.
202223
/// <para>
@@ -219,7 +240,8 @@ internal bool IsSetOwner()
219240
/// <summary>
220241
/// Gets and sets the property Parameters.
221242
/// <para>
222-
/// Contains parameter details for each of the parameters that are defined for the component.
243+
/// Contains parameter details for each of the parameters that the component document
244+
/// defined for the component.
223245
/// </para>
224246
/// </summary>
225247
public List<ComponentParameterDetail> Parameters
@@ -237,7 +259,7 @@ internal bool IsSetParameters()
237259
/// <summary>
238260
/// Gets and sets the property Platform.
239261
/// <para>
240-
/// The platform of the component.
262+
/// The operating system platform of the component.
241263
/// </para>
242264
/// </summary>
243265
public Platform Platform
@@ -252,6 +274,26 @@ internal bool IsSetPlatform()
252274
return this._platform != null;
253275
}
254276

277+
/// <summary>
278+
/// Gets and sets the property Publisher.
279+
/// <para>
280+
/// Contains the name of the publisher if this is a third-party component. Otherwise,
281+
/// this property is empty.
282+
/// </para>
283+
/// </summary>
284+
[AWSProperty(Min=1, Max=1024)]
285+
public string Publisher
286+
{
287+
get { return this._publisher; }
288+
set { this._publisher = value; }
289+
}
290+
291+
// Check to see if Publisher property is set
292+
internal bool IsSetPublisher()
293+
{
294+
return this._publisher != null;
295+
}
296+
255297
/// <summary>
256298
/// Gets and sets the property State.
257299
/// <para>
@@ -275,8 +317,8 @@ internal bool IsSetState()
275317
/// Gets and sets the property SupportedOsVersions.
276318
/// <para>
277319
/// The operating system (OS) version supported by the component. If the OS information
278-
/// is available, a prefix match is performed against the base image OS version during
279-
/// image recipe creation.
320+
/// is available, Image Builder performs a prefix match against the base image OS version
321+
/// during image recipe creation.
280322
/// </para>
281323
/// </summary>
282324
[AWSProperty(Min=1, Max=25)]
@@ -295,7 +337,7 @@ internal bool IsSetSupportedOsVersions()
295337
/// <summary>
296338
/// Gets and sets the property Tags.
297339
/// <para>
298-
/// The tags associated with the component.
340+
/// The tags that apply to the component.
299341
/// </para>
300342
/// </summary>
301343
[AWSProperty(Min=1, Max=50)]
@@ -314,8 +356,8 @@ internal bool IsSetTags()
314356
/// <summary>
315357
/// Gets and sets the property Type.
316358
/// <para>
317-
/// The type of the component denotes whether the component is used to build the image
318-
/// or only to test it.
359+
/// The component type specifies whether Image Builder uses the component to build the
360+
/// image or only to test it.
319361
/// </para>
320362
/// </summary>
321363
public ComponentType Type

sdk/src/Services/Imagebuilder/Generated/Model/ComponentConfiguration.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,8 +58,8 @@ internal bool IsSetComponentArn()
5858
/// <summary>
5959
/// Gets and sets the property Parameters.
6060
/// <para>
61-
/// A group of parameter settings that are used to configure the component for a specific
62-
/// recipe.
61+
/// A group of parameter settings that Image Builder uses to configure the component for
62+
/// a specific recipe.
6363
/// </para>
6464
/// </summary>
6565
[AWSProperty(Min=1)]

0 commit comments

Comments
 (0)