Skip to content

create_replicator

create_replicator(
    *,
    config_overrides: Optional[KafkaClientConfig] = None,
    description: Optional[__stringMax1024] = None,
    kafka_clusters: Optional[__listOfKafkaCluster] = None,
    replication_info_list: Optional[__listOfReplicationInfo] = None,
    replicator_name: Optional[__stringMin1Max128Pattern09AZaZ09AZaZ0] = None,
    service_execution_role_arn: Optional[__string] = None,
    tags: Optional[__mapOf__string] = None,
    log_delivery: Optional[LogDelivery] = None,
) -> CreateReplicatorResponse

Creates the replicator.

Parameters:

  • description (Optional[__stringMax1024], default: None ) –

    A summary description of the replicator.

  • kafka_clusters (Optional[__listOfKafkaCluster], default: None ) –

    Kafka Clusters to use in setting up sources / targets for replication.

  • replication_info_list (Optional[__listOfReplicationInfo], default: None ) –

    A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow.

  • replicator_name (Optional[__stringMin1Max128Pattern09AZaZ09AZaZ0], default: None ) –

    The name of the replicator. Alpha-numeric characters with '-' are allowed.

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

    The ARN of the IAM role used by the replicator to access resources in the customer's account (e.g source and target clusters)

  • tags (Optional[__mapOf__string], default: None ) –

    List of tags to attach to created Replicator.

  • log_delivery (Optional[LogDelivery], default: None ) –

    Configuration for delivering replicator logs to customer destinations.

Raises:

Source code in docs_src/capo_kafka/_services/kafka.py
def create_replicator(
    self,
    *,
    config_overrides: Optional[KafkaClientConfig] = None,
    description: Optional[
        "capo_kafka.types.__string_max1024.__stringMax1024"
    ] = None,
    kafka_clusters: Optional[
        "capo_kafka.types.__list_of_kafka_cluster.__listOfKafkaCluster"
    ] = None,
    replication_info_list: Optional[
        "capo_kafka.types.__list_of_replication_info.__listOfReplicationInfo"
    ] = None,
    replicator_name: Optional[
        "capo_kafka.types.__string_min1_max128_pattern09_a_za_z09_a_za_z0.__stringMin1Max128Pattern09AZaZ09AZaZ0"
    ] = None,
    service_execution_role_arn: Optional[
        "capo_kafka.types.__string.__string"
    ] = None,
    tags: Optional["capo_kafka.types.__map_of__string.__mapOf__string"] = None,
    log_delivery: Optional["capo_kafka.types.log_delivery.LogDelivery"] = None,
) -> "capo_kafka.types.create_replicator_response.CreateReplicatorResponse":
    """<p>Creates the replicator.</p>

    Args:
        description: <p>A summary description of the replicator.</p>
        kafka_clusters: <p>Kafka Clusters to use in setting up sources / targets for replication.</p>
        replication_info_list: <p>A list of replication configurations, where each configuration targets a given source cluster to target cluster replication flow.</p>
        replicator_name: <p>The name of the replicator. Alpha-numeric characters with '-' are allowed.</p>
        service_execution_role_arn: <p>The ARN of the IAM role used by the replicator to access resources in the customer's account (e.g source and target clusters)</p>
        tags: <p>List of tags to attach to created Replicator.</p>
        log_delivery: <p>Configuration for delivering replicator logs to customer destinations.</p>

    Raises:
        capo_kafka.errors.bad_request_exception.BadRequestException: <p>Returns information about an error.</p>
        capo_kafka.errors.conflict_exception.ConflictException: <p>Returns information about an error.</p>
        capo_kafka.errors.forbidden_exception.ForbiddenException: <p>Returns information about an error.</p>
        capo_kafka.errors.internal_server_error_exception.InternalServerErrorException: <p>Returns information about an error.</p>
        capo_kafka.errors.not_found_exception.NotFoundException: <p>Returns information about an error.</p>
        capo_kafka.errors.service_unavailable_exception.ServiceUnavailableException: <p>Returns information about an error.</p>
        capo_kafka.errors.too_many_requests_exception.TooManyRequestsException: <p>Returns information about an error.</p>
        capo_kafka.errors.unauthorized_exception.UnauthorizedException: <p>Returns information about an error.</p>
        capo_kafka.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_kafka.types.create_replicator_request.CreateReplicatorRequest]",
    ) -> OperationResponse[
        "capo_kafka.types.create_replicator_response.CreateReplicatorResponse"
    ]:
        import capo_kafka._operations.kafka.create_replicator

        output, http_response = (
            capo_kafka._operations.kafka.create_replicator.create_replicator(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("CreateReplicator")
    )
    input_: capo_kafka.types.create_replicator_request.CreateReplicatorRequest = {}
    if description is not None:
        input_["description"] = description
    if kafka_clusters is not None:
        input_["kafka_clusters"] = kafka_clusters
    if replication_info_list is not None:
        input_["replication_info_list"] = replication_info_list
    if replicator_name is not None:
        input_["replicator_name"] = replicator_name
    if service_execution_role_arn is not None:
        input_["service_execution_role_arn"] = service_execution_role_arn
    if tags is not None:
        input_["tags"] = tags
    if log_delivery is not None:
        input_["log_delivery"] = log_delivery

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output