This commit is part of a series to retire the Packaging Deb
project. Step 2 is to remove all content from the project
repos, replacing it with a README notification where to find
ongoing work, and how to recover the repo if needed at some
future point (as in
https://docs.openstack.org/infra/manual/drivers.html#retiring-a-project).
Change-Id: I467ab5607b11d3fe72f7939f67ee891a3c331801
The Oslo team has moved all previously incubated code from the
'openstack/oslo-incubator' repository into separate library
repositories and released those libraries to the Python Package,
so the directory should be removed.
Change-Id: I0ee30c36e87970bc1b1175230a1bffa27e0b3e09
LOG.warn is deprecated. It still used in a few places.
Updated to non-deprecated LOG.warning.
Change-Id: I6e8df0e072448fbd4077c4e5d98b2986e9855489
Closes-Bug:#1508442
Initialized logger with default value of NOTSET.
Added if statement to handle verbose argument and set the logger to
DEBUG.
Change-Id: I997b8b964dade013db265d088d00ccfdd6ab030e
Closes-Bug: #1269465
argparse was external in python 2.6 but not anymore, remove it from
requirements.
This should help with pip 8.0 that gets confused in this situation.
Installation of the external argparse is not needed.
Change-Id: Ib7e74912b36c1b5ccb514e31fac35efeff57378d
Python 2.6/3.3 support would be dropped by Infra team from mitaka,
CI would no longer be testing it, so projects should drop it too.
Change-Id: I13250170bd04d07b97990ed52a8c7a0c0f7e76c6
Closes-Bug: #1526170
OpenStack projects are no longer being tested under Python 2.6, so
remove the trove classifier implying that this project supports 2.6.
Change-Id: I1f8cc2d5d25a2e00b7ad4d12b013b69695536ab8
To solve the problem of "db type could
not be determined" on py34 we have to run first the py34 env to, then, run
py27. This patch puts py34 first on the tox.ini list of envs to avoid this
problem to happen.
Change-Id: Id0d2de40081a59d5819d2e6c52c98135f26808b5
Closes-bug: #1489059
Replace assertEqual(None, *) with assertIsNone in tests to have
more clear messages in case of failure.
Change-Id: Ic2dca04e7cdd4f837c42b39dd1ce37604c8f101b
Closes-bug: #1280522
Commands from AWS::CloudFormation::Init, when supplied as list, should
be run with shell=False. Only when commands are given as string, they
are meant to be run on shell.
In principle, we are trying to give least access to the shell to avoid
any inadvertent shell injections.
Change-Id: I3dc6fe0c29a14f75be044846f737e1ade23a6d6b
Closes-Bug: 1498300
Make all internal commands as list to avoid any possibility of command
line injection. Commands supplied as string are susceptible to
substitution.
All the internal commands are supplied as list to CommandRunner. As a
convention, all the commands must be given as list to subprocess except
the commands read from file, like in case of cfn hooks and commands
section in metadata.
Few internal commands require shell redirects and they will be
implemented in another patch.
Change-Id: Ifabaf44e341144bc85508dc05c76b1d83e41ae44
Partial-Bug: #1312246
Control the privileges by setting the effective UID before running the
command. Earlier we used to run command using su -c "USER".
Original EUID is restored after running the command. This is required to
run multiple commands in succession with different run-as users.
Change-Id: I414fc6a802f11deb320b43c6d011f802a42c40c9
Partial-Bug: #1312246
This reverts commit e424af2236.
Splitting command strings that were previously assumed to be interpreted
by the shell at whitespace and then passing them as separate args to
execvp will not work.
Change-Id: I7c37b5852ce9b20e63bdbbaddfb852463548aa90
Remove the specification in tox.ini that _ is a builtin so that
it will no longer assume that _ does not need to be imported.
This helps ensure that the _ from i18n is used.
Activating this check did not flag any violations.
Change-Id: Ibb457fc16b64ead1acbf359531ecd79e624df8ab
The CommandRunner used to run commands using su command and passing the
actual command to be run as argument to it.
su USER -c <cmd>
This is susceptible to command line injection as noted in the bug.
The fix required to do two things:
1. Pass the command to be run as list instead of a string. This is to
ensure that the actual arguments are passed as arguments to the program
ought to be executed. And by doing so, avoids running any commands
passed in the argument. On the contrary, if the command were passed as a
string to the shell, the arguments could be formed in a way to execute
malicious commands.
2. The CommandRunner runs the command directly and uses setuid to lower
the privileges if needed. If the 'runas' user is other than root, then
its UID is obtained and setuid is invoked to set the real user-id and
effective user-id to the given user.
Change-Id: I654117e994fd38411508dbe9b85d06c28dc0e411
Closes-Bug: #1312246
cfn-signal will not work when heat-cfn-api server is configured
for the https. This patch will provide a option to make a insecure
request to the cfn server.
Change-Id: I9dcd53b40a389811e292c331ff625a8b5af827b7
Closes-Bug: 1460007
* ConfigParser import from six
* Drop iteritems()
* To support both Python 2 and 3
* Encode string before writing it to file
* To support both Python 2 and 3
* Use six.string_types
* To support both Python 2 and 3
* Use key on Python 3
* Because cmp is no longer working
* Add py33 and py34 to tox.ini
Change-Id: I23985be55302cd4ef577919efb51975ecbd9563d
Related-Bug: 1347899
* handle install/upgrade, version checks, and downgrades
* Allow users to specify packages to be installed with dnf
* Use dnf if yum isn't available, letting older cloud-configs work on
future Fedoras
Change-Id: Ib3ff49cfdd3e545aa199c944c110852700625496
The errors were causing the list in the README to show up unformatted on
github.
README.rst:8: (ERROR/3) Unexpected indentation.
README.rst:9: (WARNING/2) Block quote ends without a blank line;
README.rst:17: (WARNING/2) Definition list ends without a blank line;
Change-Id: Ifdae966f44f582676b428d49497bb0212fad3e03
Replace URLs for workflow documentation to appropriate parts of the
OpenStack Project Infrastructure Manual.
Change-Id: I58802c6d625aabcb62c5a51aef06f838d8a57bab
heat-cfntools depends on wget and curl. It's redundant.
Since the curl is widely used, replace wget command to curl.
Change-Id: I691bdc046bd72a44c11f25e359c5036ae1a9e86b
Closes-Bug: 1359430
test_cfn_helper.py has a part of code which enforces the order of packages
or services processes. But the order is non-deterministic.
Change-Id: I37c4abe697fb3391793ce74fc730b127e920710a
Closes-Bug: #1360212
Matches Global Requirements.In the heat-cfntools project psutil
version does not match the global requirements.
Change-Id: I77e2435361a29facb4519e92abae725326743ffb
Add res_last_path='/var/cache/heat-cfntools/last_metadata_<resource>'
in Metadata.retrieve() function to store metadata of a resource.
Remove md5 check between current metadata and last metadata, json.load()
will organize json structure.
Change-Id: Ie0c31a748f0add3fcab6a579431a28b60051f601
Closes-Bug: #1205375
Partial-Bug: #1133049
In ubuntu system, we can't find 'chkconfig' command, it use
"update-rc.d" or "sysv-rc-conf" for instead.
_handle_sysv_command function will pick up the right command to
enable service for ubuntu or fedora or redhat, and also map systemd
to _handle_sysv_command and remove _handle_systemd_command.
Change-Id: I5b7ceb7541e989f6b11fc1a5acf94275c1d2e75b
Closes-Bug: #1318481