summaryrefslogtreecommitdiffstats
path: root/src/lib/Bcfg2
Commit message (Collapse)AuthorAgeFilesLines
* 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.
* | Setup reporting transport before starting threadsTim Laszlo2014-06-101-1/+4
| |
* | GroupLogic: parse generated template properly to allow xincludeChris St. Pierre2014-05-221-1/+1
| |
* | Init: Remove stray whitespaceSol Jerome2014-05-171-1/+1
|/ | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* Metadata: Reread clients.xml/groups.xml more carefullyChris St. Pierre2014-05-151-8/+21
| | | | | Avoid building client metadata while rereading those files, and expire the metadata cache afterwards.
* XMLFileBacked: Watch XIncluded files that do not existChris St. Pierre2014-05-151-1/+7
| | | | | | | | | | | | | | | | | | | | This makes a best effort to watch XIncluded files that do not exist. Assume that you have XIncluded ``foo.xml``, the following (currently) fails: mv foo.xml /tmp mv /tmp/foo.xml . Bcfg2 processes the deletion event, and stops watching ``foo.xml``; consequently, it receives no creation event when you put ``foo.xml`` back. This does not fix the situation where you add a new file that is matched by a wildcard XInclude, which turns out to be much more difficult, and will likely require a significant restructuring of how wildcard XIncludes are processed. (I.e., we'll need to place a monitor on the directory or directories where the wildcard XInclude is looking, and then filter events according to the wildcard.)
* catch errors base64 decoding encrypted properties dataChris St. Pierre2014-05-121-1/+1
|
* fixed pylint/pep-8 testsChris St. Pierre2014-04-2514-45/+44
|
* do not bruteforce Properties decrypts with unknown passphraseChris St. Pierre2014-04-251-12/+5
| | | | | this greatly decreases startup time with lots of data encrypted with missing passphrases
* reduce logging from failed decryption with decrypt=laxChris St. Pierre2014-04-253-30/+25
|
* Enable bcfg2-yum-helper to depsolve for arches incompatible with serverJohn Morris2014-04-211-4/+25
| | | | | | | | | | | | | | | | By default, the yum dependency resolver uses the host's architecture to filter compatible packages. This prevents dependency resolution when the bcfg2 client's architecture is incompatible with the server's. This workaround checks the <Arch/> element for each of the client's yum sources, and if they are all identical, passes that architecture to bcfg2-yum-helper to override the default. The rpmUtils.arch module may only be configured for a single architecture. If multiple architectures are configured in yum sources, we don't know which one to pick, so use the default behavior instead.
* Reporting: Log to debug to prevent spam in logsSol Jerome2014-04-161-2/+2
| | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* Correctly upgrade or downgrade yum packagesChris St. Pierre2014-04-081-15/+36
| | | | | | | | | | | | Formerly, yum did an 'update' to install the correct version of a package, even if the desired package was older than the installed package. This is wrong; it needs to do a downgrade. This changes it to downgrade when the desired package is older, and upgrade if it is newer. There is still the possibility of upgrading a package that should be downgraded if the desired package is only partially specified, but this should be very rare.
* Revert "Systemd: systemd is a replacement for chkconfig"Sol Jerome2014-04-061-2/+0
| | | | | | | | This reverts commit 690a18b5bb61516e5c11f6da3d788332373c196b. While systemd is meant to replace chkconfig, it appears that RHEL7 has both and does not provide systemd alternatives for certain SYSV init scripts by default.
* Core: better error messages when altsrc bind failsChris St. Pierre2014-03-141-3/+4
|
* bcfg2-report-collector: better error messages when failing to daemonizeChris St. Pierre2014-03-041-0/+13
|
* cleared pylint error on PluginDatabaseModel metadata optionsChris St. Pierre2014-03-031-1/+2
|
* Core: close all database connections at the end of XML-RPC requestsChris St. Pierre2014-03-031-6/+26
|
* Reporting: properly close db connectionChris St. Pierre2014-02-282-4/+6
| | | | | | | | | Close the db connection at the end of each DjangoORM import, not when the reporting collector shuts down. The collector may not have even opened a connection, in the case of a storage backend other than DjangoORM. Fixes #157
* POSIX: fixed test to only apply ACLs to non-symlinksv1.3.4Chris St. Pierre2014-02-251-1/+1
|
* Revert "POSIX: fixed test to only apply ACLs to non-symlinks"Chris St. Pierre2014-02-251-2/+2
| | | | | | Massive typo. This reverts commit c51850b13f54d6f46e6c671e5ee1d3f0cacef727.
* POSIX: fixed test to only apply ACLs to non-symlinksChris St. Pierre2014-02-251-2/+2
|
* Version bump to 1.3.4Sol Jerome2014-02-252-2/+2
| | | | Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
* helpers: better error message when failing to read FileBackedChris St. Pierre2014-02-251-1/+2
|
* bcfg2-lint: Verify abstract Package tagsChris St. Pierre2014-02-231-0/+10
|
* Metadata: reread client list from databaseChris St. Pierre2014-02-233-5/+41
| | | | | | | | This fixes two related bugs: One causes Metadata to use an out-of-date cached list of clients when a client is deleted or added with bcfg2-admin; the other causes child worker processes to use an out-of-date cached list of clients when a client is added with a Bcfg2 run when the multiprocessing core is in use.
* Fixed typoChris St. Pierre2014-02-211-1/+1
| | | | Note to self: do not push code before 9 am
* Yum: fix pylint testsChris St. Pierre2014-02-211-2/+2
|
* Yum: only fork to find bcfg2-yum-helper once, for realChris St. Pierre2014-02-211-2/+2
|
* POSIX: Fix verification of symlinksChris St. Pierre2014-02-211-3/+3
| | | | | | | | | | * Stat the link itself, not its target * Get SELinux context from the link, not the target * Don't get ACLs at all; symlinks don't have their own ACLs The first issue listed wasn't actually a bug, because none of the information queried from the target by the stat call was actually used in verification, but it's been fixed for completeness.
* testsuite: Fixed several pylint 1.0 issuesChris St. Pierre2014-02-213-6/+10
|
* core: only shut down core onceChris St. Pierre2014-02-191-0/+10
|