Skip to content

create_deployment async

create_deployment(
    group_id: __string,
    *,
    config_overrides: Optional[AsyncGreengrassClientConfig] = None,
    amzn_client_token: Optional[__string] = None,
    deployment_id: Optional[__string] = None,
    deployment_type: Optional[DeploymentType] = None,
    group_version_id: Optional[__string] = None,
) -> CreateDeploymentResponse

Creates a deployment. ''CreateDeployment'' requests are idempotent with respect to the ''X-Amzn-Client-Token'' token and the request parameters.

Parameters:

  • amzn_client_token (Optional[__string], default: None ) –

    A client token used to correlate requests and responses.

  • deployment_id (Optional[__string], default: None ) –

    The ID of the deployment if you wish to redeploy a previous deployment.

  • deployment_type (Optional[DeploymentType], default: None ) –

    The type of deployment. When used for ''CreateDeployment'', only ''NewDeployment'' and ''Redeployment'' are valid.

  • group_id (__string) –

    The ID of the Greengrass group.

  • group_version_id (Optional[__string], default: None ) –

    The ID of the group version to be deployed.

Raises:

Source code in docs_src/capo_greengrass/_services/async_greengrass.py
async def create_deployment(
    self,
    group_id: "capo_greengrass.types.__string.__string",
    *,
    config_overrides: Optional[AsyncGreengrassClientConfig] = None,
    amzn_client_token: Optional["capo_greengrass.types.__string.__string"] = None,
    deployment_id: Optional["capo_greengrass.types.__string.__string"] = None,
    deployment_type: Optional[
        "capo_greengrass.types.deployment_type.DeploymentType"
    ] = None,
    group_version_id: Optional["capo_greengrass.types.__string.__string"] = None,
) -> "capo_greengrass.types.create_deployment_response.CreateDeploymentResponse":
    """Creates a deployment. ''CreateDeployment'' requests are idempotent with respect to the ''X-Amzn-Client-Token'' token and the request parameters.

    Args:
        amzn_client_token: A client token used to correlate requests and responses.
        deployment_id: The ID of the deployment if you wish to redeploy a previous deployment.
        deployment_type: The type of deployment. When used for ''CreateDeployment'', only ''NewDeployment'' and ''Redeployment'' are valid.
        group_id: The ID of the Greengrass group.
        group_version_id: The ID of the group version to be deployed.

    Raises:
        capo_greengrass.errors.bad_request_exception.BadRequestException: General error information.
        capo_greengrass.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_greengrass.types.create_deployment_request.CreateDeploymentRequest]",
    ) -> AsyncOperationResponse[
        "capo_greengrass.types.create_deployment_response.CreateDeploymentResponse"
    ]:
        import capo_greengrass._operations.greengrass.create_deployment

        (
            output,
            http_response,
        ) = await capo_greengrass._operations.greengrass.create_deployment.async_create_deployment(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("CreateDeployment")
    )
    input_: capo_greengrass.types.create_deployment_request.CreateDeploymentRequest = {
        "group_id": group_id
    }
    if amzn_client_token is not None:
        input_["amzn_client_token"] = amzn_client_token
    if deployment_id is not None:
        input_["deployment_id"] = deployment_id
    if deployment_type is not None:
        input_["deployment_type"] = deployment_type
    if group_version_id is not None:
        input_["group_version_id"] = group_version_id

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output