Source code for idem_aws.exec.aws.apigateway.deployment
"""Exec module for managing Amazon API Gateway Deployments."""
[docs]async def get(
hub,
ctx,
resource_id: str,
rest_api_id: str,
name: str = None,
):
"""Get an API Gateway Deployments from AWS. If more than one resource is found, the first resource returned from AWS
will be used. The function returns None when no resource is found.
Args:
resource_id(str):
Resource ID of the AWS Deployment.
rest_api_id(str):
The string identifier of the associated RestApi.
name(str, Optional):
An Idem name of the API Gateway Deployment.
Returns:
.. code-block:: python
{"result": True|False, "comment": A message List, "ret": Dict[str, Any]}
Examples:
Calling this exec module function from the cli with resource_id
.. code-block:: bash
idem exec aws.apigateway.deployment.get resource_id="resource_id" rest_api_id="rest_api_id"
name="umanaged_deployment"
Calling this exec module function from within a state module in pure python
.. code-block:: yaml
my_unmanaged_deployment:
exec.run:
- path: aws.apigateway.deployment.get
- kwargs:
rest_api_id: 5hkdu2
resource_id: f8kils
name: test-deployments-name
"""
result = dict(comment=[], ret=None, result=True)
ret = await hub.exec.boto3.client.apigateway.get_deployment(
ctx, restApiId=rest_api_id, deploymentId=resource_id
)
if not ret["result"]:
if "NotFoundException" in str(ret["comment"]):
result["comment"].append(
hub.tool.aws.comment_utils.get_empty_comment(
resource_type="aws.apigateway.deployment", name=name
)
)
result["comment"] += list(ret["comment"])
return result
result["comment"] += list(ret["comment"])
result["result"] = False
return result
if not ret["ret"]:
result["comment"].append(
hub.tool.aws.comment_utils.get_empty_comment(
resource_type="aws.apigateway.deployment", name=name
)
)
return result
else:
result[
"ret"
] = hub.tool.aws.apigateway.deployment.convert_raw_deployment_to_present(
raw_resource=ret["ret"],
resource_id=resource_id,
rest_api_id=rest_api_id,
idem_resource_name=name,
)
return result