summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
| * | fixed pylint testsChris St. Pierre2014-01-306-7/+12
| | |
| * | Augeas: ensure that entry.attrib is always a dictChris St. Pierre2014-01-291-1/+2
| | |
| * | load correct JSON library on py2.4Chris St. Pierre2014-01-296-6/+12
| | |
| * | Client: let lxml.etree XML implementation parse very large documentsChris St. Pierre2014-01-291-1/+9
| | |
| * | added missing docstringChris St. Pierre2014-01-221-2/+5
| | |
| * | Don't parse unicode XML with encodingChris St. Pierre2014-01-221-1/+10
| | | | | | | | | | | | | | | Fix another place where a unicode XML string with an encoding declaration may be read. Cf. 0f8d403d1a86cfbfe8222662dc445e16e8f7eff9
| * | POSIX: Properly stringify ACLs with no user/group specifiedChris St. Pierre2014-01-161-1/+4
| | | | | | | | | | | | | | | | | | | | | This is just a workaround to avoid a traceback; the real fix will involve making the POSIX tool properly handle ACLs with no user/group given, which refer to the current user/group of the file they apply to.
| * | FAM: Get full traceback when event handling errorsChris St. Pierre2014-01-161-1/+2
| | |
| * | Reporting: occasionally reap child threadsMichael Fenn2014-01-101-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | I noticed that, at least on Python 2.4, memory for threads doesn't get freed until the threads are joined. This patch causes the collector to periodically go through and reap those threads. Tested in production for ~1 month, no reported issues.
| * | Encryption: fixed base64 decode failure messageChris St. Pierre2014-01-071-1/+1
| | |
| * | fixed indentation in previousRichard Connon2014-01-051-1/+1
| | |
| * | Fixed syntatical error in previousRichard Connon2014-01-051-2/+2
| | |
| * | Fixed group blacklist issue #150Richard Connon2014-01-051-0/+1
| | |
| * | Encryption: better error message when base64 decode failsChris St. Pierre2014-01-021-1/+10
| | |
| * | bcfg2-lint: expand wildcard xincludes when validating XMLChris St. Pierre2013-12-311-0/+29
| | |
| * | bcfg2-crypt: actually skip an element when we say we areChris St. Pierre2013-12-311-0/+1
| | |
| * | Augeas improvements:Chris St. Pierre2013-12-111-10/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Added ability to specify initial content for a file that doesn't exist, to avoid a messy situation where you'd have to probe for file existence and either use a Path type="file" or Path type="augeas" depending, and run Bcfg2 twice. * All commands in an Augeas path are run if *any* of them fail to verify. Previously, only commands that hadn't been run would be installed, but that had issues, particularly with the Clear command, which could pass verification but then be required during the installation phase anyway. * Miscellaneous bug fixes.
* | | Merge branch 'master-test-fixes' of https://github.com/fennm/bcfg2Sol Jerome2014-04-141-1/+0
|\ \ \
| * | | pep8 fixesMichael Fenn2014-04-091-1/+0
| | | |
* | | | don't trigger full reparse on adding config fileMichael Fenn2014-04-142-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | The full reparse turns out to be unnecessary with one change to the server options, and plays havoc with ordering of django components and overriding values in bcfg2-web.conf
* | | | Reporting: update non-ORM bits to know about separate databaseMichael Fenn2014-04-092-9/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is a little bit of code in the reporting web interface that uses raw SQL rather than the django ORM. This bypassed the database router functionality (since there is no model to bind to). Django supports keeping track of multiple connections in the raw SQL interface, so this commit does the refactoring necessary to support the multiple databases.
* | | | Remove unused importMichael Fenn2014-04-091-1/+1
| | | |
* | | | Add BCFG2_CONFIG_FILE environment variable (regression from 1.3)Michael Fenn2014-04-071-0/+2
| | | |
* | | | check for existence of isatty to account for older wsgi Log objectsMichael Fenn2014-04-071-1/+1
|/ / /
* | | Be more robust about checking for reporting_db_engine presenceMichael Fenn2014-03-241-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This matters during the test suite: ====================================================================== ERROR: Failure: AttributeError ('Namespace' object has no attribute 'reporting_db_engine') ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/lib/python2.6/site-packages/nose/loader.py", line 364, in loadTestsFromName addr.filename, addr.module) File "/usr/lib/python2.6/site-packages/nose/importer.py", line 39, in importFromPath return self.importFromDir(dir_path, fqname) File "/usr/lib/python2.6/site-packages/nose/importer.py", line 84, in importFromDir mod = load_module(part_fqname, fh, filename, desc) File "/d/en/fennm-0/bcfg2-dbrouter/bcfg2-dbrouter.git/testsuite/Testtools/__init__.py", line 14, in <module> from common import * File "/d/en/fennm-0/bcfg2-dbrouter/bcfg2-dbrouter.git/testsuite/common.py", line 62, in <module> Bcfg2.DBSettings.finalize_django_config() File "/d/en/fennm-0/bcfg2-dbrouter/bcfg2-dbrouter.git/src/lib/Bcfg2/DBSettings.py", line 99, in finalize_django_config if opts.reporting_db_engine is not None: AttributeError: 'Namespace' object has no attribute 'reporting_db_engine'
* | | Make indentation consistent with other elements of the dictMichael Fenn2014-03-241-1/+1
| | |
* | | Preliminary support for seperate reporting databaseMichael Fenn2014-03-214-12/+106
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit implements a Django database router which routes each Django application to a database whose name matches a key in the database dict, falling back to the default database if no matching key is found. This support is plumbed through to the config file via database.reporting_* database connection config options. These options mirror ones available for the default database config. If database.reporting_engine is not specified in the config, then the configuration falls back to the traditional single-database way of doing things with the database router becoming a no-op.
* | | Options: call _set_defaults_from_config before _parse_config_optionsMichael Fenn2014-03-191-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | _set_defaults_from_config must be called before _parse_config_options This is due to a tricky interaction between the two methods: (1) _set_defaults_from_config does what its name implies, it updates the "default" property of each Option based on the value that exists in the config. (2) _parse_config_options will look at each option and set it to the default value that is _currently_ defined. If the option does not exist in the namespace, it will be added. The method carefully avoids overwriting the value of an option that is already defined in the namespace. Thus, if _set_defaults_from_config has not been called yet when _parse_config_options is called, all config file options will get set to their hardcoded defaults. This process defines the options in the namespace and _parse_config_options will never look at them again.
* | | Options: rename _set_defaults to _set_defaults_from_configMichael Fenn2014-03-191-3/+3
| | | | | | | | | | | | This is to make the method name more in line with what it does
* | | Options: set config file options only for the running parserChris St. Pierre2014-03-141-5/+4
| | |
* | | Options: finalize ConfigFileActionsChris St. Pierre2014-03-051-15/+27
| | | | | | | | | | | | | | | This ensures that /etc/bcfg2-web.conf gets read, even if the --web-config for [reporting].config options are not given
* | | DBSettings: Set config options at the module levelChris St. Pierre2014-03-051-0/+3
| | | | | | | | | | | | | | | Some bits of Django appear to query the options directly from the module, even if django.conf.settings.configure() has been called
* | | Options: Finalize actual value, not default valueChris St. Pierre2014-03-053-17/+21
| | | | | | | | | | | | This also fixes some extraneous calls in the option parsing loop.
* | | Options: set options debugging with environment variableChris St. Pierre2014-03-052-4/+48
| | |
* | | Options: fail_silently really fails silently when loading componentsChris St. Pierre2014-03-051-1/+1
| | |
* | | Proxy: Remove m2crypto fallbackSol Jerome2014-02-271-64/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Older clients used to depend on this because there was no backported python-ssl module available for various platforms. All supported platforms now appear to either a) have the backported module or b) have a recent enough version of python to use the builtin ssl module. Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* | | bcfg2-lint: verify Path tags in RequiredAttrsChris St. Pierre2014-02-261-0/+10
| | |
* | | Bundler: added path globbingChris St. Pierre2014-02-262-18/+29
| | |
* | | FAM: Deprecate the gamin FAM driverChris St. Pierre2014-02-131-4/+7
| | |
* | | added bcfg2-crypt backChris St. Pierre2014-02-111-0/+8
| | |
* | | bcfg2-lint: Fixed TemplateHelper lint pluginChris St. Pierre2014-01-071-3/+5
| | |
* | | bcfg2-lint: new Crypto plugin checks for data that should be encrypted but isn'tChris St. Pierre2014-01-071-0/+61
| | |
* | | bcfg2-crypt: Protect against double-encrypting dataChris St. Pierre2014-01-071-0/+16
| | |
* | | bcfg2-lint: fixed automatically loading server plugin lint pluginsChris St. Pierre2014-01-071-5/+5
| | |
* | | Merge branch 'maint'Chris St. Pierre2013-12-0917-57/+560
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: doc/appendix/guides/fedora.txt misc/bcfg2.spec schemas/types.xsd src/lib/Bcfg2/Encryption.py src/lib/Bcfg2/Options.py src/lib/Bcfg2/Server/Admin/Client.py src/lib/Bcfg2/Server/Core.py src/lib/Bcfg2/Server/Lint/Validate.py src/lib/Bcfg2/Server/Plugin/helpers.py src/lib/Bcfg2/Server/Plugins/Bundler.py src/lib/Bcfg2/Server/Plugins/Cfg/CfgEncryptedGenerator.py src/lib/Bcfg2/Server/Plugins/Probes.py src/sbin/bcfg2-crypt testsuite/Testsrc/Testlib/TestServer/TestPlugin/Testhelpers.py testsuite/Testsrc/Testlib/TestServer/TestPlugins/TestCfg/TestCfgEncryptedGenerator.py testsuite/Testsrc/Testlib/TestServer/TestPlugins/TestProbes.py testsuite/common.py testsuite/install.sh
| * | bcfg2-lint: New ValidateJSON pluginChris St. Pierre2013-12-091-0/+70
| | | | | | | | | | | | | | | This plugin validates the JSON files that can be used by Properties and Ohai.
| * | bcfg2-lint: New TemplateAbuse plugin detects templated scriptsChris St. Pierre2013-12-091-0/+75
| | | | | | | | | | | | | | | | | | | | | | | | TemplateAbuse detects templated scripts (either files that end with a known extension, or that start with a shebang line) and executables (based off of their permissions in info.xml) and warns about them, since templating scripts is dicey at best, and almost always better done by templating a config file for the script to read instead.
| * | XMLSrc: Load XML in one step instead of separate read and parseChris St. Pierre2013-12-091-9/+2
| | |
| * | Cfg: let EncryptedGenerator load setup object whenever the plugin is importedChris St. Pierre2013-12-091-3/+6
| | | | | | | | | | | | | | | | | | | | | Previously, if CfgEncryptedGenerator was imported before the Cfg object was instantiated, it would finalize the Bcfg2.Server.Plugins.Cfg.SETUP object with a value of None, and would be unable to access the options dict.
| * | Probes: fixed default list of allowed probe groupsChris St. Pierre2013-12-061-1/+1
| | |