Infrastructure in Code: Towards Developer-Friendly Cloud Applications
Vladislav Tankov, Dmitriy Valchuk, Yaroslav Golubev, Timofey Bryksin

TL;DR
This paper introduces Infrastructure in Code, a novel approach where infrastructure is automatically derived from application code, exemplified by the Kotless framework for Kotlin that simplifies cloud deployment and migration.
Contribution
The paper presents the concept of Infrastructure in Code and introduces Kotless, a cloud-agnostic framework that automates infrastructure generation from application code.
Findings
Kotless supports multiple cloud providers and DSLs.
Demonstrated efficient migration of applications to serverless environments.
Showcased the framework's extendability and cloud-agnostic capabilities.
Abstract
The popularity of cloud technologies has led to the development of a new type of applications that specifically target cloud environments. Such applications require a lot of cloud infrastructure to run, which brought about the Infrastructure as Code approach, where the infrastructure is also coded using a separate language in parallel to the main application. In this paper, we propose a new concept of Infrastructure in Code, where the infrastructure is deduced from the application code itself, without the need for separate specifications. We describe this concept, discuss existing solutions that can be classified as Infrastructure in Code and their limitations, and then present our own framework called Kotless - an extendable cloud-agnostic serverless framework for Kotlin that supports two cloud providers, three DSLs, and two runtimes. Finally, we showcase the usefulness of Kotless by…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsCloud Computing and Resource Management · Software System Performance and Reliability · Service-Oriented Architecture and Web Services
