Types

Jot.AWSConfigType
mutable struct AWSConfig
    account_id::Union{Missing, String} = missing
    region::Union{Missing, String} = missing
end

Defines the Amazon Web Services account id and region to use.

Your current AWS CLI profile should match the account id specified here. To check that this is the case, run aws sts get-caller-identity --query Account --output text from the command line. To see available profiles, run aws configure list-profiles.

source
Jot.ContainerType
mutable struct Container
    ID::String
    Image::String
    Command::Union{Missing, String} = missing
    CreatedAt::Union{Missing, String} = missing
    Names::Union{Missing, String} = missing
    Ports::Union{Missing, String} = missing
    exists::Bool = true
end

Represents a docker container on the local environment. Should not be instantiated directly. If exists is true, then the container is assumed to exit and so should be visible from utilities such as docker container ls --all.

source
Jot.FunctionTestDataType
struct FunctionTestData
  test_argument::Any
  expected_response::Any
end

A simple data structure that contains a test argument for a given lambda function, and what return value is expected from the function if passed taht test argument. For example, if your responder function takes a Vector{Int64} and increments each element in the vector by 1, you might use [1, 2] as the test_argument, and [2, 3] as the expected_response.

source
Jot.InvocationTimeBreakdownType
struct InvocationTimeBreakdown
  total::Float64
  ex_responder_function_time::Union{Nothing, Float64}
  precompile_time::Union{Nothing, Float64}
  responder_function_time::Float64
end

A simple time breakdown of a single AWS Lambda invocation. total should be close to or the same as the sum of all other attributes in the struct.

ex_responder_function_time means all of the time spent outside of the responder function.

precompile_time is the time that Julia has spent pre-compiling functions, as they are used for the first time.

responder_function_time means all the time spent within the responder function, excluding any precompile time within the function.

If an attribute is nothing, this means that this process did not run at all. For example, if an AWS Lambda function is already available, it may not need to start Julia and therefore the ex_responder_function_time will be nothing.

source
Jot.LambdaFunctionType
@with_kw mutable struct LambdaFunction
    FunctionName::Union{Missing, String} = missing
    FunctionArn::Union{Missing, String} = missing
    Runtime::Union{Missing, String} = missing
    Role::Union{Missing, String} = missing
    Handler::Union{Missing, String} = missing
    CodeSize::Union{Missing, Int64} = missing
    Description::Union{Missing, String} = missing
    Timeout::Union{Missing, Int64} = missing
    MemorySize::Union{Missing, Int64} = missing
    LastModified::Union{Missing, String} = missing
    CodeSha256::Union{Missing, String} = missing
    Version::Union{Missing, String} = missing
    TracingConfig::Union{Missing, Dict{String, Any}} = missing
    RevisionId::Union{Missing, String} = missing
    PackageType::Union{Missing, String} = missing
    exists::Bool = true
end

Represents a Lambda function, hosted on AWS. Should not be instantiated directly. If exists is true, then the image is assumed to exit and so should be visible from utilities such as aws lambda list-functions

source
Jot.LambdaFunctionInvocationLogType
struct LambdaFunctionInvocationLog
  RequestId::String
  cloudwatch_log_group_name::String
  cloudwatch_log_start_event::Union{Nothing, LogEvent}
  cloudwatch_log_end_event::LogEvent
  cloudwatch_log_report_event::LogEvent
  cloudwatch_log_events::Vector{LogEvent}
end

The log output from a Lambda function invocation, obtained via invoke_function_with_log.

source
Jot.LocalImageType
mutable struct LocalImage
    CreatedAt::Union{Missing, String} = missing
    Digest::String
    ID::String
    Repository::String
    Size::Union{Missing, String} = missing
    Tag::String
    exists::Bool = true
end

Represents a docker image on the local machine, and stores associated metadata. Should not be instantiated directly. If exists is true, then the image is assumed to exit and so should be visible from utilities such as docker image ls.

source
Jot.ResponderType
struct Responder{IT}
    local_path::String
    response_function::Symbol
    response_function_param_type::Type{IT}
    registry_urls::Vector{String}
    source_path::AbstractString
end

A responder, stored at the location pointed to by local_path, and a valid Julia package. This is not instantiated directly, but created via the get_responder function.

source
Jot.LogEventType
struct LogEvent
  timestamp::Int64
  message::String
  ingestionTime::Int64
end

A single item of log output from AWS Cloudwatch, returned within a LambdaFunctionInvocationLog.

source
Jot.RemoteImageType
@with_kw mutable struct RemoteImage
    imageDigest::Union{Missing, String} = missing
    imageTag::Union{Missing, String} = missing
    ecr_repo::Union{Missing, ECRRepo} = missing
    exists::Bool = true
end

Represents a docker image stored in an AWS ECR Repository. The exists attribute indicates whether the RemoteImage still exists.

source