Automating Experiments with a Kotlin DSL
summary
Odnoklassniki described a Kotlin-based DSL, console runner and Docker packaging used to automate experiment preparation and launch, replacing manual steps and Ansible-style playbooks. The system integrates with Jira and the configuration store, validates desired versus actual state, supports planning, execution and rollback, generates human-friendly descriptions, and was demoed applying and rolling back feature flags in a production environment serving 71 million monthly users on 8,000 servers with a history of 10,000+ experiments; the Kotlin scripting tooling requires ongoing maintenance.
AI-written summary · about
chapters (14)
- 0:00Introduction
- 1:31Experiment problems
- 4:39Experiment launch process
- 7:26Automating experiments
- 10:58Kotlin for DSL
- 14:27Hierarchical model
- 19:25Kotlin Script execution
- 22:36Console app
- 25:51System demo
- 28:20Model separation
- 31:50Generating models
- 32:51Summary
- 33:55Tool limitations
- 35:21Q&A
related talks
54mAutomating experiments with Kotlin DSL
44mKotlin DSL as a single source of truth for solving many tasks
37mUnlock Power of Kotlin DSL for Kubernetes
30mKotlin DSLs
45mNext Level DSLs
37mLeveraging Kotlin to write maintainable UI tests
34mCreating Small DSLs with Idiomatic Kotlin
50mThe Kotlin DSL experience in Gradle
