Skip to content
CFEngine Community
C Shell M4 Yacc Emacs Lisp Makefile Other
Find file
Latest commit 2e09905 Apr 28, 2016 @nickanderson nickanderson Merge pull request #2599 from nickanderson/adjust_changelog_for_doc_b…
…uild

Change: Adjust changelog markup to work with doc builds
Failed to load latest commit information.
3rdparty/peg-0.1.13 Fix typos found by codespell Jan 2, 2015
cf-agent ENT-2703: Store all set classes within eval context. Log only in ente… Apr 21, 2016
cf-execd CFE-2283: Add email filtering feature for cf-execd. Apr 20, 2016
cf-key Cleanup signal handling for agents and enable them earlier. Apr 12, 2016
cf-monitord CFE-1991: libenv: Add Linux parsing of /proc/net/ data. Mar 31, 2016
cf-promises Cleanup signal handling for agents and enable them earlier. Apr 12, 2016
cf-runagent Redmine#7926: Empty network response is not always considered as an e… Feb 23, 2016
cf-serverd CFE-2339 Don't accept old protocol by default. Apr 25, 2016
cf-upgrade cf-upgrade: Fix out of tree builds Jan 9, 2015
contrib Fix: Switch report.pl back to using hostnames in queries instead of i… Apr 8, 2016
docs Include the template files for extensions_template.[ch] in the source… Jun 16, 2015
examples Merge pull request #2590 from nickanderson/fix_splitstring_example Apr 20, 2016
ext misc: Fix typos found by codespell Jan 2, 2015
libcfnet Fix error messages when client-side gracefully closes connection. Mar 15, 2016
libcompat Redmine#7415: fix build failure on FreeBSD 7.1 Mar 15, 2016
libenv CFE-2071: add def.jq variable for convenience Apr 20, 2016
libpromises Merge pull request #2591 from kacf/lmdb_race_fix Apr 26, 2016
libutils Don't use macro for Seq operations. Apr 18, 2016
m4 Redmine #7808: Do not drop privileges when changes permissions on non… Jan 29, 2016
misc Merge pull request #2561 from kacf/unified_versions Apr 12, 2016
tests Add test executable to gitignore. Apr 27, 2016
.gitignore obliterate CFWORKDIR (GLOBAL_C) and its usage in the main codebase. Mar 30, 2015
.mailmap Coalesce Chris Dituri's author names in .mailmap Jan 8, 2014
AUTHORS Fix typos found by codespell Jan 2, 2015
BSDmakefile Add missing copyright blurbs Sep 22, 2014
ChangeLog Change: Adjust changelog markup to work with doc builds Apr 28, 2016
GLOBALS GLOBALS: how to suppress mutability in CFEngine internals. Jul 25, 2014
HACKING.md memtion that you can use ```Jira #1234``` in changelog entry to refer… Apr 12, 2016
INSTALL Fix typos found by codespell Jan 2, 2015
LICENSE Fix typos found by codespell Jan 2, 2015
Makefile.am Reintroduce circular dependency workaround. Partial revert of 29cb917 Jun 19, 2015
README.md Clarify that files by default are GPLv3. Sep 22, 2014
autogen.sh Fix POSIX shell detection on Solaris. Aug 31, 2015
checkglobals.sh Add missing copyright blurbs Sep 22, 2014
configure.ac Fix unintentional disturbance of tar configure test. Apr 27, 2016
configure_flags.env.in Export core version in configure_flags so we can check it downstream. Mar 17, 2015
create_tarball.sh Add missing copyright blurbs Sep 22, 2014
splint-check.sh Add missing copyright blurbs Sep 22, 2014

README.md

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.

Installation

Please see the INSTALL file for prerequisites and build instructions.

License

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
{
  reports:
    cfengine::
      "Hello, world";
}

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

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

Contributing

Please see the HACKING.md 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.