Puppet gets a more expressive configuration language

Administrators can now build iterative loops into their configuration scripts

With an update to its namesake configuration tool, Puppet Labs has introduced a programming language designed to give administrators more flexibility in scripting their deployment routines.

Puppet 3.2.1, the first public release in the Puppet 3.2 series, can also now accept external certificate authorities (CAs), allowing organizations to use their in-house authorization systems with their Puppet deployments.

Puppet is open-source software that system administrators can use to help manage systems. It can be used to automate repetitive tasks, deploy applications and manage the process of adding servers to scale systems.

"Puppet's configuration language has always been focused on the best combination of simplicity and power, and my goal was always to have it be more like a configuration file than a programming language," wrote Luke Kanies, founder and CEO of Puppet Labs, in an email interview. "However, as our community has built more sophisticated infrastructures with Puppet Enterprise ... people have needed more power in the language."

The new language is "a great step forward in terms of being able to concisely express complicated configurations in a readable, maintainable way," Kanies wrote. In particular, the language can be used to more easily manage multiple systems as a single group, rather than manage each one separately. It will also allow administrators to automate large groups of services as a single entity.

The language, and associated parser, is "really a ground-up reimplementation of the Puppet language, using an expression- instead of statement-based grammar, which allows both a lot more power and flexibility with what you can do," explained Puppet product owner Eric Sorenson, in a Puppet blog post announcing the new version.

Development of the new language came about after the Puppet maintainers deprecated the Puppet Ruby DSL (domain specific language) module. The Puppet Ruby DSL offered a number of advanced features not available in Puppet's native language, most notably the ability to run iterative loops, long a common feature in nearly all programming languages today. The DSL, however, proved to be too buggy to support.

The new parser is not finished, Puppet admitted. It requires more work, in how it interprets both the new and old Puppet commands. As a result, it does not run by default on Puppet 3.2. Instead, the user must evoke it from the command line or from Puppet's startup configuration file. The Puppet maintainers are also looking for feedback from users on other ways to improve the language and parser.

Puppet 3.2 can now also accept digital certificates from external sources. The maintainers developed this feature in conjunction with the Mozilla Foundation, which had already created code for its own Puppet implementation that would recognize external CAs. Originally, Kanies built a simple CA into Puppet, one that used a simple implementation of the Secure Socket Layer (SSL). "Now many organizations are running their own CA internally ... so it makes sense to integrate with the services our customers already have," Kanies wrote.

Puppet 3.2 is also the first version of the software that fully supports OpenWRT, a popular Linux distribution for Wi-Fi routers and other embedded systems.

In addition to releasing Puppet 3.2, Puppet Labs also announced that the commercial version of its software, Puppet Enterprise, can be used to provision, configure and manage workloads in VMware's vCloud Hybrid Service, which debuted this week for a selected set of users.

Joab Jackson covers enterprise software and general technology breaking news for The IDG News Service. Follow Joab on Twitter at @Joab_Jackson. Joab's e-mail address is Joab_Jackson@idg.com

Join the Good Gear Guide newsletter!

Error: Please check your email address.

Tags System suitesmaintenanceUtilitiessoftwarePuppet Labssystem management

Our Back to Business guide highlights the best products for you to boost your productivity at home, on the road, at the office, or in the classroom.

Keep up with the latest tech news, reviews and previews by subscribing to the Good Gear Guide newsletter.

Joab Jackson

IDG News Service
Show Comments

Essentials

Microsoft L5V-00027 Sculpt Ergonomic Keyboard Desktop

Learn more >

Lexar® JumpDrive® S57 USB 3.0 flash drive

Learn more >

Mobile

Lexar® JumpDrive® S45 USB 3.0 flash drive 

Learn more >

Exec

HD Pan/Tilt Wi-Fi Camera with Night Vision NC450

Learn more >

Lexar® JumpDrive® C20c USB Type-C flash drive 

Learn more >

Lexar® Professional 1800x microSDHC™/microSDXC™ UHS-II cards 

Learn more >

Audio-Technica ATH-ANC70 Noise Cancelling Headphones

Learn more >

Budget

Back To Business Guide

Click for more ›

Most Popular Reviews

Latest News Articles

Resources

PCW Evaluation Team

Michael Hargreaves

Windows 10 for Business / Dell XPS

I’d happily recommend this touchscreen laptop and Windows 10 as a great way to get serious work done at a desk or on the road.

Aysha Strobbe

Windows 10 / HP Spectre

Ultimately, I think the Windows 10 environment is excellent for me as it caters for so many different uses. The inclusion of the Xbox app is also great for when you need some downtime too!

Mark Escubio

Windows 10 / Lenovo Yoga

For me, the Xbox Play Anywhere is a great new feature as it allows you to play your current Xbox games with higher resolutions and better graphics without forking out extra cash for another copy. Although available titles are still scarce, but I’m sure it will grow in time.

Kathy Cassidy

STYLISTIC Q702

First impression on unpacking the Q702 test unit was the solid feel and clean, minimalist styling.

Anthony Grifoni

STYLISTIC Q572

For work use, Microsoft Word and Excel programs pre-installed on the device are adequate for preparing short documents.

Featured Content

Latest Jobs

Don’t have an account? Sign up here

Don't have an account? Sign up now

Forgot password?