updateConstraint method
Updates the specified constraint.
May throw InvalidParametersException.
May throw ResourceNotFoundException.
Parameter id :
The identifier of the constraint.
Parameter acceptLanguage :
The language code.
-
jp- Japanese -
zh- Chinese
Parameter description :
The updated description of the constraint.
Parameter parameters :
The constraint parameters, in JSON format. The syntax depends on the
constraint type as follows:
- LAUNCH
-
You are required to specify either the
RoleArnor theLocalRoleNamebut can't use both.Specify the
RoleArnproperty as follows:{"RoleArn" : "arn:aws:iam::123456789012:role/LaunchRole"}Specify the
LocalRoleNameproperty as follows:{"LocalRoleName": "SCBasicLaunchRole"}If you specify the
LocalRoleNameproperty, when an account uses the launch constraint, the IAM role with that name in the account will be used. This allows launch-role constraints to be account-agnostic so the administrator can create fewer resources per shared account. You cannot have both aLAUNCHand aSTACKSETconstraint.You also cannot have more than one
LAUNCHconstraint on a product and portfolio. - NOTIFICATION
-
Specify the
NotificationArnsproperty as follows:{"NotificationArns" : ["arn:aws:sns:us-east-1:123456789012:Topic"]} - RESOURCE_UPDATE
-
Specify the
TagUpdatesOnProvisionedProductproperty as follows:{"Version":"2.0","Properties":{"TagUpdateOnProvisionedProduct":"String"}}The
TagUpdatesOnProvisionedProductproperty accepts a string value ofALLOWEDorNOT_ALLOWED. - STACKSET
-
Specify the
Parametersproperty as follows:{"Version": "String", "Properties": {"AccountList": [ "String" ], "RegionList": [ "String" ], "AdminRole": "String", "ExecutionRole": "String"}}You cannot have both a
LAUNCHand aSTACKSETconstraint.You also cannot have more than one
STACKSETconstraint on a product and portfolio.Products with a
STACKSETconstraint will launch an CloudFormation stack set. - TEMPLATE
-
Specify the
Rulesproperty. For more information, see Template Constraint Rules.
Implementation
Future<UpdateConstraintOutput> updateConstraint({
required String id,
String? acceptLanguage,
String? description,
String? parameters,
}) async {
final headers = <String, String>{
'Content-Type': 'application/x-amz-json-1.1',
'X-Amz-Target': 'AWS242ServiceCatalogService.UpdateConstraint'
};
final jsonResponse = await _protocol.send(
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
// TODO queryParams
headers: headers,
payload: {
'Id': id,
if (acceptLanguage != null) 'AcceptLanguage': acceptLanguage,
if (description != null) 'Description': description,
if (parameters != null) 'Parameters': parameters,
},
);
return UpdateConstraintOutput.fromJson(jsonResponse.body);
}