Skip to Main content Skip to Navigation
Conference papers

Testing Idempotence for Infrastructure as Code

Abstract : Due to the competitiveness of the computing industry, software developers are pressured to quickly deliver new code releases. At the same time, operators are expected to update and keep production systems stable at all times. To overcome the development–operations barrier, organizations have started to adopt Infrastructure as Code (IaC) tools to efficiently deploy middleware and applications using automation scripts. These automations comprise a series of steps that should be idempotent to guarantee repeatability and convergence. Rigorous testing is required to ensure that the system idempotently converges to a desired state, starting from arbitrary states. We propose and evaluate a model-based testing framework for IaC. An abstracted system model is utilized to derive state transition graphs, based on which we systematically generate test cases for the automation. The test cases are executed in light-weight virtual machine environments. Our prototype targets one popular IaC tool (Chef), but the approach is general. We apply our framework to a large base of public IaC scripts written by operators, showing that it correctly detects non-idempotent automations.
Complete list of metadata

Cited literature [26 references]  Display  Hide  Download
Contributor : Hal Ifip Connect in order to contact the contributor
Submitted on : Wednesday, March 1, 2017 - 5:33:05 PM
Last modification on : Wednesday, October 13, 2021 - 7:58:04 PM
Long-term archiving on: : Tuesday, May 30, 2017 - 6:20:08 PM


Files produced by the author(s)


Distributed under a Creative Commons Attribution 4.0 International License



Waldemar Hummer, Florian Rosenberg, Fábio Oliveira, Tamar Eilam. Testing Idempotence for Infrastructure as Code. 14th International Middleware Conference (Middleware), Dec 2013, Beijing, China. pp.368-388, ⟨10.1007/978-3-642-45065-5_19⟩. ⟨hal-01480784⟩



Les métriques sont temporairement indisponibles