GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - cfengine/core: CFEngine Community

BranchesTags
Open more actions menu

Latest commit

 

History

19,417 Commits
19,417 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
3rdparty/peg-0.1.15
3rdparty/peg-0.1.15
 
 
cf-agent
cf-agent
 
 
cf-check
cf-check
 
 
cf-execd
cf-execd
 
 
cf-key
cf-key
 
 
cf-monitord
cf-monitord
 
 
cf-net
cf-net
 
 
cf-promises
cf-promises
 
 
cf-reactor
cf-reactor
 
 
cf-runagent
cf-runagent
 
 
cf-secret
cf-secret
 
 
cf-serverd
cf-serverd
 
 
cf-testd
cf-testd
 
 
cf-upgrade
cf-upgrade
 
 
ci
ci
 
 
contrib
contrib
 
 
docs
docs
 
 
examples
examples
 
 
ext
ext
 
 
libcfecompat
libcfecompat
 
 
libcfnet
libcfnet
 
 
libenv
libenv
 
 
libntech @ 3c21479
libntech @ 3c21479
 
 
libpromises
libpromises
 
 
m4
m4
 
 
misc
misc
 
 
python
python
 
 
tests
tests
 
 
.CFVERSION
.CFVERSION
 
 
.clang-format
.clang-format
 
 
.gitignore
.gitignore
 
 
.gitmodules
.gitmodules
 
 
.mailmap
.mailmap
 
 
.style.yapf
.style.yapf
 
 
AUTHORS
AUTHORS
 
 
BSDmakefile
BSDmakefile
 
 
CHANGELOG.md
CHANGELOG.md
 
 
CODE_OF_CONDUCT.md
CODE_OF_CONDUCT.md
 
 
CONTRIBUTING.md
CONTRIBUTING.md
 
 
GLOBALS
GLOBALS
 
 
INSTALL
INSTALL
 
 
LICENSE
LICENSE
 
 
Makefile.am
Makefile.am
 
 
README.md
README.md
 
 
SECURITY.md
SECURITY.md
 
 
autogen.sh
autogen.sh
 
 
checkglobals.sh
checkglobals.sh
 
 
config.post.h.in
config.post.h.in
 
 
configure.ac
configure.ac
 
 
configure_flags.env.in
configure_flags.env.in
 
 
create_tarball.sh
create_tarball.sh
 
 
lgtm.yml
lgtm.yml
 
 
splint-check.sh
splint-check.sh
 
 

Repository files navigation

Gitter chat

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.

Source code repositories

CFEngine is comprised of several source code repositories. As you might be looking for another part of the open source code base, here is a list to ease navigation:

  • core (This repo) - The C source code for core components, like cf-agent and cf-serverd.
    • libntech (submodule in core) - Library of reusable C code, such as data structures, string manipulation, JSON parsing, file handling, etc.
    • core/contrib (subdirectory in core) - User-contributed tools and scripts
  • masterfiles - The Masterfiles Policy Framework (MPF) contains the default policy (.cf) files
  • documentation - Documentation on how CFEngine components work, the policy language, the enterprise features, etc.
  • cf-remote - Tooling to make deploying / testing CFEngine across many remote instances easy
  • buildscripts - Scripts and files needed to build installer packages across a wide variety of supported platforms

(Each repo also contains some supporting code/files, such as tests, scripts, documentation, etc.).

Installation

Pre-built installers are available from our website:

  • Download CFEngine Enterprise Installers
  • Download CFEngine Community Installers

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

In order to use the built cf-agent in the source tree you must add a $HOME/.cfagent/bin/cf-promises file:

$ pwd
<something>/core
$ echo "cd $(pwd); cf-promises/cf-promises \"\$@\"" > ~/.cfagent/bin/cf-promises

Hello World

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

bundle agent main
{
  reports:
    "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

Debugging

As this project uses autotools you must use libtool to run gdb/lldb/debuggers:

./libtool --mode=execute <gdb|lldb|yourdebugger> ./cf-agent/cf-agent

Contributing

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

Authors

CFEngine was originally created by Mark Burgess with many contributions from around the world. Thanks everyone!

CFEngine is sponsored by Northern.tech AS

About

CFEngine Community

cfengine.com

Topics

automationccfengineconfiguration-managementinfrastructure-as-code

Resources

Readme
License

Code of conduct

Code of conduct

Contributing

Contributing

Security policy

Security policy
Activity
Custom properties

Stars

540 stars

Watchers

51 watching

Forks

203 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.