skip to main content
10.1145/2541614.2541632acmconferencesArticle/Chapter ViewAbstractPublication PagesmiddlewareConference Proceedingsconference-collections
research-article

Automated testing of chef automation scripts

Published: 09 December 2013 Publication History

Abstract

Infrastructure as Code (IaC) is a novel approach for deployment of middleware and applications. IaC typically builds on automation scripts to put the system into a specific state. The series of steps in an automation should be idempotent to guarantee repeatability and convergence. These are key factors if automations are run periodically to override out-of-band changes and prevent drifts from the desired state. Rigorous testing must ensure that the system reliably converges from arbitrary initial/intermediate states to a desired state.
We tackle this issue and demonstrate our tool for automated testing of automation scripts. Our tool is tailored to Opscode's Chef, one of the most popular IaC frameworks to date. Various testing parameters can be configured, and the Web-based user interface allows to inspect the system state changes during execution. Detailed test reports are created at the end of a test suite, which facilitate tracking down the root cause of failures and issues of non-idempotence.

References

[1]
M. Burgess. Testable system administration. Communications of the ACM, 54(3): 44--49, 2011.
[2]
C. Cadar et al. Symbolic execution for software testing in practice: preliminary assessment. In ICSE, 2011.
[3]
A. L. Couch and Y. Sun. On the algebraic structure of convergence. In 14th IEEE DSOM Workshop, 2003.
[4]
P. Helland. Idempotence is not a medical condition. Queue, 10(4): 30:30--30:46, Apr. 2012.
[5]
P. Helland and D. Campbell. Building on quicksand. In CIDR. www.cidrdb.org, 2009.
[6]
J. Humble and D. Farley. Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation. Addison-Wesley, 2010.
[7]
W. Hummer, F. Rosenberg, F. Oliveira, and T. Eilam. Testing Idempotence for Infrastructure as Code. In ACM/IFIP/USENIX Middleware Conference, 2013.
[8]
M. Hüttermann. DevOps for Developers. Apress, 2012.
[9]
S. Nelson-Smith. Test-Driven Infrastructure with Chef. O'Reilly, 2011.
[10]
Opscode. http://www.opscode.com/chef/.
[11]
Puppet Labs, http://puppetlabs.com/.
[12]
S. Traugott. Why order matters: Turing equivalence in automated systems administration. In LISA, 2002.
[13]
M. Utting, A. Pretschner, and B. Legeard. Taxonomy of model-based testing approaches. STVR, 22(5), 2012.

Cited By

View all
  • (2023)Preliminary Investigation into a Security Approach for Infrastructure as CodeProceedings of Eighth International Congress on Information and Communication Technology10.1007/978-981-99-3091-3_63(763-783)Online publication date: 30-Jul-2023
  • (2022)As Code Testing: Characterizing Test Quality in Open Source Ansible Development2022 IEEE Conference on Software Testing, Verification and Validation (ICST)10.1109/ICST53961.2022.00031(208-219)Online publication date: Apr-2022
  • (2021)Shhh!: 12 Practices for Secret Management in Infrastructure as Code2021 IEEE Secure Development Conference (SecDev)10.1109/SecDev51306.2021.00024(56-62)Online publication date: Oct-2021
  • Show More Cited By

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
MiddlewareDPT '13: Proceedings Demo & Poster Track of ACM/IFIP/USENIX International Middleware Conference
December 2013
38 pages
ISBN:9781450325493
DOI:10.1145/2541614
  • Program Chairs:
  • Songlin Hu,
  • Zibin Zheng
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 09 December 2013

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Research-article

Conference

Middleware '13
Sponsor:

Upcoming Conference

MIDDLEWARE '25
26th International Middleware Conference
December 15 - 19, 2025
Nashville , TN , USA

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)11
  • Downloads (Last 6 weeks)0
Reflects downloads up to 07 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2023)Preliminary Investigation into a Security Approach for Infrastructure as CodeProceedings of Eighth International Congress on Information and Communication Technology10.1007/978-981-99-3091-3_63(763-783)Online publication date: 30-Jul-2023
  • (2022)As Code Testing: Characterizing Test Quality in Open Source Ansible Development2022 IEEE Conference on Software Testing, Verification and Validation (ICST)10.1109/ICST53961.2022.00031(208-219)Online publication date: Apr-2022
  • (2021)Shhh!: 12 Practices for Secret Management in Infrastructure as Code2021 IEEE Secure Development Conference (SecDev)10.1109/SecDev51306.2021.00024(56-62)Online publication date: Oct-2021
  • (2020)Testing practices for infrastructure as codeProceedings of the 1st ACM SIGSOFT International Workshop on Languages and Tools for Next-Generation Testing10.1145/3416504.3424334(7-12)Online publication date: 8-Nov-2020
  • (2020)On the Effectiveness of Tools to Support Infrastructure as Code: Model-Driven Versus Code-CentricIEEE Access10.1109/ACCESS.2020.29665978(17734-17761)Online publication date: 2020
  • (2019)Source code properties of defective infrastructure as code scriptsInformation and Software Technology10.1016/j.infsof.2019.04.013112:C(148-163)Online publication date: 1-Aug-2019
  • (2016)Critical analysis of vendor lock-in and its impact on cloud computing migrationJournal of Cloud Computing: Advances, Systems and Applications10.1186/s13677-016-0054-z5:1(1-18)Online publication date: 1-Dec-2016
  • (2015)An Automated Parallel Approach for Rapid Deployment of Composite Application ServersProceedings of the 2015 IEEE International Conference on Cloud Engineering10.1109/IC2E.2015.16(126-134)Online publication date: 9-Mar-2015

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media