Skip to content

Commit

Permalink
feat(client-iotfleetwise): Campaigns now support selecting Timestream…
Browse files Browse the repository at this point in the history
… or S3 as the data destination, Signal catalogs now support "Deprecation" keyword released in VSS v2.1 and "Comment" keyword released in VSS v3.0
  • Loading branch information
awstools committed May 30, 2023
1 parent 686075c commit bbff135
Show file tree
Hide file tree
Showing 13 changed files with 1,022 additions and 274 deletions.
14 changes: 14 additions & 0 deletions clients/client-iotfleetwise/src/commands/CreateCampaignCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,20 @@ export interface CreateCampaignCommandOutput extends CreateCampaignResponse, __M
* Value: "STRING_VALUE", // required
* },
* ],
* dataDestinationConfigs: [ // DataDestinationConfigs
* { // DataDestinationConfig Union: only one key present
* s3Config: { // S3Config
* bucketArn: "STRING_VALUE", // required
* dataFormat: "STRING_VALUE",
* storageCompressionFormat: "STRING_VALUE",
* prefix: "STRING_VALUE",
* },
* timestreamConfig: { // TimestreamConfig
* timestreamTableArn: "STRING_VALUE", // required
* executionRoleArn: "STRING_VALUE", // required
* },
* },
* ],
* };
* const command = new CreateCampaignCommand(input);
* const response = await client.send(command);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,8 @@ export interface CreateSignalCatalogCommandOutput extends CreateSignalCatalogRes
* branch: { // Branch
* fullyQualifiedName: "STRING_VALUE", // required
* description: "STRING_VALUE",
* deprecationMessage: "STRING_VALUE",
* comment: "STRING_VALUE",
* },
* sensor: { // Sensor
* fullyQualifiedName: "STRING_VALUE", // required
Expand All @@ -63,6 +65,8 @@ export interface CreateSignalCatalogCommandOutput extends CreateSignalCatalogRes
* ],
* min: Number("double"),
* max: Number("double"),
* deprecationMessage: "STRING_VALUE",
* comment: "STRING_VALUE",
* },
* actuator: { // Actuator
* fullyQualifiedName: "STRING_VALUE", // required
Expand All @@ -75,6 +79,8 @@ export interface CreateSignalCatalogCommandOutput extends CreateSignalCatalogRes
* min: Number("double"),
* max: Number("double"),
* assignedValue: "STRING_VALUE",
* deprecationMessage: "STRING_VALUE",
* comment: "STRING_VALUE",
* },
* attribute: { // Attribute
* fullyQualifiedName: "STRING_VALUE", // required
Expand All @@ -88,6 +94,8 @@ export interface CreateSignalCatalogCommandOutput extends CreateSignalCatalogRes
* max: Number("double"),
* assignedValue: "STRING_VALUE",
* defaultValue: "STRING_VALUE",
* deprecationMessage: "STRING_VALUE",
* comment: "STRING_VALUE",
* },
* },
* ],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ export interface CreateVehicleCommandOutput extends CreateVehicleResponse, __Met
* created from the same vehicle model consist of the same signals inherited from the
* vehicle model.</p>
* <note>
* <p> If you have an existing Amazon Web Services IoT Thing, you can use Amazon Web Services IoT FleetWise to create a
* <p> If you have an existing Amazon Web Services IoT thing, you can use Amazon Web Services IoT FleetWise to create a
* vehicle and collect data from your thing. </p>
* </note>
* <p>For more information, see <a href="https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/create-vehicle-cli.html">Create a vehicle
Expand Down
14 changes: 14 additions & 0 deletions clients/client-iotfleetwise/src/commands/GetCampaignCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,20 @@ export interface GetCampaignCommandOutput extends GetCampaignResponse, __Metadat
* // ],
* // creationTime: new Date("TIMESTAMP"),
* // lastModificationTime: new Date("TIMESTAMP"),
* // dataDestinationConfigs: [ // DataDestinationConfigs
* // { // DataDestinationConfig Union: only one key present
* // s3Config: { // S3Config
* // bucketArn: "STRING_VALUE", // required
* // dataFormat: "STRING_VALUE",
* // storageCompressionFormat: "STRING_VALUE",
* // prefix: "STRING_VALUE",
* // },
* // timestreamConfig: { // TimestreamConfig
* // timestreamTableArn: "STRING_VALUE", // required
* // executionRoleArn: "STRING_VALUE", // required
* // },
* // },
* // ],
* // };
*
* ```
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,8 @@ export interface ListModelManifestNodesCommandOutput extends ListModelManifestNo
* // branch: { // Branch
* // fullyQualifiedName: "STRING_VALUE", // required
* // description: "STRING_VALUE",
* // deprecationMessage: "STRING_VALUE",
* // comment: "STRING_VALUE",
* // },
* // sensor: { // Sensor
* // fullyQualifiedName: "STRING_VALUE", // required
Expand All @@ -70,6 +72,8 @@ export interface ListModelManifestNodesCommandOutput extends ListModelManifestNo
* // ],
* // min: Number("double"),
* // max: Number("double"),
* // deprecationMessage: "STRING_VALUE",
* // comment: "STRING_VALUE",
* // },
* // actuator: { // Actuator
* // fullyQualifiedName: "STRING_VALUE", // required
Expand All @@ -82,6 +86,8 @@ export interface ListModelManifestNodesCommandOutput extends ListModelManifestNo
* // min: Number("double"),
* // max: Number("double"),
* // assignedValue: "STRING_VALUE",
* // deprecationMessage: "STRING_VALUE",
* // comment: "STRING_VALUE",
* // },
* // attribute: { // Attribute
* // fullyQualifiedName: "STRING_VALUE", // required
Expand All @@ -95,6 +101,8 @@ export interface ListModelManifestNodesCommandOutput extends ListModelManifestNo
* // max: Number("double"),
* // assignedValue: "STRING_VALUE",
* // defaultValue: "STRING_VALUE",
* // deprecationMessage: "STRING_VALUE",
* // comment: "STRING_VALUE",
* // },
* // },
* // ],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,8 @@ export interface ListSignalCatalogNodesCommandOutput extends ListSignalCatalogNo
* // branch: { // Branch
* // fullyQualifiedName: "STRING_VALUE", // required
* // description: "STRING_VALUE",
* // deprecationMessage: "STRING_VALUE",
* // comment: "STRING_VALUE",
* // },
* // sensor: { // Sensor
* // fullyQualifiedName: "STRING_VALUE", // required
Expand All @@ -70,6 +72,8 @@ export interface ListSignalCatalogNodesCommandOutput extends ListSignalCatalogNo
* // ],
* // min: Number("double"),
* // max: Number("double"),
* // deprecationMessage: "STRING_VALUE",
* // comment: "STRING_VALUE",
* // },
* // actuator: { // Actuator
* // fullyQualifiedName: "STRING_VALUE", // required
Expand All @@ -82,6 +86,8 @@ export interface ListSignalCatalogNodesCommandOutput extends ListSignalCatalogNo
* // min: Number("double"),
* // max: Number("double"),
* // assignedValue: "STRING_VALUE",
* // deprecationMessage: "STRING_VALUE",
* // comment: "STRING_VALUE",
* // },
* // attribute: { // Attribute
* // fullyQualifiedName: "STRING_VALUE", // required
Expand All @@ -95,6 +101,8 @@ export interface ListSignalCatalogNodesCommandOutput extends ListSignalCatalogNo
* // max: Number("double"),
* // assignedValue: "STRING_VALUE",
* // defaultValue: "STRING_VALUE",
* // deprecationMessage: "STRING_VALUE",
* // comment: "STRING_VALUE",
* // },
* // },
* // ],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,13 +36,18 @@ export interface RegisterAccountCommandOutput extends RegisterAccountResponse, _

/**
* @public
* <p>Registers your Amazon Web Services account, IAM, and Amazon Timestream resources so Amazon Web Services IoT FleetWise can
* <important>
* <p>This API operation contains deprecated parameters. Register your account again without the Timestream resources parameter so that Amazon Web Services IoT FleetWise can remove the Timestream metadata stored. You should then pass the data destination into the <a href="https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_CreateCampaign.html">CreateCampaign</a> API operation.</p>
* <p>You must delete any existing campaigns that include an empty data destination before you register your account again. For more information, see the <a href="https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_DeleteCampaign.html">DeleteCampaign</a> API operation.</p>
* <p>If you want to delete the Timestream inline policy from the service-linked role, such as to mitigate an overly permissive policy, you must first delete any existing campaigns. Then delete the service-linked role and register your account again to enable CloudWatch metrics. For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteServiceLinkedRole.html">DeleteServiceLinkedRole</a> in the <i>Identity and Access Management API Reference</i>.</p>
* </important>
*
* <p>Registers your Amazon Web Services account, IAM, and Amazon Timestream resources so Amazon Web Services IoT FleetWise can
* transfer your vehicle data to the Amazon Web Services Cloud. For more information, including
* step-by-step procedures, see <a href="https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/setting-up.html">Setting up
* Amazon Web Services IoT FleetWise</a>. </p>
* <note>
* <p>An Amazon Web Services account is <b>not</b> the same thing as a "user
* account". An <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_identity-management.html#intro-identity-users">Amazon Web Services user</a> is an identity that you create using Identity and Access Management (IAM) and
* <p>An Amazon Web Services account is <b>not</b> the same thing as a "user." An <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_identity-management.html#intro-identity-users">Amazon Web Services user</a> is an identity that you create using Identity and Access Management (IAM) and
* takes the form of either an <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html">IAM user</a> or an <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html">IAM role, both
* with credentials</a>. A single Amazon Web Services account can, and typically does,
* contain many users and roles.</p>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,8 @@ export interface UpdateSignalCatalogCommandOutput extends UpdateSignalCatalogRes
* branch: { // Branch
* fullyQualifiedName: "STRING_VALUE", // required
* description: "STRING_VALUE",
* deprecationMessage: "STRING_VALUE",
* comment: "STRING_VALUE",
* },
* sensor: { // Sensor
* fullyQualifiedName: "STRING_VALUE", // required
Expand All @@ -62,6 +64,8 @@ export interface UpdateSignalCatalogCommandOutput extends UpdateSignalCatalogRes
* ],
* min: Number("double"),
* max: Number("double"),
* deprecationMessage: "STRING_VALUE",
* comment: "STRING_VALUE",
* },
* actuator: { // Actuator
* fullyQualifiedName: "STRING_VALUE", // required
Expand All @@ -74,6 +78,8 @@ export interface UpdateSignalCatalogCommandOutput extends UpdateSignalCatalogRes
* min: Number("double"),
* max: Number("double"),
* assignedValue: "STRING_VALUE",
* deprecationMessage: "STRING_VALUE",
* comment: "STRING_VALUE",
* },
* attribute: { // Attribute
* fullyQualifiedName: "STRING_VALUE", // required
Expand All @@ -87,6 +93,8 @@ export interface UpdateSignalCatalogCommandOutput extends UpdateSignalCatalogRes
* max: Number("double"),
* assignedValue: "STRING_VALUE",
* defaultValue: "STRING_VALUE",
* deprecationMessage: "STRING_VALUE",
* comment: "STRING_VALUE",
* },
* },
* ],
Expand All @@ -95,6 +103,8 @@ export interface UpdateSignalCatalogCommandOutput extends UpdateSignalCatalogRes
* branch: {
* fullyQualifiedName: "STRING_VALUE", // required
* description: "STRING_VALUE",
* deprecationMessage: "STRING_VALUE",
* comment: "STRING_VALUE",
* },
* sensor: {
* fullyQualifiedName: "STRING_VALUE", // required
Expand All @@ -106,6 +116,8 @@ export interface UpdateSignalCatalogCommandOutput extends UpdateSignalCatalogRes
* ],
* min: Number("double"),
* max: Number("double"),
* deprecationMessage: "STRING_VALUE",
* comment: "STRING_VALUE",
* },
* actuator: {
* fullyQualifiedName: "STRING_VALUE", // required
Expand All @@ -118,6 +130,8 @@ export interface UpdateSignalCatalogCommandOutput extends UpdateSignalCatalogRes
* min: Number("double"),
* max: Number("double"),
* assignedValue: "STRING_VALUE",
* deprecationMessage: "STRING_VALUE",
* comment: "STRING_VALUE",
* },
* attribute: {
* fullyQualifiedName: "STRING_VALUE", // required
Expand All @@ -129,6 +143,8 @@ export interface UpdateSignalCatalogCommandOutput extends UpdateSignalCatalogRes
* max: Number("double"),
* assignedValue: "STRING_VALUE",
* defaultValue: "STRING_VALUE",
* deprecationMessage: "STRING_VALUE",
* comment: "STRING_VALUE",
* },
* },
* ],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ export const resolveClientEndpointParameters = <T>(
};

export interface EndpointParameters extends __EndpointParameters {
Region: string;
Region?: string;
UseDualStack?: boolean;
UseFIPS?: boolean;
Endpoint?: string;
Expand Down
39 changes: 20 additions & 19 deletions clients/client-iotfleetwise/src/endpoint/ruleset.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,24 +6,25 @@ import { RuleSetObject } from "@aws-sdk/util-endpoints";
or see "smithy.rules#endpointRuleSet"
in codegen/sdk-codegen/aws-models/iotfleetwise.json */

const q="fn",
r="argv",
s="ref";
const a=true,
b=false,
c="String",
d="PartitionResult",
e="tree",
f="error",
g="endpoint",
h={"required":true,"default":false,"type":"Boolean"},
i={[s]:"Endpoint"},
j={[q]:"booleanEquals",[r]:[{[s]:"UseFIPS"},true]},
k={[q]:"booleanEquals",[r]:[{[s]:"UseDualStack"},true]},
l={},
m={[q]:"booleanEquals",[r]:[true,{[q]:"getAttr",[r]:[{[s]:d},"supportsFIPS"]}]},
n={[q]:"booleanEquals",[r]:[true,{[q]:"getAttr",[r]:[{[s]:d},"supportsDualStack"]}]},
const q="required",
r="fn",
s="argv",
t="ref";
const a="isSet",
b="tree",
c="error",
d="endpoint",
e="PartitionResult",
f={[q]:false,"type":"String"},
g={[q]:true,"default":false,"type":"Boolean"},
h={[t]:"Endpoint"},
i={[r]:"booleanEquals",[s]:[{[t]:"UseFIPS"},true]},
j={[r]:"booleanEquals",[s]:[{[t]:"UseDualStack"},true]},
k={},
l={[r]:"booleanEquals",[s]:[true,{[r]:"getAttr",[s]:[{[t]:e},"supportsFIPS"]}]},
m={[r]:"booleanEquals",[s]:[true,{[r]:"getAttr",[s]:[{[t]:e},"supportsDualStack"]}]},
n=[i],
o=[j],
p=[k];
const _data={version:"1.0",parameters:{Region:{required:a,type:c},UseDualStack:h,UseFIPS:h,Endpoint:{required:b,type:c}},rules:[{conditions:[{[q]:"aws.partition",[r]:[{[s]:"Region"}],assign:d}],type:e,rules:[{conditions:[{[q]:"isSet",[r]:[i]}],type:e,rules:[{conditions:o,error:"Invalid Configuration: FIPS and custom endpoint are not supported",type:f},{type:e,rules:[{conditions:p,error:"Invalid Configuration: Dualstack and custom endpoint are not supported",type:f},{endpoint:{url:i,properties:l,headers:l},type:g}]}]},{conditions:[j,k],type:e,rules:[{conditions:[m,n],type:e,rules:[{endpoint:{url:"https://iotfleetwise-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:l,headers:l},type:g}]},{error:"FIPS and DualStack are enabled, but this partition does not support one or both",type:f}]},{conditions:o,type:e,rules:[{conditions:[m],type:e,rules:[{type:e,rules:[{endpoint:{url:"https://iotfleetwise-fips.{Region}.{PartitionResult#dnsSuffix}",properties:l,headers:l},type:g}]}]},{error:"FIPS is enabled but this partition does not support FIPS",type:f}]},{conditions:p,type:e,rules:[{conditions:[n],type:e,rules:[{endpoint:{url:"https://iotfleetwise.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:l,headers:l},type:g}]},{error:"DualStack is enabled but this partition does not support DualStack",type:f}]},{endpoint:{url:"https://iotfleetwise.{Region}.{PartitionResult#dnsSuffix}",properties:l,headers:l},type:g}]}]};
p=[{[t]:"Region"}];
const _data={version:"1.0",parameters:{Region:f,UseDualStack:g,UseFIPS:g,Endpoint:f},rules:[{conditions:[{[r]:a,[s]:[h]}],type:b,rules:[{conditions:n,error:"Invalid Configuration: FIPS and custom endpoint are not supported",type:c},{type:b,rules:[{conditions:o,error:"Invalid Configuration: Dualstack and custom endpoint are not supported",type:c},{endpoint:{url:h,properties:k,headers:k},type:d}]}]},{type:b,rules:[{conditions:[{[r]:a,[s]:p}],type:b,rules:[{conditions:[{[r]:"aws.partition",[s]:p,assign:e}],type:b,rules:[{conditions:[i,j],type:b,rules:[{conditions:[l,m],type:b,rules:[{type:b,rules:[{endpoint:{url:"https://iotfleetwise-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:k,headers:k},type:d}]}]},{error:"FIPS and DualStack are enabled, but this partition does not support one or both",type:c}]},{conditions:n,type:b,rules:[{conditions:[l],type:b,rules:[{type:b,rules:[{endpoint:{url:"https://iotfleetwise-fips.{Region}.{PartitionResult#dnsSuffix}",properties:k,headers:k},type:d}]}]},{error:"FIPS is enabled but this partition does not support FIPS",type:c}]},{conditions:o,type:b,rules:[{conditions:[m],type:b,rules:[{type:b,rules:[{endpoint:{url:"https://iotfleetwise.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:k,headers:k},type:d}]}]},{error:"DualStack is enabled but this partition does not support DualStack",type:c}]},{type:b,rules:[{endpoint:{url:"https://iotfleetwise.{Region}.{PartitionResult#dnsSuffix}",properties:k,headers:k},type:d}]}]}]},{error:"Invalid Configuration: Missing Region",type:c}]}]};
export const ruleSet: RuleSetObject = _data;
Loading

0 comments on commit bbff135

Please sign in to comment.