Overview

Kotless gradle plugin is a key object in Kotless architecture. It tightens up abstract representation of Serverless application, and its actual deployment.

Plugin defines few tasks to deploy Kotless-based application

Note, that actual lambdas jars are prepared using `shadowJar` plugin

Furthermore, Kotless gradle plugin defines a part of configurations of a Kotless-based application deployment.

Following configurations are available via a plugin:

Here is the simple snippet of the whole configuration:

config {
    //see details in a Kotless Configuration docs
    bucket = "kotless.s3.example.com"
    prefix = "dev"

    workDirectory = file("src/main/static")

    terraform {
        profile = "example-profile"
        region = "us-east-1"
    }

    optimization {
        mergeLambda = MergeLambda.All
    }

    //see details in a WebApp Configuration docs
    webapp(project) {
        packages = setOf("org.example.kotless")
        route53 = Route53("kotless", "example.com")
        lambda {
            timeoutSec = 300
            memoryMb = 512
        }
    }
}