News

This page is no longer maintained. It is left here for historical purposes only.

September 19, 2011

 bcfg2-1.1.3.tar.gz security release.

May 27, 2011

 bcfg2-1.1.2.tar.gz (bugfix only) released.

  • Metadata: Stop stripping comments from clients.xml (Resolves #929)
  • SSLServer: Stop raising trapped exceptions from XMLRPCRequestHandler. Causes the server to wedge (Resolves #970)
  • YUMng
    • Add error checking to make sure gpg-pubkeys have all needed information
    • Fix handling of gpg-pubkey packages by yum 3.2.20 on SLES
  • Proxy: Fix for Python 2.7 xmlrpclib Transport class (Patch from Gordon Messmer)
  • Fix bcfg2-reports --badentry and --extraentry
  • schema: Add support for verify attribute (Resolves Ticket #883)
  • Chkconfig: track supervised services properly (Resolves Ticket #856)
  • Packages: fix global package coalescing (Patch from Jeramey Crawford) (Resolves Ticket #973)
  • Bcfg2: handle server strings that don't start with  https:// (Resolves Ticket #975)
  • man: Add man page for bcfg2-ping-sweep (#997)

November 15, 2010

 bcfg2-1.1.1.tar.gz (bugfix only) released.

  • reports: Fix bcfg2-admin reports init when db is nonexistent
  • Deprecate old configuration entries in the Deps schema (Ticket #950)
  • Various documentation updates
  • APT: Install missing configuration files (Ticket #622)
  • Extend client metadata to include group category information
  • Add new Guppy.py plugin to help trace memory leaks (from Tim Laszlo)
  • bcfg2-info: Fix showentries such that argument length is matched correctly
  • YUMng: Add verify_flags (Patch from Joe Digilio)

September 27, 2010

 bcfg2-1.1.0.tar.gz released.

  • Greatly improved accuracy and performance of the Packages plugin
  • A rewritten YUMng driver
  • Deprecate old-style server POSIX types

You will now need to specify Path entries in the bcfg2 server configuration instead of the old ConfigFile, Directory, SymLink entries. A tool for helping you transition existing configurations can be found at:

 https://trac.mcs.anl.gov/projects/bcfg2/browser/tags/bcfg2_1_1_0rc1/tools/posixunified.py

Compatibility with older clients is maintained through the use of the new POSIXCompat plugin which transforms the new Path entries to their older equivalents.

  • New Sphinx documentation

We have migrated user documentation to Sphinx. Information about building the documentation from the Bcfg2 source can be found at:

 https://trac.mcs.anl.gov/projects/bcfg2/wiki/Manual

  • Migrate git plugin to Dulwich
  • New detailed client view and other improvements in Django reports
  • Encap removed
  • New OS X packaging
  • New Upstart client tool
  • Migrate Hostbase to Django 1.1
  • New VCS plugins
    • Mercurial
    • Darcs
  • YUMng: Add support for Path type='ignore' entries

 http://docs.bcfg2.org/client/tools/yumng.html#posix-ignore-path-entries

  • Mercurial and Darcs plugins from Fabian Affolter
  • Fix for CentOS server hang issue from Tim Laszlo

There were also numerous other bugfixes that can be found at the following URL:

http://trac.mcs.anl.gov/projects/bcfg2/query?status=closed&group=resolution&milestone=Bcfg2+1.1.0+Release

January 21, 2010

 bcfg2-1.0.1.tar.gz (bugfix only) released.

  • Component: pass through xmlrpc Fault instances
  • Core: handle shutdowns properly for fam/gamin
  • IPS: Fix typo (Patch from Matthew Baker)
  • Info: Fix regex for paranoid options in info files
  • Metadata: build session cache properly for uuid clients
  • Metadata: fix use of session cache for cert-recognized clients
  • Metadata: handle errors more robustly, and perform clients.xml wranging in new file
  • Metadata: use normalized hostnames for comparison (reported by gregcoit)
  • Packages: create urls that work with old urllib2 (Resolves ticket #796)
  • Packages: handle architecture changes in Yum configs
  • Packages: process apt-source choices correctly with multi-package version requirements (Reported by gregcoit)
  • Plugin.py: Fix Cfg conflicts (Reported by Thorsten Lockert on irc)
  • Plugin: add a per-plugin runtime debugging infrastructure
  • Proxy: better error handling (Resolves Ticket #810)
  • Proxy: transport errors more gracefully (Fixes #803, at least on the client side)
  • RPMng: fix ignore filename handing (Resolves Ticket #811)
  • RPMng: supress prelink runs in dryrun mode (Resolves Ticket #794)
  • RcUpdate?: Fix Service detection on Gentoo (Patch from Thorsten Lockert #825)
  • RcUpdate?: Sync [5558] from trunk (will use notation from now on)
  • Reports: Fix incorrect error message (reported by Thorsten Lockert)
  • Reports: Fix interaction display (Patch from Tim Laszlo)
  • Reports: Fix traceback in Summary/System? views (ticket #793 Reported by Thorsten Lockert)
  • SSLServer: Add file descriptor leak fix from 1.0.0 stable branch
  • SSLServer: fix socket shutdown code (compatible across trunk, 1.0.1rc, and 0.9.6)
  • SSLServer: set socket timeout for client sockets
  • Schema: Add missing 'to' attribute for Path entries (Reported by Thorsten Lockert)
  • Schema: Add missing element/attributes
  • Xcmd: improve error handling for authentication failures
  • bcfg2-server: Enable logging to file (fixes #817)
  • debian packaging : Sync packaging fixes from Danny Clark
  • debian packaging: cosmetic postinstall fix from Sami Haahtinen
  • rpm packaging fixes (Resolves Ticket #789)

November 8, 2009

 bcfg2-1.0.0.tar.gz released.

  • Modular support for repositories under revision control
    • support for SVN, Git, Bzr, Fossil
  • Plugins
    • Packages plugin
      • supports package dependency auto-resolution for apt and yum-based package managers.
    • Bundler support for genshi formatted bundles
    • Metadata
      • force pretty-printing of clients file
      • refuse to add dynamic group membership in explicitly private groups
    • SSHbase
      • Alias and address support
  • Plugin API rework
    • Support fine-grained plugin roles (simplifies plugin development)
    • Support out of tree plugins
    • Support metadata plugin replacement
    • rework probes and properties plugins using new interfaces
  • Client Improvements
    • Package entry support for version=auto/any for APT, Yum, Blast, and SYSV drivers
    • Full RPM verification greatly simplified
    • launchd support for OSX 10.6
    • OpenSolaris IPS support
    • Display diff in interactive mode
    • POSIX Path support
  • SSL
    • Support for the in-tree ssl module (in addition to tlslite/m2crypto)
    • Signed cert support
    • strict cert auth, cert or password, or bootstrap (password once, then cert only) are supported
  • Support for xmlrpc/tlsv1 with DOE grid certs
  • Speed improvements all over
  • Improvements in file monitoring
  • Snapshots reporting system
    • Command line only for the moment
  • Reporting system improvements
    • Update to work with django 1.0
  • Server moved to threading model
  • Greatly improved performance
  • Annotate client configurations with bind failure information
  • bcfg2-admin modes
    • xcmd -- xmlrpc command handler
    • perf -- displays timings for interal server operations
  • bcfg2-info
    • profiling support
    • debug script support
    • builddir command

User visible changes

  • the plugin line in bcfg2.conf supercedes the generators, structures and connectors lines. Now all plugins should be listed here.
  • No plugins are implicitly added. Statistics and Metadata need to be explicitly listed in the plugins line.
  • Probes and Properties have been converted to generic connector plugins. This means that probe data and properties are now available as metadata.Probes and metadata.Properties, respectively. The old interfaces no longer work. Other connectors can be accessed similarly from templates and the like.
  • Client-side control of service manipulation. The default remains to perform all service starts/stops/restarts, but modes disabled (perform no changes) and build (stop all services at end of run) are also supported. This capability replaces build mode.
  • Backward compatibility is supported back to 0.9.6 clients
  • Clients now authenticate servers by commonName (not fingerprint)
  • Python 2.4+ required on server, 2.3+ on client
  • Agent mode has been deprecated in favor of ssh based agents
  • Service manipulation modes. Services can be tagged with several modes. Default is the same as previous behavior. Supervised is default mode + service operation checks. manual is verification only with no modification, and custom uses the target attribute to perform service restarts.
  • we now have a query interface for system wide metadata included with ClientMetadata? instances (for use in templates, etc). These can be used to find clients based on group or profile membership, and can even use Probe or other connector data. This change also accelerated metadata resolution by a factor of 50; this should speed everything up, since resolution is in the critical path for everything.

August 15, 2009

Bcfg2 featured on the  RCE podcast

June 24, 2009

 bcfg2-1.0pre4.tar.gz released

  • Packages
    • fix handling of architectures for RawURL YumSources?
    • add parse-caching support for YumSources?
    • Improve YumSource? performance dramatically
    • implement caching for APT
    • implement repomd support for yum sources
    • Fix cases where arch group mappings are unexpected
    • Fix traceback with missing config.xml (Reported by Jack Neely)
    • Make cache directory creation recursive
    • Add dictionary tracking YumSource? architecture mappings for cache files
    • Implement RawURL support
  • Metadata
    • Implement query interface
    • improve resolution performance
    • bcfg2-admin: Migrate query to new Metadata query interface
  • SSL
    • Implement protocol selection in bcfg2.conf xmlrpc/tlsv1 can be used with DOE grid certs
    • Improve core error handling for key existence failures
  • Server
    • Improve core error handling
    • Fix Fam support
    • Make Pseudo fam work on systems without Gamin
    • Add sshbase alias and address support
    • SimpleXMLRPCServer patch for python 2.4 (Patch from Jack Neely)
  • Packaging
    • Debian/Ubuntu? packaging update
    • Debian: postrm fix from Paul Cannon
    • Made Debian packaging work with Python 2.6 and earlier
    • Gentoo packaging updates
  • Client
    • APT: Force cache reload to get data from source updates Improve error message for attempted directory unlinks (Patch from Torsten Rehn) (Resolves Ticket #657)
    • APT: fix cache invalidation
    • Add back python 2.3 fixes for {RPM,YUM}ng
    • Fix yum api use for centos 4 compatibility (Resolves Ticket #670)
    • Implement -z (for Independent entries only, a la -b) (Resolves Ticket #616)
  • Misc
    • Implement profiling support in bcfg2-info (call profile <cmd> to use)
    • Snapshots: Add --date for detailed view for a particular date
    • Fixed bug in Init.py with setting up Bcfg2-admin for the first time.
    • Cfg: Fix hardwired filename ignores (Fixes Ticket #619)
    • Improve bundler error handling for .genshi files
    • Fall back to previous XMLRPCDispatcher calling convention (Resolves Ticket #669)
  • Doc updates

March 25, 2009

 bcfg2-1.0pre2.tar.gz released

  • Snapshots -- New reporting system backend
    • New data model
    • Importer plugin
    • basic command line interface
  • Improve priority conflict error message
  • Schema improvements
  • Client Tool Driver Updates
    • YUMng
      • version=auto/any support
      • switch to native yum calls (improved speed, decreased code cruddyness)
    • RPMng version=any support
    • launchd update for 10.5
    • Portage driver update
  • bcfg2-info
    • pretty print generated configs
    • add profiling support
  • Packages: implement yum support
  • Init script fixes
  • doc updates
  • Server-side checksum support (client side remains to be done)
  • Cfg: delta fixes
  • Bcfg2-admin viz bugfix
  • Solaris packaging updates
  • Annotate client configurations with bind failure information
  • Refine plugin interface to include partial metadata sources
  • Tickets

January 29, 2009

 bcfg2-1.0pre1.tar.gz released

  • Modular version control support for repositories (plus new Git support)
  • Plugin architecture revamp (described in /trunk/bcfg2/doc/plugin-roles)
    • Switch probes and properties to connector interface
  • Add new Packages plugin
  • Add support for out of tree plugins
  • Add Genshi Bundler (will be replaced by genshi support in Bundler)
  • version=any/auto support for APT/SYSV/Blast client tool drivers
  • new logo
  • Python 3k fixes

November 13, 2008

 bcfg2-0.9.6.tar.gz released

  • Model support for django 1.0
  • NagiosGen? plugin
  • Centralized per-entry installation decision support
  • Static file monitoring infrastructure
  • Reporting system SchemaEvolution support
  • bcfg2-reports (command line client to the reporting system)
  • Editor plugin
  • Plugin interface for metadata and statistics backends
  • bcfg2-admin query (command line interface to metadata)
  • FreeBSD rc support
  • Pkgmgr optimizations (10X speedup on python2.4+)
  • Switch server startup operations to process filesystem updates before listening on network
  • Add direct logging support for bcfg2 and bcfg2-server
  • Refactor Cfg/TCheetah/TGenshi/SGenshi/Metadata to use common client- and group-specific entries
    • client- and group-specific entries can now be used as
      • Probes
      • TGenshi templates
      • SGenshi templates
      • TCheetah templates
  • bcfg2-admin refactor
    • Mainly conversions
    • Implement non-interactive mode for bcfg2-admin pull
  • Simplify client-side proxy code
  • Implement Multi-fingerprint support
  • Rework option handling (everything is now flat, and all option parsing occurs in the outermost calling script)

February 12, 2008

 bcfg2-0.9.5.7.tar.gz released

  • Stable-stream release
    • Handle TLS errors when data corruption gets past TCP checksums (Reported by Matt Baker)
    • Fix display of categories with hyphens (Resolves Ticket #518)
    • Tweak client retry logic (increase retry count and randomize back-off timing)
    • Add time limit for difflib (which uses a potenially cubic algorithm)
    • Fix for Lance's hiccup
    • Fix test in case of using fulldata uploads for bcfg2-admin pull
    • Implement xml schema checks for info.xml files (from Sol Jerome) (Resolves Ticket #514)
    • Harden handling if important entries (reported by SolJ)
    • Sync glob and regex patterns (Resolves Ticket #520)
    • Handle group coloring more robustly (Fixes issue reported by Matt Baker on irc)
    • Fix traceback upon error message
    • Implement sequence number support for services (Patch from DanP) (Resolves Ticket #504)
    • Fix bcfg2-admin pull for host-specific files when the current data is group-specific
    • Handle infoxml failure cases
    • Clean out dispatch table whenever files change (Resolves Ticket #522)

January 10, 2008

 bcfg2-0.9.5.5.tar.gz released

  • Stable-stream release
    • Complete fix for chkconfig problem introduced in the 0.9.5.3 release

January 08, 2008

 Bcfg2-0.9.5.3 released.

  • Stable-stream release
    • Fix export.sh to perform tagging appropriately for non-trunk trees [bugfix]
    • Fix reversed reasons in config item display (from Sol J) [bugfix]
    • Fix race when no keys exist and known_hosts is first in the bundle [bugfix]
    • Fix handling of files ending in .cat or .diff [bugfix]
    • make pkgmgr_update selectively use lxml [bugfix]
    • Fix YUMng extra package display (Resolves Ticket #509) [bugfix]
    • Add new text pattern to ignore for Chkconfig (Resolves Ticket #505) [bugfix]
    • SYSV: URL is required for installation only (patch from Andrew Deason) (Resolves Ticket #511) [bugfix]
    • Fix traceback (reported by pflores) [bugfix]
    • Fix handling of basic http auth [bugfix]
    • fixed a bug with available revisions [bugfix]

December 01, 2007

 Bcfg2-0.9.5.2 released.

  • Stable-stream release
    • Fixes for Tickets #493 and #507
    • Harden Frame against poorly behaved tool drivers

November 30, 2007

 Bcfg2-0.9.5.1 released.

  • Bugfix release
    • Agent mode fixes
    • Chkconfig fixes
    • fix Yumng failure on no rpm systems
    • fix for python2.3 incompatibility
    • fix set profile support or -p option
    • bcfg2-admin pull fixes.

November 9, 2007

 Bcfg2-0.9.5 released.

  • Feature release
    • Agent Mode
    • Genshi templating with SGenshi/TGenshi
  • Described in more detail on the release page?.

August 22, 2007

Marko Jung will be giving two presentations about Bcfg2 in the next month.

June 25, 2007

 Bcfg2-0.9.4 released.

  • Mainly a bugfix release
  • Performance fixes for the dynamic reports system
  • Initial FreeBSD support

May 1, 2007

Gene Rackow will be presenting about Bcfg2 and configuration auditing at the US Department of Energy Cyber-Security conference.

April 30, 2007

 Bcfg2-0.9.3 released.

  • Switch to tlslite, for bidirectional authentication
  • Add RPMng and YUMng drivers
  • Add client UUID support
  • Add per-client passwords
  • Several new modes for bcfg2-admin

February 19, 2007

Marko Jung and Robert Gogolok will be presenting about Bcfg2 at GUUG on March 1, 2007. See  this link for details (German).

February 19, 2007

 Bcfg2-0.9.2 released.

  • Built new release engineering process
  • Driver bugfixes
  • Framework bugfixes
  • Dynamic Reporting System Fixes

February 6, 2007

 Bcfg2-0.9.1d released.

  • Working Yum driver
  • Working Blastwave driver
  • various schema fixes
  • Action driver fixes (PostInstall related)
  • bcfg2-admin pull fixes
  • Cfg plugin equivalence between :info and info files
  • packaging fixes
  • improved informational messages in interactive client mode
  • move syslogging to LOG_DAEMON
  • Gentoo packaging updates

January 29, 2007

 Bcfg2-0.9.0 released.

  • Action support
  • XInclude (common repository support)
  • Dynamic group support
  • More descriptive client-side interactive questions
  • Paranoid mode that is actually somewhat paranoid
  • See the release milestone for more details

December 21, 2006

 Bcfg2-0.8.7.2 released.

  • Fix probe use with TCheetah
  • Improved setup functionality in bcfg2-admin
  • Some Init script fixes
  • Some SMF fixes

December 11, 2006

 Bcfg2-0.8.7.1 released.

  • Fix for RPM-based clients
  • Improved setup functionality in bcfg2-admin

December 1, 2006

 Bcfg2-0.8.7 released.

  • Fixes for APT-based clients
  • New reporting system bugfixes and packaging
  • Preliminary Gentoo support

November 20, 2006

Thanks to Sami Haahtinen, bcfg2 is now included in both Debian Etch and Ubuntu Feisty.

November 12, 2006

 Bcfg2-0.8.6.1 released.

  • Fix for APT-based clients
  • Schema updates
  • Fix serious Cfg bug

November 03, 2006

 Bcfg2-0.8.5 released.

  • Client Refactor Completed
  • Nexenta support
  • New bcfg2-admin functions

September 15, 2006

 Bcfg2-0.8.4 released.

  • Several init script and cron job bugs have been fixed
  • TCheetah is now usable (see TCheetah?)
  • Several new utilities are packaged
    • bcfg2-admin (helps to create new server deployments)
    • bcfg2-query (query clients file based on profile, status, etc)
  • StatReports has been renamed to bcfg2-build-reports, for consistency's sake
  • Editor and svn tempfile handling has been moved to the file monitoring core.
  • Added logcheck configs for the debian packages

September 5, 2006

 Bcfg2-0.8.3 released.

  • Extensible variable interpolation in Cfg (substitution of @@hostname@@, etc)
  • Considerably improved Debian support (no longer does anything in dry-run mode; does not call apt-get clean, etc unless explicitly told to)
  • Considerably improved Solaris support (better handling of smf legacy services and removal of sysv packages)
  • A bug causing web report failures was fixed
  • An interactive client mode has been implemented (prompting for which configuration entries can be updated in a client run)
  • The debian packaging has been completely redone
  • The init script has been rewritten to be lsb compliant
  • Cron scripts are now provided, and packaged with debs and rpms
  • The Encap packaging has been dramatically improved, and should now work properly on solaris
  • Hostbase (an IP management system) has been updated, and its web interface is available in thsi release.
  • The bcfg2 client can now autoselect between lxml, elementtree, and the integrated version of elementtree in python2.5. This means that the client can be run using _only_ python2.5 as a prereq!
  • Added a new debian package index creation script
  • Updated rpmlisting.py (use file name parsing if possible, yielding 50X speedup for properly formatted file repositories)
  • Added a new utility to query clients.xml based on client properties (up/down, profile, etc)
  • Fixed syslog reconnect code (triggered by syslog restart)
  • Fixed syslog compatibility with solaris
  • The Redhat toolset now calls rpm -e with --allmatches
  • Various schema fixes

July 21, 2006

 Bcfg2-0.8.2 released.

  • This release includes several important new features (see the transition guide for details)
  • New reporting system
  • Better repository generation scripts
  • Group visualization tools
  • A number of client bugfixes
  • redhat i386/x86_64 multiarch support
  • svn repository support
  • Rules plugin
  • Entry verification failure diagnosis

March 1, 2006

 Bcfg2-0.8.1 released.

  • New logging infrastructure (making more of bcfg's functions transparent)
  • Switched to PyOpenSSL
  • Several client operational bugs fixed

January 20, 2006

 Bcfg2-0.8.0 released.

  • New repository format
  • More powerful classing system
  • Many bugfixes

January 16, 2006

 Bcfg2-0.7.4 released.

  • This is the final version of bcfg2-0.7.4
  • Several critical toolset bugs fixed
  • Several reporting bugs fixed

December 07, 2005

Paper presentation at  LISA 2005.

December 01, 2005

 Bcfg2-0.7.3 released.

  • XML-RPC is now the default
  • SSS code is gone
  • Moved to new event coalescing mechanism for fam/gamin events
  • Better error handling when starting with an empty repository
  • Reports enhancements: all data needed to understand node configuration states is now included in web reports

November 09, 2005

Bcfg2-0.7.2 released.

  • Polished up XML-RPC support and packaging
  • Important Redhat client bugfixes.

November 07, 2005

Bcfg2-0.7.1 released.

  • Gamin support (needed to run on RHEL)
  • Base XML-RPC/HTTPS support
  • Extra configuration entries now included in reports
  • Add timing information to statistics
  • Integrate extra package removal into entry re-verification

November 18, 2005

Paper presentation at  AUUG2005
Bcfg2: A Pay as you Go Approach to Configuration Complexity

October 05, 2005

Bcfg2-0.7.0 released.

  • Switch to fqdns for all host information
  • Add more documentation
  • Switch to Plugin API

September 02, 2005

Bcfg2-0.6.10 released.

  • Solaris client support
  • Gentoo client support
  • Report system revamp
  • Fix Cfg deltas

July 19, 2005

Bcfg2-0.6.9 released.

May 12, 2005

Bcfg2-0.6.8 released.

April 11, 2005

Bcfg2-0.6.7 released.

  • Client refactor
  • Implement extra service removal in debian toolset

March 29, 2005

Bcfg2-0.6.6 released.

  • Documentation updates

February 16, 2005

Bcfg2-0.6.5 released.

  • Client metadata assertion

February 01, 2005

Bcfg2-0.6.4 released.

  • Added bcfg2debug

January 07, 2005

Bcfg2-0.6.3 released.

  • Redhat client support

December 16, 2004

Bcfg2-0.6.1 released.

  • Packaging fixes

November 12, 2004

Bcfg2-0.6 released.

  • Ready for real use
  • Repository validation utility
  • init.d service support
  • Generator error handling
  • Cheetah generator

October 12, 2004

Bcfg2-0.5 released.

  • Decent debian client support
  • Two-way verification support
  • Daemon actually daemonizes
  • Client-side bundle support
  • Toolset API

October 06, 2004

Bcfg2-0.4 released.

  • Core completed
  • Code runs without problems on Chiba
  • Pkgmgr implemented
  • Base implemented

August 31, 2004

Bcfg2-0.3.1 released.

  • Basic generators done
  • Good enough to test against