Age | Commit message (Collapse) | Author |
|
1. Remove the usage of the path.join function now that all code should
be going through the util file methods (and they can be mocked out as
needed).
2. Adjust all occurences of the above join function to either not use it
or replace it with the standard os.path.join (which can also be mocked
out as needed)
3. Fix pylint from complaining about the tests folder 'helpers.py' not
being found.
4. Add a pylintrc file that is used instead of the options hidden in the
'run_pylint' tool.
|
|
|
|
|
|
|
|
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
|
|
1. Remove the usage of the path.join function
now that all code should be going through
the util file methods (and they can be
mocked out as needed).
2. Adjust all occurences of the above join
function to either not use it or replace
it with the standard os.path.join (which
can also be mocked out as needed)
3. Fix pylint from complaining about the
tests folder 'helpers.py' not being found
4. Add a pylintrc file that is used instead
of the options hidden in the 'run_pylint'
tool.
|
|
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.
|
|
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.
|
|
|
|
that removes some of the code in apt_update_upgrade
to do upgrades and installs and places it in a
generic package module and adjusts some of the
reboot backoffs and log flushing/sleeping that
was happening there.
|
|
setup properly.
|
|
LP: #1065116
|
|
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
|
|
|
|
we map 'hostname' to 'local-hostname'
so that the modules work correctly with
the cfgdrive style of data.
|
|
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.
|
|
|
|
before we start iterating over it (it could
be sent is as none).
|
|
|
|
Packages on debian/ubuntu should start on installation. As a result, if we
want to get config changes we've inserted to be read, we need to restart.
Note one interesting thing here.
upstart considers 'restart' as "restart only if currently running", while
'service' considers restart to be "stop if running, then start". So the use of
'service' here is important, rather than just 'restart'
|
|
The primary utility here is normalize_user_groups, which would
be called by config modules to get a list of users or groups.
This centralizes what was copied code into this one location.
|
|
|
|
|
|
user normalization function instead of
the previous 'user' extraction.
|
|
|
|
|
|
device name, throw an error since rhel can not currently
handle this case.
|
|
|