summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Reporting: start a new thread for each importMichael Fenn2013-10-091-10/+29
| | | | | | | | | | | | | | | | | When dealing with a high-latency database connection (eg. across a WAN), the bcfg2-report-collector process can fall behind in its import queue. The imports are very much bound by the response latency of the database server and not processing throughput. This patch fires off a new thread for each database interaction. The thread itself simply falls out of scope when the interaction is finished processing. The interaction object is still read from the disk serially in order avoid having to create a locking mechanism for that part of the process. This change does potentially create greater load on the database server, but ultimately the load is limited by rate at which the bcfg2 server can generate work.
* Tests: Fix tests after 9a6a231Michael Fenn2013-10-041-1/+6
| | | | | | | | The addition of the call to load_xml in 9a6a231 causes the test to fail because load_xml() expects to read a clients.xml file. The actual actual open calls in write_xml are dummied out with Mock, so no file is written, and thus cannot be read back. This commit dummies out the load_xml and adds some more asserts for good measure.
* GroupLogic: fixed thread-local variable initializationChris St. Pierre2013-09-271-11/+13
|
* AWSTags: fixed cache clearing at start of client runChris St. Pierre2013-09-261-1/+1
|
* models: handle failure to import plugin gracefullyChris St. Pierre2013-09-261-1/+1
|
* testsuite: install boto with optional dependenciesChris St. Pierre2013-09-261-1/+1
|
* Metadata: better logging when updating XML data failsChris St. Pierre2013-09-261-5/+6
|
* New plugin: AWSTagsChris St. Pierre2013-09-267-0/+561
| | | | | AWSTags allows querying tags from EC2, and setting groups based on the tag names or values.
* docs: clarify when JSON/YAML Properties files were addedChris St. Pierre2013-09-251-0/+4
|
* GroupLogic: avoid infinite recursion when using metadata.query in GroupLogicChris St. Pierre2013-09-231-0/+17
|
* GroupLogic: sort after other plugins so GroupLogic can use, e.g., Probe groupsChris St. Pierre2013-09-231-0/+3
|
* posixusers_baseline.py: Handle users with nonexistent primary groupsChris St. Pierre2013-09-171-3/+8
|
* bcfg2-lint: Fixed Metadata check for duplicate groupsChris St. Pierre2013-09-171-9/+29
| | | | | | | | | The duplicate group check parsed groups differently from the actual groups.xml parsing routines; the latter followed the documentation, while the duplicate group check did now. This fixes the duplicate group check to parse groups.xml correctly when looking for duplicates. Fixes #140
* doc: Init script was updated to use a directorySol Jerome2013-09-161-1/+1
| | | | | | | Reported on IRC: http://colabti.org/irclogger/irclogger_log/bcfg2?date=2013-09-16;raw=on Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* testsuite: Fixed CfgPublicKeyCreator testsChris St. Pierre2013-09-161-6/+5
| | | | | | Instead of mocking get_filename, use its normal functionality. This avoids a messy situation where we have to mock out a **magic call, which py2.5 doesn't like at all.
* CfgPublicKeyCreator: properly handle case where only private key has been ↵Chris St. Pierre2013-09-164-57/+137
| | | | | | | | | created Previously, only two cases were handled properly: both public and private keys had been created; or neither had been created. If the private key had been created (e.g., manually added to the repo), the public key would not be created from it. This fixes that.
* Remove all ACLs (including mask) from entries with no ACLs listedChris St. Pierre2013-09-121-0/+5
| | | | | | When installing an entry with no ACLs specified, but with ACLs on the file as it exists on the filesystem, the ACL mask was preserved, even as the ACLs are deleted.
* XMLFileBacked: removed unused variableChris St. Pierre2013-09-111-1/+1
|
* XMLFileBacked: Fixed multiple identical XIncludes in one fileChris St. Pierre2013-09-111-12/+9
|
* bcfg2-lint: Added Cfg check for multiple global handlers for one entry setChris St. Pierre2013-09-091-1/+17
|
* Cfg: allow changing category specific-ness of generated authorized_keysChris St. Pierre2013-09-092-3/+12
|
* testsuite: add "encoding" to setup for POSIXUsers testsChris St. Pierre2013-09-091-1/+8
|
* Cfg: Give non-specific handlers a default specificityChris St. Pierre2013-09-092-5/+9
|
* POSIXUsers: Fix tracebackSol Jerome2013-09-061-1/+2
| | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* Core: avoid importing Metadata before Django has been configuredChris St. Pierre2013-09-051-2/+1
|
* Allow Connector to create new groupsChris St. Pierre2013-09-053-5/+66
| | | | | Connector plugins can now create new groups, including the full range of options on those groups (profile, public, category, etc.).
* Cfg: More flexible and complete way to specify authorized keys optionsChris St. Pierre2013-09-043-8/+82
|
* bcfg2_local.py: Fixed addresspair portChris St. Pierre2013-09-041-1/+4
|
* XMLFileBacked: Monitor XIncludes whenever a FAM is availableChris St. Pierre2013-09-043-18/+12
| | | | | | | | | | This monitors XIncluded files even if should_monitor=False, since the object monitoring the base file will not monitor XIncludes. This ensures that XIncluded files are properly monitored whenever possible, particularly for Bundler and Properties. This is a partial backport of 5b66845 -- as much of a backport as is possible without a module-level FAM object.
* Merge pull request #139 from ↵Chris St. Pierre2013-09-033-10/+29
|\ | | | | | | | | kincl/pre-action-processing-with-independent-entries Pre action processing with independent entries
| * Fix pep8 errorsJason Kincl2013-08-301-3/+3
| |
| * doc: Updated Client Actions doc to include BoundActions and anotherJason Kincl2013-08-302-8/+25
| | | | | | | | | | example schemas: Fixed Action `when` attribute description
| * Client: Add entries processed as important to list of entries whenJason Kincl2013-08-301-2/+4
| | | | | | | | determining if a bundle has been modified
* | SSLServer: Decode chunk for python 3Sol Jerome2013-09-011-1/+1
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* | NagiosGen: Fix overindentSol Jerome2013-09-011-3/+3
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* | NagiosGen: Fix pylint failureSol Jerome2013-09-011-2/+2
| | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* | doc: Remove bcfg2-admin query (moved to bcfg2-info)Sol Jerome2013-08-301-15/+0
|/ | | | 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.
* POSIX: fixed unit tests for 1f0fa73Chris St. Pierre2013-08-281-5/+6
|
* 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.
* Merge pull request #138 from kincl/fix-query-clients-listChris St. Pierre2013-08-271-5/+5
|\ | | | | Metadata: Fix client list calls use list_clients() which is DB-aware instead of just self.clients
| * 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. (??)
* doc: updated pros/cons for builtin yum librariesChris St. Pierre2013-08-191-6/+7
|
* Metadata: removed stray blank lineChris St. Pierre2013-08-151-1/+0
|