Age | Commit message (Collapse) | Author |
|
attempt the unicode-escape path.
|
|
it has contents which are in unicode which seems
to cause python to blow-up when this happens since
'string-escape' doesn't work on unicode (at least in 2.6).
LP: #1075756
|
|
LP: #1073077
|
|
Use only util methods for reading/loading/appending/peeking
at files since it is likely soon that we will add a new
way of adjusting the root of files read, also it is useful
for debugging to track what is being read/written in a central
fashion.
|
|
Add a new example test that will patch utils and os
functions so that they can be 'retargeted' to a temporary
directory, which allows us the ability to run a full set
of cloud-init stages.
Neat things:
1. All cloud-init code is unchanged (as long as it goes
through the utils functions for most functionality)
2. Allows for a natural way to setup a temporary directory
then patch the new directory as the new 'root' and then
run cloud-init stages and then check the contents of
what was placed as desired.
Note:
This is now exposing what I think was just an issue in
./tools/run-pylint.
./tools/run-pylint ./tests/unittests/test_filters/test_launch_index.py
and
./tools/run-pylint ./tests/unittests/test_simple_run
was always failing, but now I'm seeing errors.
need to fix that. any tests that 'import helper' have issues.
|
|
users groups function when
its provided by the get user
function.
|
|
LP: #1065116
|
|
LP: #1070345
|
|
Create /etc/sudoers.d if not present.
Attempt to determine if /etc/sudoers.d will be used by /etc/sudoers.
If determined not, then add a line to /etc/sudoers.
|
|
|
|
|
|
|
|
Remove the need to have 'default_user' and 'default_user_groups' groups be
hard coded into the distro class, instead let that set of configuration be
located in the config file where it should be specified instead.
|
|
LP: #1066115
|
|
setup properly.
|
|
LP: #1065116
|
|
|
|
differently in the rpm spec file template instead
of being joined with the release.
|
|
release number which can be to increment
cloud-init while still maintaining the
'major' cloud-init version number from bzr.
|
|
it adjusts the fstab correctly and adds
tests in that verify the actions that
should happen (also tested on a real
system).
|
|
|
|
to ensure that even if they are found that they
are also valid, before they are assumed to be
the correct device name.
|
|
Also fix the extraction of the metadata key name
since it actually uses 'dashes' instead of being
a single word.
|
|
translate the device name to a actual device using
logic that will try the ec2 metadata (if avail) or
will try using 'blkid' to find a corresponding label.
LP: #1062540
|
|
|
|
|
|
use the datetime.now(), the others get
a warning message.
|
|
since this causes rpmbuild to croak with errors like
'changelog not in descending chronological order'.
|
|
|
|
Note, I've marked this as fixing LP: #1061964, but clearly it does not.
that was fixed under revision 680.
LP: #1061964
|
|
For the cloud-init rc.d, ensure that the cloud-init-local mode is attempted
as a hard requirement (instead of the previous soft requirement) which in the
rhel5.6 case makes it not run in the right order.
|
|
Ensure that for config drive that we map 'hostname' to 'local-hostname' so that
the modules work correctly with the cfgdrive style of data.
|
|
|
|
we map 'hostname' to 'local-hostname'
so that the modules work correctly with
the cfgdrive style of data.
|
|
cloud-init-local mode is attempted as
a hard requirement (instead of the
previous soft requirement) which in
the rhel5.6 case makes it not run
in the right order.
|
|
|
|
This fixes (tested) bug 978127. The server was actually returning a 401
not a 403. As such, the fix here was insufficient. This will now take
either of those 2 error codes. I've also tested it by changing the clock
in the cloud-init upstart job with a stanza like below, and verifying
that we do see the problem and then it resolve itself:
pre-start script
offset="10 minutes ago"
past=$(date -R --date "$offset")
date --set "$past" &&
echo ===== "set date to $past [$offset]" ===== ||
echo ===== "failed to set date to $past [$offset]" ====
end script
LP: #978127
|
|
and is not a part of a comment or other
part of the line.
|
|
Rework the rest of the locations that used the previous 'user' and make
those locations go through the new distros functions to select the default
user or the user list (depending on usage).
Adjust the tests to check the new 'default' field that signifies the
default user + test the new method to extract just the default user from a
normalized user dictionary.
"default" user is now marked in the user dict and get_default_user uses
that.
|
|
|
|
a little more relevant.
|
|
|
|
file is being added actually exists before it
is written into and ensure that the directory
is included in the main sudoers file.
|
|
|
|
located and warn when it is not found + only
run the shell command when actual contents
exist to run.
|
|
imported without being renamed due to
previous usage of the attribute 'distros'
|
|
|
|
the previous 'user' and make those locations
go through the new distros functions to select
the default user or the user list (depending on usage).
Adjust the tests to check the new 'default' field
that signifies the default user + test the new method
to extract just the default user from a normalized
user dictionary.
|
|
|
|
In 0.7.0 we started using yaml.safe_load to load data rather than
yaml.load. Some producers (namely, ubuntu MAAS created) have produced
cloud-config data in the past that included python unicode types.
This creates a specialized safe_loader that is basically safe_load +
support for python unicode.
|