Age | Commit message (Collapse) | Author |
|
|
|
- There appeared to be a few logexc calls
that did not pass the logger in, fix those
locations where this occured.
- When a group member adding fails, log the
error and try the next member instead of
failing adding any more members
|
|
|
|
- Remove direct usage of open() and use the
corresponding helpers instead.
- Fix the non-existence of the copyfile routine
and just use the ones that do exist in the
utils module to do the file backup.
- Use class level constants for the various file
names read, this matches the same usage in the
other distro types.
|
|
This fixes up many long lines to be < 80 chars and some other
pylint issues. pylint 1.1 (in trusty) is now complaining about
the lazy logging, so I'll clean that up when I touch things.
|
|
tools/run-pep8 wasn't checking all python files.
tools/run-pylint wasnt checking bin/cloud-init
fixed resultant pep8 issues after finding them.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The ubuntu/debian networking file parsing function
really is more generic than just a rhel utility function
and can be used by others that want to use this functionality
for there own purposes (say in writing down a freebsd network
format instead) so moving this to its own module to encourage
its usage outside of rhel.
|
|
|
|
This allows a general config option to prefix apt-get commands via
'apt_get_wrapper'. By default, the command is set to 'eatmydata', and the
mode set to 'auto'. That means if eatmydata is available (via which), it
will use it.
The 'command' can be either a array or a string.
LP: #1236531
|
|
values. Use these right away to read and change the hostname.
|
|
current form its still missing some modules though.
Supported:
-SSH-keys
-growpart
-growfs
-adduser
-powerstate
|
|
|
|
|
|
|
|
|
|
Per discussion with Robert @ SUSE since he can't sign the CCA.
|
|
SLES 11 doesn't support long option names for the passwd utilities. Use the
short option names in the parent distro class and remove the custom SLES
methods.
|
|
|
|
So that they can be used by other handlers.
|
|
Move adding of a user and locking of a password to their own methods so that
distro handlers can override them.
|
|
|
|
This branch contains fixes found while investigating integration of cloud-init
into oVirt. They're in 3 categories:
- compatibility with systemd configuration management (as used in Fedora 18)
- workaround for a 2.6 kernel quirk which prevented 'blkid' from displaying
/dev/sr0 in some cases
- writing sysconfig files in typical convention, with a newline preceding EOF,
to make some parsers happy
|
|
dist-upgrade is generally more correct here to get all packages upgraded.
We add the options to change these in system_info. Also, document
the previous apt configuration change (apt_get_command).
LP: #1164147
|
|
In general, dist-upgrade is the correct behavior here.
It will get a new kernel, though, which could be annoying. So, allow
a way to turn it off (by setting 'apt_get_upgrade_subcommand: upgrade').
LP: #1164147
|
|
This patch fixes issues in Fedora 18 (and upcoming RHEL 7) which are
present due to their use of systemd:
- store locale configuration in /etc/locale.conf
- store hostname in /etc/hostname
- use a symlink for /etc/localtime (prior code would set the timezone
but corrupt data in /usr/share/zoneinfo due to presence of symlink)
It also contains fixes for issues unrelated to systemd adoption:
- explicitly scan /dev/sr0 with blkid in order to get the optical drive
in the blkid cache. This prevents an issue on systems running 2.6
kernels (such as RHEL 6) in which config disks on some devices won't
be detected unless the device has previously been queried.
(For reference, see https://patchwork.kernel.org/patch/1770241/)
- append a newline when rewriting sysconfig files, as this is customary
text configuration file formatting and is expected by some parsers
(such as the ifcfg-rh plugin for NetworkManager)
|
|
* cloudinit/distros/parsers/resolv_conf.py
added some pylint overrides with 'plXXXXX' syntax.
example: # pl51222 pylint: disable=E0102
The pl51222 there means: http://www.logilab.org/ticket/51222
This specific issue is present in 12.04 pylint, but not 13.04.
* pylint doesn't like the requests special handling we have.
which makes sense as it is only checking versus one specific version.
* general pep8 and pylint cleanups.
|
|
|
|
|
|
This allows the customization of the apt-get command used for installing
packages, and also adds '--force-unsafe-io'. Because this is spawned from
cloud-init, it seems to make sense as a first boot package installation
option.
|
|
|
|
|
|
This change adds the ability to provide specific package versions to
Distro.install_packages and subsequently Distro.package_command. In order
to effectively use Distro.install_packages, one is now able to pass a
variety of formats in order to easily manage package requirements. These
are examples of what can be passed:
- "package"
- ["package1","package2"]
- ("package",)
- ("package", "version")
- [("package1",)("package2",)]
- [("package1", "version1"),("package2","version2")]
This change also adds the option to install a specific version for the
puppet configuration module. This is especially important here as
successful puppet deployments are highly reliant on specific puppet
versions.
|
|
When the old user: style entry is found, don't forget that
we need to use the distro settings that are provided but
override the name with the new name, this is now accomplished
by merging them together in the correct order (using the standard
cloud-init merging algo).
|
|
When the old user: style entry is found, don't forget that
we need to use the distro settings that are provided but
override the name with the new name, this is now accomplished
by merging them together in the correct order (using the standard
cloud-init merging algo).
|
|
Previously if a legacy user: XYZ entry was found, XYZ would not automatically
be promoted to the default user but would instead just be added on as a new
entry to the normalized user list. It appears the behavior that is wanted is
for the XYZ entry to be added on as the default user (thus overriding a distro
provided default user), which better matches how the code previous worked.
LP: #1100920
|
|
accidentally removed a line between two functions.
|
|
often it is convenient to classify a distro as being part of an
operating system family. for instance, file templates may be
identical for both debian and ubuntu, but to support this under
the current templating code, one would need multiple templates for the
same code.
similarly, configuration handlers often fall into the same bucket: the
configuraton is known to work/has been tested on a particular family
of operating systems. right now this is handled with a declaration
like:
distros = ['fedora', 'rhel']
this fix seeks to address both of these issues. it allows for the
simplification of the above line to:
osfamilies = ['redhat']
and provides a mechanism for operating system family templates.
|
|
This simiplifies the logic, by just making it independent of 'system'.
LP: #1096423
|
|
Instead of only not locking when system is present
the logic should handle the correct case when lock
password is set and system is not present.
LP: #1096423
|
|
LP: #1096417
|
|
|
|
|
|
LP: #1079002
|
|
|