-
Notifications
You must be signed in to change notification settings - Fork 68
Home
Please go to https://cfengine.com/docs/3.5/manuals-design-center.html for the latest Design Center manuals and reference.
This page will be retired soon. Please excuse the clutter.
The Design Center is a public repository for customizable CFEngine design patterns and code. Here you can download finished solutions to use and adapt them for your environment, or find examples that inspire you to develop new patterns. The CFEngine Design Center is a place for infrastructure engineers to share and re-use knowledge and expertise.
Whether you are just getting started with CFEngine or are a veteran writing CFEngine policies, the Design Center has something for you. The focus of this Design Center is a collection of Sketches. Sketches capture common configuration and policy for a software applications and utilities such as MySQL, Wordpress, and Apache.
-
Introduction to CFEngine Sketches - For more information about Policies and Sketches read this overview.
-
Introduction to Design Centers Tools: cf-sketch - The main tool you will use to interact with Sketches from the command line is
cf-sketch
-
Introduction to Design Centers Tools: cf-dc-api - The API protocol is implemented by the
cf-dc-api.pl
tool. -
Introduction to Design Center API - The Design Center API lets you interact with Design Center over a simple JSON protocol.
If you are new to CFEngine, the Design Center is the place to start. By installing and configuring Sketches, CFEngine administrators can get started without touching a single line of CFEngine code.
The sketches available from the DC have been carefully reviewed and tested to guarantee that they will perform their task as indicated. Here are some of the tasks you could complete using CFEngine Sketches:
-
Install and configure MySQL on a Linux server, using the
Database::Install::MySQL
sketch. Or how about PostgreSQL? TryDatabase::Install::PostgreSQL
.. -
Configure sshd on a Unix server, using the
Security::SSH
sketch. -
Configure DNS Settings, the local hosts table, or the system clock timezone using the
System::config_resolver
,System::etc_hosts
orSystem::tzconfig
sketches, respectively.
If you are an advanced CFEngine user, you will find that the Design Center is full of components for managing complex tasks. The use of sketches will allow you to simplify your existing policies, while retaining full control over the parameters used. These shared sketches may even allow you to do a few complex things that you had not implemented yet.
In addition, you have probably accumulated over time a good number of useful CFEngine bundles and body definitions, and techniques for performing useful tasks. We encourage you to contribute to the Design Center, so that more people can benefit from your experience and knowledge.
We invite you to:
-
[[Install the Design Center and
cf-sketch
|Installing DC]] -
Read the Getting started with Design Center guide to learn how to the basic usage of
cf-sketch
. -
Visit the CFEngine Design Center repository on github to get an idea oef what it contains.
-
Visit the CFEngine Design Center Portal where you can browse sketches by age, category, popularity, author and more.
-
Read the Writing DC Sketches and Contributing to the CFEngine Design center guides to learn how to write and contribute your own sketches.
If you have any comments or suggestions, please let us know by sending email to [email protected].