News about "Learning CFEngine 3"

Third Release of 'Learning CFEngine 3' Is Out!

I am delighted to announce that, after many months of work, the Third Release of Learning CFEngine 3 has been released! You can get it directly from O’Reilly (affiliate link) or from any other of the usual places. If you previously purchased the ebook version, you should see the update already in your “Your products” page at, with options to download it or sync it to Dropbox, Google Drive or Kindle.

There are many changes throughout, but here is a brief summary of the most important ones:

  • The book has been thoroughly updated for CFEngine 3.5.2. This includes many new features, such as the new edit_template mechanism, improved services: promises, lots of new functions, and many others.
  • The brand-new Chapter 5 provides an overview of the CFEngine Design Center. The Design Center had been mentioned in previous releases, but now is a mature and capable resource including powerful tools that allow you to use CFEngine in a completely new way, using entirely data-driven configuration. This chapter will get you started with the Design Center, and also provide pointers for you to explore on your own and even to contribute to it!
  • Several new sections have been added, including “Dynamic Loading and Execution”, “Using Vagrant with CFEngine”, “Service Management Using CFEngine”, and others.
  • The brand-new Appendix C, contributed by Aleksey Tsalolikhin, contains a summary of all the attributes available for promises in agent bundles. Just browsing through this Appendix will give you an excellent overview of all the things you can do with CFEngine. In the electronic version of this book, each attribute links to its reference documentation in the CFEngine website, so you can look up the full details in seconds.
  • Fixes to all known errata, typos, failures of clarity, and numerous other things.

In addition, many of the examples have been updated or improved, additional emphasis has been placed on how to integrate your policies into a running CFEngine installation, and numerous other improvements have been made. All while maintaining the clarity, practicality and usefulness you have come to expect from this book. As usual, in the electronic versions, you will find that CFEngine keywords and concepts are links to the corresponding sections of the documentation.

I would like to thank YOU for reading the book, and for providing me with so many useful ideas, suggestions and corrections through the O’Reilly errata page, the CFEngine mailing list, IRC channel, and directly by email. Your feedback has made this new release possible and many times better. THANK YOU! (and please keep it coming)

I’m extremely happy to bring you this release, and I’m confident you will be happy with it as well. Please check it out!