SPLASH 2023
Sun 22 - Fri 27 October 2023 Cascais, Portugal
Tue 24 Oct 2023 16:00 - 16:22 at Oceanus - Configuration testing Chair(s): Jürgen Cito

At Google, we’ve noted the following problems with changing config code:

  • Declarative code can lead to unintended consequences
  • Leaky abstractions can reduce readability
  • Testing is hard or non-existent

The solution we’ve arrived at is Configuration diffing.

How does it solve those problems?

  • Doesn’t expose control flow
  • Doesn’t require writing tests or any kind of opt in
  • Bypasses abstractions and poorly written code

Caveat: Not a silver bullet for preventing outages.

What is Configuration Diffing?

  • Configuration diffing is a model for verifying the output of our configuration code.
  • It consists of
    • Dependency management - what is affected by this change?
    • Execution - how is it affected?
    • Delivery - how do we present it?

Tue 24 Oct

Displayed time zone: Lisbon change

16:00 - 17:30
Configuration testingCONFLANG at Oceanus
Chair(s): Jürgen Cito TU Wien
16:00
22m
Talk
Applying Large Scale Diffing to Declarative Configuration Code for Production Safety
CONFLANG
16:22
22m
Talk
Creed for Speed: Comprehensive Infrastructure as Code Testing
CONFLANG
Daniel Sokolowski University of St. Gallen, David Spielmann University of St. Gallen, Guido Salvaneschi University of St. Gallen
Pre-print
16:45
22m
Talk
Configuration testing for Borg at Google
CONFLANG
17:07
22m
Live Q&A
Configuration testing Q&A/Discussion
CONFLANG