summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'fix-version' of https://github.com/AlexanderS/bcfg2Sol Jerome2014-11-251-2/+9
|\
| * Bcfg2/Options/Parser: fix --version option, add testAlexander Sulfrian2014-11-251-2/+9
| |
* | Server/Core: fix missing bundle errorAlexander Sulfrian2014-11-211-1/+2
|/ | | | | | Bundles could be converted into Independent tags, so we need to check Bundle and Independent elements in the generated structure to find all requested bundles.
* Merge branch 'include2' of https://github.com/gordonmessmer/bcfg2Sol Jerome2014-11-171-3/+42
|\
| * Add loader/environment to Jinja2 templates so that files canGordon Messmer2014-11-061-3/+42
| | | | | | | | include or extend other files.
* | Client/Tools/APT: some syntax cleanupAlexander Sulfrian2014-11-161-15/+13
| |
* | Client/Tools/APT: use more modern python-apt APIAlexander Sulfrian2014-11-161-9/+2
| | | | | | | | python-apt provides a public API for all required steps.
* | Client/Tools/APT: use "pkg in cache" everywhereAlexander Sulfrian2014-11-161-3/+3
| | | | | | | | | | The "in syntax" is supported instead of the cache.has_key(pkg) syntax at least since python-apt-0.7.91.
* | Revert "APT: add backwards compatibility for python-apt 0.6"Alexander Sulfrian2014-11-161-9/+2
| | | | | | | | This reverts commit 81cc9e874928ee97283cbf501b4ffd3917f1f476.
* | Client/Tools/APT: remove all the stuff for the old APIAlexander Sulfrian2014-11-161-54/+17
| |
* | Merge branch 'maint'Alexander Sulfrian2014-11-1218-154/+245
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: debian/changelog doc/conf.py doc/releases/index.txt doc/server/database.txt doc/server/plugins/generators/cfg.txt doc/server/plugins/generators/sslca.txt man/bcfg2.conf.5 misc/bcfg2-selinux.spec misc/bcfg2.spec osx/Makefile osx/macports/Portfile schemas/packages.xsd solaris-ips/MANIFEST.bcfg2-server.header solaris-ips/MANIFEST.bcfg2.header solaris-ips/Makefile solaris-ips/pkginfo.bcfg2 solaris-ips/pkginfo.bcfg2-server solaris/Makefile solaris/pkginfo.bcfg2 solaris/pkginfo.bcfg2-server src/lib/Bcfg2/Client/Client.py src/lib/Bcfg2/Client/Proxy.py src/lib/Bcfg2/Client/Tools/APT.py src/lib/Bcfg2/Client/Tools/Action.py src/lib/Bcfg2/Client/Tools/SYSV.py src/lib/Bcfg2/Client/Tools/YUM.py src/lib/Bcfg2/Client/Tools/__init__.py src/lib/Bcfg2/Options.py src/lib/Bcfg2/Reporting/Collector.py src/lib/Bcfg2/Reporting/templates/base.html src/lib/Bcfg2/Server/Admin/__init__.py src/lib/Bcfg2/Server/BuiltinCore.py src/lib/Bcfg2/Server/Core.py src/lib/Bcfg2/Server/Plugins/Packages/Apt.py src/lib/Bcfg2/Server/Plugins/Probes.py src/lib/Bcfg2/settings.py src/lib/Bcfg2/version.py testsuite/Testsrc/Testlib/TestClient/TestTools/Test_init.py testsuite/Testsrc/test_code_checks.py
| * \ Merge branch 'fix-django-db-options-parsing' into maintSol Jerome2014-11-101-21/+7
| |\ \
| | * | Options.py: Fix database OPTIONS parsingSol Jerome2014-11-041-21/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of parsing key/value pairs from bcfg2.conf, this allows the setting of the literal value which is then passed through to django as the value of the OPTIONS setting. This change allows for setting arbitrary options since some settings require nested dictionaries, etc. Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * | | Client/Tools/APT: fix pylint errors, enable checkAlexander Sulfrian2014-11-101-62/+81
| | | | | | | | | | | | | | | | | | | | | | | | Previously pep8/pylint checks were disable for the APT tool because there were to many errors. This fix the pylint errors and enables the code style checks.
| * | | Client/Tools/APT: fix exception nameAlexander Sulfrian2014-11-101-1/+1
| | | |
| * | | Merge branch 'SYSV-use-simplefile' of https://github.com/fennm/bcfg2 into maintSol Jerome2014-11-081-6/+5
| |\ \ \
| | * | | SYSV: change instances of simplename to simplefileMichael Fenn2014-11-061-6/+5
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is to better match the schema since simplefile already exists. The previous simplename attribute would fail validation. Since pkgmgr already helpfully constructs url for you if simplefile exists, the tool no longer needs to do the concatenation itself. Given the low usage rate of SYSV.py and that the original functionality was introduced in a late 1.3 release, changing the name w/o providing backwards compatiblity seems reasonable.
| * | | Merge branch 'handle-apt-update-exceptions' of ↵Sol Jerome2014-11-061-1/+5
| |\ \ \ | | | | | | | | | | | | | | | https://github.com/AlexanderS/bcfg2 into maint
| | * | | Client/Tools/APT: handle exceptions gracefullyAlexander Sulfrian2014-11-051-1/+5
| | |/ / | | | | | | | | | | | | | | | | | | | | Exceptions during cache update (in kevlar mode) should not prevent the client tool from initializing. In the worst case the old cache would be used for the client run.
| * / / Server/Plugins/Packages: add debsrc attribute to url_mapAlexander Sulfrian2014-11-051-2/+2
| |/ / | | | | | | | | | | | | Adding this value to the url_map makes it possible to use it in genshi templates.
| * | Tools: Fix install of non-whitelisted servicesSol Jerome2014-10-292-21/+23
| | | | | | | | | | | | | | | | | | | | | Previously, a service restart would occur even when running in whitelist mode without the service being present in the whitelist. Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * | fix keyboard interrupt during intial event handlingAlexander Sulfrian2014-10-262-1/+3
| | | | | | | | | | | | | | | | | | | | | This removes some wildcard except handler because this drops some KeyboardInterrupt exceptions (for example previously a KeyboardInterrupt during the loading of the cache for Packages resulted in a fallback to file read).
| * | Server/Core: also shutdown on exceptions during fam blockingAlexander Sulfrian2014-10-251-5/+5
| | | | | | | | | | | | | | | | | | | | | Previously the server got stuck, if a keyboard interrupt occured during block_for_fam_events. The KeyboardInterrupt exception was only handled in the executable and it does not call shutdown for the Core. So the running fam thread does not get killed and the main thread waits for it.
| * | Merge branch 'cleanup_pidfile' of https://github.com/mattikus/bcfg2 into maintSol Jerome2014-10-232-23/+41
| |\ \
| | * | Remove PIDFileError as it does not always exist in the package and is rarely ↵Matt Kemp2014-10-021-5/+0
| | | | | | | | | | | | | | | | used.
| | * | Catch possible typeerror resulting from None being returned when reading the ↵Matt Kemp2014-10-022-2/+2
| | | | | | | | | | | | | | | | pid.
| | * | Fixes to ensure pidfile can be opened or broken if stale.Matt Kemp2014-10-012-19/+15
| | | |
| | * | pylint fixes.Matt Kemp2014-10-011-3/+4
| | | |
| | * | Attempt to break the pid lock during startup.Matt Kemp2014-10-012-15/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit attempts to break the pidfilelock during startup in cases where the process may have exited without successfully cleaning up the lockfile. It also attempts to grab the lock before opening the context. Also applied to the Collector module, which may have been looking for the wrong exception since it does not rely on a timeout.
| * | | Merge branch 'reporting-fix-filter' of https://github.com/AlexanderS/bcfg2 ↵Sol Jerome2014-10-232-39/+50
| |\ \ \ | | | | | | | | | | | | | | | into maint
| | * | | Reporting: better exception handlingAlexander Sulfrian2014-10-201-33/+44
| | | | | | | | | | | | | | | | | | | | Try to keep the try-except-blocks as small as possible.
| | * | | Reporting: fix filter urlsAlexander Sulfrian2014-10-121-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The regex match for the filter urls were to strict. They disallowed some charaters, that are valid in group names and so the django reverse mechanism for building urls failed.
| * | | | Merge branch 'add-name-for-sources' of https://github.com/AlexanderS/bcfg2 ↵Sol Jerome2014-10-211-2/+11
| |\ \ \ \ | | | | | | | | | | | | | | | | | | into maint
| | * | | | Packages: add name to additional_data for SourcesAlexander Sulfrian2014-10-181-0/+1
| | | | | |
| | * | | | Packages: add name to sourcesAlexander Sulfrian2014-10-181-2/+10
| | |/ / /
| * | | | Merge branch 'ssl-protocol-fix' of github.com:solj/bcfg2 into maintSol Jerome2014-10-213-5/+10
| |\ \ \ \
| | * | | | Proxy.py: Pass through SSL protocol optionSol Jerome2014-10-153-5/+10
| | |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously we were not passing through the SSL protocol specified in the client's bcfg2.conf which caused it to unconditionally be set to xmlrpc/ssl. While this appears to automagically work with newer versions of openssl, the version in e.g. centos5 will fail if the server is set to use TLSv1. This commit passes through the setting from the client's bcfg2.conf so that older clients can talk to servers which are set to TLSv1 (in order to mitigate the effects of POODLE). Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
| * / / / 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
| | | | |