summaryrefslogtreecommitdiffstats
path: root/src/lib/Bcfg2
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'maint'Sol Jerome2013-09-019-129/+191
|\ | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com> Conflicts: src/lib/Bcfg2/Client/Tools/__init__.py src/lib/Bcfg2/Server/BuiltinCore.py src/lib/Bcfg2/Server/Plugins/Metadata.py src/lib/Bcfg2/Server/Plugins/NagiosGen.py src/lib/Bcfg2/Server/Plugins/Probes.py src/lib/Bcfg2/Server/SSLServer.py tools/README
| * NagiosGen: Fix pylint failureSol Jerome2013-09-011-2/+2
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * Revert "Rules: fixed HandlesEntry for XMLSrc replacement"Chris St. Pierre2013-08-291-4/+3
| | | | | | | | | | | | This reverts commit 542ededa8297b1889542d97b9bdfb8345dd7550c. Committed to wrong branch.
| * Rules: fixed HandlesEntry for XMLSrc replacementChris St. Pierre2013-08-291-3/+4
| | | | | | | | | | | | This makes HandlesEntry work with the new code that's in place for StructFile to replace XMLSrc. Fixes https://github.com/Bcfg2/bcfg2/commit/2169edc1bba82076db776b75db89b79d6f2f4786#commitcomment-3968162
| * SSLServer: close connections properlyChris St. Pierre2013-08-291-8/+5
| |
| * SSLServer: Removed decode_request_content callChris St. Pierre2013-08-291-2/+0
| | | | | | | | | | | | | | decode_request_content() just adds support for gzipped content, which the Bcfg2 client doesn't support. Given that this feature was only added in Python 2.7, it's unlikely we'll be adding support for gzipped POST content any time soon.
| * Metadata: get_client_names_by_* fixesChris St. Pierre2013-08-291-5/+13
| | | | | | | | | | | | Fixed long lines. Improved efficiency by avoiding multiple loops over the same data.
| * SSLServer: Poll for POST data correctlyChris St. Pierre2013-08-282-12/+10
| | | | | | | | | | | | | | | | This updates the do_POST() code to cleave more closely to the code in SimpleXMLRPCHandler.do_POST (plus SSL magic, of course). In doing so, it eliminates a select() call whose timeouts were not handled properly, and which thus left stray idle processes around after incomplete XML-RPC calls.
| * Metadata: Fix client list calls use list_clients() which is DB-aware instead ↵Jason Kincl2013-08-271-5/+5
| | | | | | | | of just self.clients
| * SELinux: Update the matchpathcon function to use the file's modeJonathan Billings2013-08-221-1/+2
| | | | | | | | | | | | | | | | If you don't supply a mode to the selinux.matchpathcon() function, it fails to properly look up the context in some circumstances related to context patterns in the SELinux policy. This change looks up the mode and supplies it to the function. (cherry picked from commit 20a2c9a8fb6c6ecbed259b5deccb01c01bf3304f)
| * Reporting: have bcfg2-report-collector be explicit about detachingMichael Fenn2013-08-191-1/+1
| | | | | | | | | | | | | | | | | | Following the same logic as 360ba2e7, we should be explicit about the need to detach the bcfg2-report-collector process. Side note: this bit me because I was starting the bcfg2 server processes via SSH, and the way python-daemon checks for being started by inetd is to see if stdin is a socket. (??)
| * Metadata: removed stray blank lineChris St. Pierre2013-08-151-1/+0
| |
| * Metadata: search groups breadth-first when building metadataChris St. Pierre2013-08-151-25/+37
| | | | | | | | | | This makes category negation consistent, and also makes it work like it did in Bcfg2 1.2
| * Metadata: metadata generation improvementsChris St. Pierre2013-08-141-70/+97
| | | | | | | | | | | | | | | | | | Primarily, this fixes a few potential bugs in initial metadata, which may result in inconsistent ordering of groups, which can be a problem when relying on category suppression. This also deduplicates some category suppression code, and moves some nested functions to top-level methods, which are surprisingly faster.
| * Metadata: log now client creation with profileChris St. Pierre2013-08-121-0/+4
| |
| * Client: Don't modify running services if ignoredSol Jerome2013-08-121-2/+3
| | | | | | | | | | | | | | Previously, when a bundle's contents were updated, all services listed in the bundle were stopped if the status attribute was set to 'ignore'. Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * POSIX: Fix pylint failureSol Jerome2013-08-101-1/+2
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * POSIX: Fix unicode file verificationSol Jerome2013-08-101-3/+13
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * Probes: Disable builtin redefinition checkSol Jerome2013-08-101-1/+1
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * Probes: Fix unicode probe handlingSol Jerome2013-08-101-1/+5
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * Revert "Probes: Fix failing nosetests"Sol Jerome2013-08-101-4/+10
| | | | | | | | | | | | This reverts commit 4f745cc2731f7035f02566ba8bc1a0e9ae1b1a71. This breaks handling of unicode on python 2.
* | NagiosGen: Migrate configuration to conf.dSol Jerome2013-09-011-1/+1
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* | Admin: Use string.ascii_lettersSol Jerome2013-09-011-1/+1
| | | | | | | | | | | | | | | | | | The code using string.letters won't work with python 3 due to library changes. http://docs.python.org/3.0/whatsnew/3.0.html#library-changes Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* | Reporting: Fix collectorSol Jerome2013-08-311-6/+2
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* | Metadata: Clean up FAM monitoring cruftChris St. Pierre2013-08-301-21/+13
| | | | | | | | | | | | | | Removed code that supported an unused watch_clients option that permitted locally disabling FAM monitoring for Metadata; and ensured that XIncludes from clients.xml/groups.xml were always monitored (fixed in 5b66845).
* | XMLFileBacked: always watch xincludesChris St. Pierre2013-08-301-5/+2
| | | | | | | | | | | | | | | | | | In Bcfg2 1.3, XInclude'd files only got FAM watches if the parent file was monitoring itself, and it got a FAM object passed to it. This led to some ugly workarounds, and bugs -- you couldn't easily use XInclude in Properties or Bundler, for instance, and have changes recognized. Since FAM objects are now module-level, we can always monitor XInclude'd files.
* | SSHbase: Fix instantiation of KeyDataChris St. Pierre2013-08-291-19/+9
| | | | | | | | | | | | | | Fixed KeyData __init__ method for globally-accessible encoding setting in Bcfg2.Options.setup. This also cleans up the logging in SSHbase.
* | Rules: fixed HandlesEntry for XMLSrc replacementChris St. Pierre2013-08-291-3/+4
| | | | | | | | | | | | This makes HandlesEntry work with the new code that's in place for StructFile to replace XMLSrc. Fixes https://github.com/Bcfg2/bcfg2/commit/2169edc1bba82076db776b75db89b79d6f2f4786#commitcomment-3968162
* | Cache: Fix python3 runtime errorSol Jerome2013-08-281-1/+1
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* | Reporting: Fix call to read_config()Sol Jerome2013-08-281-1/+1
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* | settings: Set dict as default for db optionsChris St. Pierre2013-08-281-1/+2
| |
* | Core: Added default ACLsChris St. Pierre2013-08-192-7/+22
| | | | | | | | | | | | Since we're exposing more stuff via XML-RPC, this adds a default, fairly restrictive ACL plugin if no other ClientACLs plugin is loaded. This makes us secure by default.
* | Encryption: minor fixesChris St. Pierre2013-08-161-3/+3
| |
* | Revert "Metadata: group_in_category fixes"Chris St. Pierre2013-08-161-18/+5
| | | | | | | | | | | | | | | | This reverts commit 35498c8b849c15632d720656d5736c4c85f76b53. group_in_category() access data that's held on the ClientMetadata object, and getting that data via the MetadataQuery object would be more expensive.
* | Probes: rewrite for new caching systemChris St. Pierre2013-08-161-173/+236
| | | | | | | | | | | | | | | | | | | | | | Substantially rewrote the way the Probes plugin caches data. Formerly, it was structured to assume that probe data was stored in probed.xml, with the database feature very much a second-class citizen; this adds a proper abstraction layer between the persistent storage and the plugin (and its caches). Also rewrote most Probes unit tests to actually be useful unit tests, not implementation tests.
* | Options: fixed error message when bcfg2.conf is not readableChris St. Pierre2013-08-161-2/+1
| |
* | Rewrote arbitrary data cache systemChris St. Pierre2013-08-168-141/+209
| | | | | | | | | | | | | | | | | | | | | | | | The caching facilities in Bcfg2.Server.Cache provided basically no features. This rewrites that to allow for much more powerful cache expiration, with a particular focus on interoperation between different components and plugins to let caches be expired as necessary. (E.g., the Probes plugin can expire the Metadata cache.) This does not affect any of the file data cached by Bcfg2, only the caches that are populated with arbitrary data (Metadata, Packages, Probes, etc.).
* | Metadata: group_in_category fixesChris St. Pierre2013-08-151-5/+18
| | | | | | | | | | | | | | Moved ClientMetadata.group_in_category to MetadataQuery.group_in_category, with a deprecation warning for the old place. Also changed the null answer (i.e., this client isn't in a group in that category) to None from ''.
* | PrioDir: Fixed event handlerChris St. Pierre2013-08-141-7/+6
| |
* | testsuite: fixed unit tests for new SSLCA stuffChris St. Pierre2013-08-132-9/+9
| |
* | Rewrote SSLCA as Cfg handler.Chris St. Pierre2013-08-138-499/+433
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds encryption support to SSL key creation (much like SSH private keys), and the ability to generate keys and certs that are specific to groups, instead of just to hosts. It also moves the SSLCA data (the XML files describing keys and certs as well as the keys and certs themselves) into the Cfg tree, rather than off in their own separate place. tools/upgrade/1.4/migrate_sslca.py can be used to migrate to the new format. This also adds XMLCfgCreator, a CfgCreator that makes it easier to create data based on XML descriptions of it (which is exactly what the SSH key and SSL CA creators do), including built-in support for host- and group-specific data, encryption, and so on.
* | man: updated bcfg2-admin man pageChris St. Pierre2013-08-131-1/+1
| |
* | Client: Use absolute importsSol Jerome2013-08-121-3/+3
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* | testsuite: exempt wildcard imports in Bcfg2.Options from pylintChris St. Pierre2013-08-121-1/+1
| |
* | Reporting: Fix LocalFilesystem transportSol Jerome2013-08-122-1/+1
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* | Options: Replace relative imports with absoluteChris St. Pierre2013-08-127-23/+19
| |
* | testsuite: fixed more unit testsChris St. Pierre2013-08-123-5/+4
| |
* | testsuite: fixed unit testsChris St. Pierre2013-08-122-4/+4
| |
* | testsuite: fixed remaining unit tests (?)Chris St. Pierre2013-08-121-3/+3
| |
* | Merge branch 'maint'Chris St. Pierre2013-08-126-16/+28
|\| | | | | | | | | | | Conflicts: src/lib/Bcfg2/Server/Admin/Viz.py src/lib/Bcfg2/Server/Plugins/Packages/__init__.py