def should_check_s3_batch_copy_role_arn_parameter_exists(
        ssm_client: SSMClient) -> None:
    """Test if Data Lake S3 Batch Copy Role ARN Parameter was created"""
    parameter_response = ssm_client.get_parameter(
        Name=ParameterName.PROCESSING_IMPORT_DATASET_ROLE_ARN.value)
    assert (parameter_response["Parameter"]["Name"] ==
            ParameterName.PROCESSING_IMPORT_DATASET_ROLE_ARN.value)
    assert "arn" in parameter_response["Parameter"]["Value"]
    assert "iam" in parameter_response["Parameter"]["Value"]
def should_check_state_machine_arn_parameter_exists(
        ssm_client: SSMClient) -> None:
    """Test if Data Lake State Machine ARN Parameter was created"""
    parameter_response = ssm_client.get_parameter(
        Name=ParameterName.
        PROCESSING_DATASET_VERSION_CREATION_STEP_FUNCTION_ARN.value)
    assert (parameter_response["Parameter"]["Name"] == ParameterName.
            PROCESSING_DATASET_VERSION_CREATION_STEP_FUNCTION_ARN.value)
    assert "arn" in parameter_response["Parameter"]["Value"]
    assert "stateMachine" in parameter_response["Parameter"]["Value"]
Example #3
0
def delete_ssm_parameters(ssm_client: SSMClient, names: list) -> None:
    """Delete SSM parameters.

    Args:
        ssm_client: Boto3 SSM client
        names: SSM parameter names
    """
    response = ssm_client.delete_parameters(Names=names)
    LOGGER.debug({
        "API_Call": "ssm:DeleteParameters",
        "API_Response": response
    })
Example #4
0
def add_tags_to_ssm_parameter(ssm_client: SSMClient, resource_id: str,
                              tags: Sequence[TagTypeDef]) -> None:
    """Add tags to SSM parameter.

    Args:
        ssm_client: Boto3 SSM client
        resource_id: SSM parameter name
        tags: Tags to apply to SSM parameter
    """
    response = ssm_client.add_tags_to_resource(ResourceType="Parameter",
                                               ResourceId=resource_id,
                                               Tags=tags)
    LOGGER.debug({
        "API_Call": "ssm:AddTagsToResource",
        "API_Response": response
    })
Example #5
0
def create_ssm_parameter(
        ssm_client: SSMClient, name: str, value: str,
        parameter_type: Union[Literal["String"],
                              Literal["StringList"]]) -> None:
    """Create SSM parameter.

    Args:
        ssm_client: Boto3 SSM client
        name: SSM parameter name
        value: SSM parameter value
        parameter_type: SSM parameter type
    """
    response = ssm_client.put_parameter(Name=name,
                                        Value=value,
                                        Type=parameter_type,
                                        Overwrite=True)
    LOGGER.debug({"API_Call": "ssm:PutParameter", "API_Response": response})
Example #6
0
def should_create_storage_bucket_name_parameter(ssm_client: SSMClient) -> None:
    """Test if Data Lake Storage Bucket ARN Parameter was created"""
    parameter_response = ssm_client.get_parameter(
        Name=ParameterName.STORAGE_BUCKET_NAME.value)
    assert parameter_response["Parameter"][
        "Name"] == ParameterName.STORAGE_BUCKET_NAME.value