Source code for rhodes.identifiers

"""Static identifiers used within Rhodes."""
from enum import Enum

__all__ = ("ServiceArn", "IntegrationPattern")

_DDB_BASE_ARN = "arn:aws:states:::dynamodb"
_SAGEMAKER_BASE_ARN = "arn:aws:states:::sagemaker"


[docs]class ServiceArn(Enum): """Step Functions `service integrations`_ ARNs. Used as ``Resource`` value when creating a :class:`Task` that uses one of these `service integrations`_. .. _service integrations: https://docs.aws.amazon.com/step-functions/latest/dg/concepts-service-integrations.html """ AWSLAMBDA = "arn:aws:states:::lambda:invoke" BATCH = "arn:aws:states:::batch:submitJob" ECS = "arn:aws:states:::ecs:runTask" SNS = "arn:aws:states:::sns:publish" SQS = "arn:aws:states:::sqs:sendMessage" GLUE = "arn:aws:states:::glue:startJobRun" STEP_FUNCTIONS = "arn:aws:states:::states:startExecution" DYNAMODB_GET_ITEM = f"{_DDB_BASE_ARN}:getItem" DYNAMODB_PUT_ITEM = f"{_DDB_BASE_ARN}:putItem" DYNAMODB_DELETE_ITEM = f"{_DDB_BASE_ARN}:deleteItem" DYNAMODB_UPDATE_ITEM = f"{_DDB_BASE_ARN}:updateItem" SAGEMAKER_CREATE_ENDPOINT = f"{_SAGEMAKER_BASE_ARN}:createEndpoint" SAGEMAKER_CREATE_ENDPOINT_CONFIG = f"{_SAGEMAKER_BASE_ARN}:createEndpointConfig" SAGEMAKER_CREATE_HYPER_PARAMETER_TUNING_JOB = f"{_SAGEMAKER_BASE_ARN}:createHyperParameterTuningJob" SAGEMAKER_CREATE_LABELING_JOB = f"{_SAGEMAKER_BASE_ARN}:createLabelingJob" SAGEMAKER_CREATE_MODEL = f"{_SAGEMAKER_BASE_ARN}:createModel" SAGEMAKER_CREATE_TRAINING_JOB = f"{_SAGEMAKER_BASE_ARN}:createTrainingJob" SAGEMAKER_CREATE_TRANSFORM_JOB = f"{_SAGEMAKER_BASE_ARN}:createTransformJob" SAGEMAKER_UPDATE_ENDPOINT = f"{_SAGEMAKER_BASE_ARN}:updateEndpoint"
[docs]class IntegrationPattern(Enum): """Service integration pattern types. Used either when building a `service integration`_ :class:`Task` manually or when configuring a :class:`ServiceIntegration` helper class. .. _service integration: https://docs.aws.amazon.com/step-functions/latest/dg/concepts-service-integrations.html """ REQUEST_RESPONSE = "" SYNCHRONOUS = ".sync" WAIT_FOR_CALLBACK = ".waitForTaskToken"