1
MASTERFILES POLICY
FRAMEWORK: A SHORT
HISTORY AND FUTURE
DIRECTION
NICK ANDERSON
Created: 2017-02-07 Tue 18:34
Slide 2
Slide 2 text
2 . 1
FORK ME ON GITHUB!
https://github.com/nickanderson/presentation-MPF-history
Slide 3
Slide 3 text
3 . 1
INTRODUCTIONS
Slide 4
Slide 4 text
3 . 2
MY NAME IS NICK.
Wife, 2 kids, and a dog
Sysadmin/Infrastructure Engineer
You can find me online
|
nick@cmdln.org
nick.anderson@cfengine.com
twitter: @cmdln_
cmdln.org
linkedin.com/in/hithisisnick
How about you?
Slide 5
Slide 5 text
4 . 1
WHAT IS THE MASTERFILES POLICY
FRAMEWORK?
MPF for short
The default policy set
A starting place to build upon
Something that grew organically (at least from my
perspective)
Slide 6
Slide 6 text
5 . 1
MPF TIMELINE
Slide 7
Slide 7 text
5 . 2
3.0 (2009)
Example policy shipped in
/usr/local/share/doc/cfengine/inputs
promises.cf
failsafe.cf
update.cf
library.cf
site.cf
Slide 8
Slide 8 text
5 . 3
3.1 (2010)
Example policy shipped in
/usr/local/share/doc/cfengine/inputs
promises.cf
failsafe.cf
update.cf
cfengine_stdlib.cf
site.cf
Slide 9
Slide 9 text
5 . 4
3.2 (2011)
Example policy shipped in
/usr/local/share/doc/cfengine/example_config
promises.cf
failsafe.cf
update.cf
cfengine_stdlib.cf
site.cf
Slide 10
Slide 10 text
5 . 5
3.3 (2012)
The first hint of a base policy set
Base policy shipped in
/var/cfengine/share/CoreBase
promises.cf
failsafe.cf
cfengine_stdlib.cf
Slide 11
Slide 11 text
5 . 6
3.4 (2012)
Base policy shipped in
/var/cfengine/share/CoreBase
Structure arrives:
controls/.cf
failsafe/failsafe.cf
def.cf
services/
libraries/cfengine_stdlib.cf
cf-sketch-runfile.cf
Slide 12
Slide 12 text
5 . 7
3.5 (2013)
Base policy shipped in
/var/cfengine/share/CoreBase
controls/.cf
failsafe/failsafe.cf
def.cf
services/
libraries/cfengine_stdlib.cf
cf-sketch-runfile.cf
Slide 13
Slide 13 text
5 . 8
3.6 (2014) … OH MY
Moved out of core, into its own repository
Testing added
Stdlib rendered in docs
Build/install with make
Base policy shipped in
/var/cfengine/share/CoreBase
Used for both Enterprise and Community builds
cfe_internal/
inventory/
lib/VER/
services/autorun/
update/
Slide 14
Slide 14 text
5 . 9
3.7 - 3.9 (2015-2016)
Reduce enterprise policies evaluated on non Enterprise
agents
Improved inline policy documentation
3.7.0 Augments file (def.json) introduced
3.7.4 augments parsing moved from policy to C
3.8 - Version split lib and controls re-combined
3.9 - No major structural changes
Slide 15
Slide 15 text
5 . 10
3.10 (2016)
MPF rendered in reference manual
Formal naming convention for adjusting controls via
augments
control__key
Slide 16
Slide 16 text
6 . 1
FOR THE FUTURE?
More augmentation, less
modification
Slide 17
Slide 17 text
7 . 1
WHAT WOULD YOU LIKE TO SEE?
More augmentation, less
modification
https://github.com/cfengine/masterfiles/pull/860/files