| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
| |
This fixes a subtle bug by enforcing that it's a tuple of 2-tuples rather than just a single 2-tuple.
|
| |
|
| |
|
|
|
|
| |
Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
|
|
|
|
|
| |
Avoid building client metadata while rereading those files, and expire
the metadata cache afterwards.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.)
|
| |
|
| |
|
|
|
|
|
| |
this greatly decreases startup time with lots of data encrypted with
missing passphrases
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
| |
Massive typo.
This reverts commit c51850b13f54d6f46e6c671e5ee1d3f0cacef727.
|
| |
|
|
|
|
| |
Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
Note to self: do not push code before 9 am
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
| |
|
| |
|
| |
|
|\
| |
| | |
Support ACLs without a specific user/group
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|