summaryrefslogtreecommitdiffstats
path: root/src/lib
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | YUM: Add options to enable and disable Yum pluginsJonathan Billings2014-10-172-0/+22
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds two options you can define: * disabled_plugins: A comma-separated list of plugins to disable * enabled_plugins: A comma-separated list of plugins to enable This allows you to run bcfg2 with certain plugins enabled or disabled when they're not set that way in the yum configuration. This is useful because the Bcfg2 YUM plugin is initialized before it can read in any files that might overwrite yum plugin configuration.
| * | | use Bcfg2.Compat to get any()Michael Fenn2014-09-101-1/+1
| | | |
| * | | Use older nested try syntax for finally for python 2.4 compatMichael Fenn2014-09-101-4/+5
| | | |
| * | | Use the older Thread.getName() interface for python 2.4 compatMichael Fenn2014-09-101-1/+1
| | | |
| * | | Version bump to 1.3.5v1.3.5Sol Jerome2014-09-052-2/+2
| | | | | | | | | | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * | | Merge branch 'sysv-http' of https://github.com/nathanolla/bcfg2 into maintSol Jerome2014-08-262-3/+45
| |\ \ \
| | * | | Log when downloading packages via HTTPNathan Olla2014-08-191-0/+2
| | | | |
| | * | | Check for origpkgtool attribute to prevent things that subclass SYSV from ↵Nathan Olla2014-07-161-6/+8
| | | | | | | | | | | | | | | | | | | | breaking
| | * | | Remove unused import of copyNathan Olla2014-07-161-1/+0
| | | | |
| | * | | Implement _get_package_command and append _sysv_pkg_path attributeNathan Olla2014-07-161-33/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of doing a partially complete Install() method for SYSV, implements a custom _get_package_command that will use the _sysv_pkg_path attribute added by the pkgmogrify call. This will allow the installs to complete. Unfortunately, the single-pass install will still fail if there are any packages with an http:// URL. The pkgadd invocation for 'device' sources doesn't take multiple packages and the 'datastream' invocation doesn't handle packages with an HTTP URL. Finally, there is no reliable standard naming convention for SYSV datastream files, so the simplename attribute is re-used. There is a known issue with this patch - if any packages specified in the PackageList have an http url, the single-pass install will produce an error like: Trying single pass package install for pkgtype sysv pkgadd: ERROR: Failure occurred with http(s) negotiation: <'Peername' doesn't match 'host' or no matching entry> pkgadd: ERROR: unable to download package datastream from <http://install1.d.stor.en.desres.deshaw.com/jumpstart10U10/packages>. Single Pass Failed because the command that results isn't valid syntax for pkgadd. A workaround would be to add code to skip the single-pass install if any packages had the simplename attribute, or by checking the url for the presence of 'http'. I'm not sure if that should be fixed or if this is reasonable in this case.
| | * | | Fix indentingNathan Olla2014-07-141-5/+4
| | | | |
| | * | | Fix indent.Nathan Olla2014-07-141-1/+1
| | | | |
| | * | | Add urlretrieve to Compat and documentNathan Olla2014-07-142-3/+5
| | | | |
| | * | | SYSV: Implement downloading and installing SYSV packages from HTTPNathan Olla2014-07-141-2/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | pkgadd has different syntax for different sources (datastream and file system format) which makes using a single pkgtool variable difficult. Also, SYSV packages in datastream format don't necessarily have uniform names. Therefore, use the existing 'simplename' attribute to specify the datastream file name.
| * | | | Reporting: Remove duplicate methodSol Jerome2014-08-141-3/+0
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * | | | Packages/Apt: Essential could be "no"Alexander Sulfrian2014-07-281-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The "Essential" field in the package control fields could be "yes" or "no". Only yes sould define the package as essential. The value "no" sould be handled same as not having the field at all.
| * | | | Merge pull request #183 from AlexanderS/errexit-stderrChris St. Pierre2014-07-261-1/+1
| |\ \ \ \ | | | | | | | | | | | | Server/Admin: fatal errors should go to stderr
| | * | | | Server/Admin: fatal errors should go to stderrAlexander Sulfrian2014-07-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If an error occurs, that leads to an termination of the process, this error should be printed to stderr.
| * | | | | POSIXUsers.py: Allow supplementary group = primarySol Jerome2014-07-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * | | | | Reporting: Fix prune items import and displaySol Jerome2014-07-152-2/+2
| | |/ / / | |/| | | | | | | | | | | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * | | | debsums: read output from stderr instead of stdoutArach2014-07-051-1/+1
| | | | |
| * | | | Fix email reporting bugMatt Kemp2014-06-121-1/+1
| | | | | | | | | | | | | | | This fixes a subtle bug by enforcing that it's a tuple of 2-tuples rather than just a single 2-tuple.
* | | | | Merge pull request #233 from AlexanderS/fix-list-optionsChris St. Pierre2014-11-111-0/+4
|\ \ \ \ \ | | | | | | | | | | | | Options/Types: add abbility to set empty lists
| * | | | | Options/Types: add abbility to set empty listsAlexander Sulfrian2014-10-311-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have some lists with default values, so someone maybe want to set an empty list from the config. Previously this was not possible, because an empty string results in a list with an empty string as element. This fixes this problem.
* | | | | | Reporting/Collector: fix semaphore initializationAlexander Sulfrian2014-11-111-1/+2
| | | | | |
* | | | | | removed duplicate plugins optionChris St. Pierre2014-11-111-25/+5
| | | | | |
* | | | | | Options: Fixed non-path database name parsingChris St. Pierre2014-11-102-23/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The database name is sometimes a path (SQLite) and sometimes not (MySQL, PostgreSQL). This introduces a new Option type, RepositoryMacroOption, that expands <repository> macros without canonicalizing the path, so SQLite users can use <repository> in their settings but MySQL users' database name settings will not be destroyed by path canonicalization. The unfortunate downside is that SQLite users can't use ~ in their database name.
* | | | | | Options: further command registry fixesChris St. Pierre2014-11-101-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This updates the documentation for some of the recent changes to subcommand handling, and ensures that the server core is shut down by bcfg2-info.
* | | | | | Options: gather as much data from config file firstChris St. Pierre2014-11-101-2/+10
| | | | | |
* | | | | | Options: fix path canonicalization and file-like objectsChris St. Pierre2014-11-101-8/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes canonicalizing PathOption values when the default value of a config file-only option is used. It also fixes PathOptions that get a file-like object instead of a filename string.
* | | | | | Options: ensure <repository> macros are always fixed upChris St. Pierre2014-11-102-40/+96
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes several cases in which <repository> macros would not be properly processed: options that are not added to the parser yet when early options are parsed; and config file options whose default value is used.
* | | | | | DBSettings: fix up <repository> in database nameChris St. Pierre2014-11-101-1/+1
| | | | | |
* | | | | | testsuite: better debug capturing for options testsChris St. Pierre2014-11-101-2/+6
| | | | | |
* | | | | | call shutdown on subcommand registriesChris St. Pierre2014-11-102-6/+11
| | | | | |
* | | | | | fixed some places where plugin loading should fail silentlyChris St. Pierre2014-11-103-8/+19
| | | | | |
* | | | | | testsuite: skip nested exclusive option group test on py2.6Chris St. Pierre2014-11-101-2/+2
| | | | | |
* | | | | | testsuite: Added unit tests for new option parsingChris St. Pierre2014-11-1010-199/+305
| | | | | |
* | | | | | Merge branch 'reporting-limit-children' of https://github.com/AlexanderS/bcfg2Sol Jerome2014-11-091-12/+30
|\ \ \ \ \ \
| * | | | | | Reporting/Collector: fix python2.4 compatibilityAlexander Sulfrian2014-10-271-9/+11
| | | | | | |
| * | | | | | Reporting/Collector: add max-children argumentAlexander Sulfrian2014-10-271-3/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add option to limit the count of child threads to import the transactions. If the number is exceeded the next import will block until one thread is ready.
* | | | | | | Merge branch 'yum-fix-syntax' of https://github.com/AlexanderS/bcfg2Sol Jerome2014-11-091-5/+6
|\ \ \ \ \ \ \
| * | | | | | | Client/Tools/YUM: compareEVR is in rpmUtils.miscutilsAlexander Sulfrian2014-10-281-1/+2
| | | | | | | |
| * | | | | | | Client/Tools/YUM: fix whitespace errorsAlexander Sulfrian2014-10-281-4/+4
| | | | | | | |
* | | | | | | | Merge branch 'master' of https://github.com/gordonmessmer/bcfg2Sol Jerome2014-11-061-2/+12
|\ \ \ \ \ \ \ \ | |_|_|_|_|_|_|/ |/| | | | | | |
| * | | | | | | Remove trailing white space.Gordon Messmer2014-10-291-2/+2
| | | | | | | |
| * | | | | | | Add remaining systemd unit types.Gordon Messmer2014-10-281-1/+3
| | | | | | | |
| * | | | | | | Add docstring for new function.Gordon Messmer2014-10-221-0/+1
| | | | | | | |
| * | | | | | | If a service name ends with .service, .socket, or .target, do notGordon Messmer2014-10-211-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | automatically add ".service" to the end when calling systemctl. This change allows users to manage sockets and targets using systemctl.
* | | | | | | | Lint: fix default value for lint_pluginsAlexander Sulfrian2014-10-309-30/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a bit tricky because we need the enabled server plugins for the default value. To have these available before parsing lint_plugins the server plugins needs to be parsed during early parsing mode. Additional there are lint plugins that has no matching server plugin. To identify them, this adds a reference from the lint plutins to the name of the matching server plugins in the member variable __serverplugin__. If this variable is None the plugin is always used. If a lint plugin could not be imported (maybe because of a missing dependency) the plugin is ignored and not considered as a default value.
* | | | | | | | Lint: handle KeyboardInterupt during fam eventsAlexander Sulfrian2014-10-301-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a KeyboardInterupt occurs during block_for_fam_events core.shutdown() has to be called. block_For_fam_events will start the fam thread and if shutdown is not called the main thread will stop on an exception and python will wait until the fam thread stops (never).