C Shell M4 Yacc Emacs Lisp Makefile Other
Latest commit 627b6c4 Aug 4, 2017 @jimis jimis committed on GitHub Merge pull request #2895 from skreuzer/CFE-1960
CFE-1960: fix storage mount promise when existing mountpoint has a si…
Permalink
Failed to load latest commit information.
3rdparty/peg-0.1.13 Fix typos found by codespell Jan 2, 2015
cf-agent CFE-2198: Ignore commented out entries in fstab when edit_fstab is true. Aug 3, 2017
cf-execd Update maintainer to Northern.tech. Jul 14, 2017
cf-key Update maintainer to Northern.tech. Jul 14, 2017
cf-monitord Update maintainer to Northern.tech. Jul 14, 2017
cf-net Update maintainer to Northern.tech. Jul 14, 2017
cf-promises Update maintainer to Northern.tech. Jul 14, 2017
cf-runagent Update maintainer to Northern.tech. Jul 14, 2017
cf-serverd Update maintainer to Northern.tech. Jul 14, 2017
cf-upgrade Update maintainer to Northern.tech. Jul 14, 2017
contrib Update maintainer to Northern.tech. Jul 14, 2017
docs Update maintainer to Northern.tech. Jul 14, 2017
examples Update maintainer to Northern.tech. Jul 14, 2017
ext Update maintainer to Northern.tech. Jul 14, 2017
libcfnet Update maintainer to Northern.tech. Jul 14, 2017
libcompat Update maintainer to Northern.tech. Jul 14, 2017
libenv Update maintainer to Northern.tech. Jul 14, 2017
libpromises Update maintainer to Northern.tech. Jul 14, 2017
libutils Ensure that CFE-2527 fix works on Solaris. Jul 19, 2017
m4 Update maintainer to Northern.tech. Jul 14, 2017
misc Update copyright to Northern.tech and current year. Jul 11, 2017
tests CFE-2198: Ignore commented out entries in fstab when edit_fstab is true. Aug 3, 2017
travis-scripts Fix nasty travis build breakage. Jun 1, 2017
.gitignore CFE-2493: (cf-net) connect command Apr 28, 2017
.mailmap Coalesce Chris Dituri's author names in .mailmap Jan 8, 2014
.travis.yml Enabled osx in travis Mar 29, 2017
AUTHORS Fix typos found by codespell Jan 2, 2015
BSDmakefile Update maintainer to Northern.tech. Jul 14, 2017
ChangeLog Update "getvalues()" entry Jan 23, 2017
GLOBALS GLOBALS: how to suppress mutability in CFEngine internals. Jul 25, 2014
HACKING.md HACKING.md: do not end log messages with punctuation. Jun 27, 2017
INSTALL Fix typos found by codespell Jan 2, 2015
LICENSE LICENSE: Fix a typo Sep 25, 2016
Makefile.am Update maintainer to Northern.tech. Jul 14, 2017
README.md Clarify INSTALL contains install from source instructions May 19, 2017
autogen.sh Update maintainer to Northern.tech. Jul 14, 2017
checkglobals.sh Update maintainer to Northern.tech. Jul 14, 2017
configure.ac Update maintainer to Northern.tech. Jul 14, 2017
configure_flags.env.in Export core version in configure_flags so we can check it downstream. Mar 17, 2015
create_tarball.sh Update maintainer to Northern.tech. Jul 14, 2017
splint-check.sh Update splint script. Jun 2, 2017

README.md

Version Core MPF
master Core Build Status MPF Build Status
3.10.x LTS Core Build Status MPF Build Status
3.7.x LTS Core Build Status MPF Build Status

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

To install from source 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.