Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
CFEngine Community
branch: master

Merge pull request #2126 from kacfengine/fix_systemd_class

Fix systemd detection if launch path has two "systemd" substrings.
latest commit 00d3947c42
Dimitrios Apostolou jimis authored
Failed to load latest commit information.
3rdparty/peg-0.1.13 Fix typos found by codespell
cf-agent Merge pull request #2117 from worr/4k/match-region
cf-execd Redmine#6905: cf-execd crashes on IP addresses detection
cf-key Do not fallback on unsafe seed data for the PRNG
cf-monitord Explicit initialisation works as documentation - no change in functio…
cf-promises --warn reequires an argumnet like the short option -W, fixes core dump
cf-runagent Add missing copyright blurbs
cf-serverd Redmine #6947: Fix evaluation of promises in server bundles.
cf-upgrade cf-upgrade: Fix out of tree builds
contrib Make cf-locate traversal order deterministic, to avoid unneeded diffs.
docs Add missing copyright blurbs
examples Fix expected example output after commit a7bc263.
ext misc: Fix typos found by codespell
libcfnet misc: Fix typos found by codespell
libcompat misc: Fix typos found by codespell
libenv Fix systemd detection if launch path has two "systemd" substrings.
libpromises Merge pull request #2069 from worr/bug/poor-seed-entropy
libutils Remove limit in SeqSort and SeqSoftSort for sorting only up to 1000 i…
m4 misc: Fix typos found by codespell
tests Merge pull request #2123 from jimis/process_kill-redmine6946
.gitignore Ignore compiled emacs lisp files in contrib/.
.mailmap Coalesce Chris Dituri's author names in .mailmap
AUTHORS Fix typos found by codespell
BSDmakefile Add missing copyright blurbs
ChangeLog Changelog update.
GLOBALS GLOBALS: how to suppress mutability in CFEngine internals. Typo-fixes and a rephrase in
INSTALL Fix typos found by codespell
LICENSE Fix typos found by codespell Change owner, group of source tarball contents to root. Clarify that files by default are GPLv3. Add missing copyright blurbs Add missing copyright blurbs Fix graceful process termination on HPUX. Made PAM detection more resilient, and catching some more errors. Add missing copyright blurbs Add missing copyright blurbs

CFEngine 3

CFEngine 3 is a popular open source configuration management system. Its primary function is to provide automated configuration and maintenance of large-scale computer systems.


Please see the INSTALL file for prerequisites and build instructions.


As per the LICENSE file, CFEngine Community is licensed under the GNU General Public License, version 3.

All the files in this repository are licensed under GNU GPL version 3, unless stated otherwise in the copyright notice inside the particular file.

Example Usage

Hello World

The following code demonstrates simple CFEngine output through a reports promise.

body common control
  bundlesequence => { "run" };

bundle agent run
      "Hello, world";

The following policy code may be executed with cf-agent (the main CFEngine binary) as follows.

$ cf-agent/cf-agent
R: Hello, world


Please see the file.

Relationship to CFEngine 2

CFEngine 3 is not a drop-in upgrade for CFEngine 2 installations. It is a significantly more powerful version, but it is incompatible with the CFEngine 2 policy language.

The server part of CFEngine 3 supports the network protocol of CFEngine 2, so you may upgrade your installation gradually.

Something went wrong with that request. Please try again.