Actions 'plug' and 'unplug' are extended to allow operating with
the connectivity between services.
Command format:
plug|unplug <service> service ingress|egress to|from <other service> service
Example:
`unplug nova service egress to db service' - this blocks the outgoing
traffic from nova service processes to port of db service.
Change-Id: Ia9717a76597da6aad408520e45f41fb25d3e0d49
Pass signals as strings instead of using python constants
which depend on host system and have different types on py27 vs py3.
Change-Id: Ib8d7136bb3aed125a987678672142ce72e33af6f
Closes-bug: #1836736
1. Switch from home-made iptables module to the one from Ansible.
2. Allow to choose the direction: ingress (default) or egress.
3. Refactor to use shared schema for ports.
Change-Id: I4904c4abd0dd23ceb48ba4f3c403fa8dc498926b
* Pin version of sphinx for py27.
* In devstack job manually copy source repos from
performa organization.
Change-Id: Ie715ee7a1dff53e4b603fdb94ecc4ab7d386a392
* Remove dependency on ansible and libvirt libraries
* Bump python 3 version to 3.6
* Fix python warnings in the code
Change-Id: If7b495e9c3b2f5031d535954c3c3280e247871a6
Single-node devstack does not have SSH key for stack user.
In all tests we will use custom os-faults key and connect to localhost
as `stack` user. Tests are also executed as `stack` user explicitly
(by default they are run as zuul user, but we do not want to rely on this).
Change-Id: Ibcc9a406dc850363e651d4023874147db45214f7
Universal driver is a place-holder of cloud management.
Both services and nodes are configured separately.
Change-Id: Ie60ad757d07a0c96d8aec5516806fa0950748e3a
Remove Fuel, screen-based DevStack, Pacemaker and Linux service drivers.
Rename devstack_systemd into devstack.
Use common schema for auth parameters.
Change-Id: I38b5f82282b72e969fc08e0948109939c95cf948
Ansible is distributed under GPL-3.0 license and certain restrictions
are applied when its code is imported as Python library. The only safe
way to call GPL code is via general interface, e.g. CLI.
This patch removes all direct linking of Ansible code and executes
all actions via command line. It is now user responsibility to install
Ansible executable on the system.
Change-Id: If879e4ce59bcdac84bc51ea0ac9277783777c80b
A support for the containers is required for the current releases of
OpenStack.
Add the ability to 'start', 'terminate' and 'restart' the containers.
Change-Id: Ib2beebcfa7017a9b2bb8f16dea49beef6db79d43
Yaml.load() return Python object may be dangerous if you receive a YAML
document from an untrusted source such as the Internet. The function
yaml.safe_load() limits this ability to simple Python objects like integers or
lists.
Reference:
https://security.openstack.org/guidelines/ dg_avoid-dangerous-input-parsing-libraries.html
Change-Id: I4f5379e1e17129222a211ac6e6d285c40a0b9bfd
Before Ansible 2.4 the location of modules was a ':'-separated
string, but in Ansible 2.4 it is list of paths (and a list MUST
contain more than one item).
This patch adds correct handling for both Ansible versions.
Change-Id: Iab571f9e03e0f27a7720bcea801592d0ab3d3209
The Ansible version was capped to < 2.4.0 in [1], since 2.4.0 refactored
the Inventory and VariableManager modules.
This patch aims at adding support for Ansible >= 2.4.0, while keeping
compatibility with earlier versions.
Change-Id: I5722fc8531671e69abe90d64a4bfd988321850b5
Closes-Bug: #1724227
A new driver is suitable for the most abstract case. It does not have any
built-in services, all services need to be specified explicitly in
a config file.
By default the Universal driver works with only one node. To specify
more nodes use `node_list` node discovery driver. Authentication
parameters are then overridden by corresponding parameters from node
discovery.
Change-Id: Id6ede38bcf82d121ccba2baaef928fe0e7071938
Add new type of fault called "stress". When activated this fault
produces load on CPU, disk, memory or kernel of node. The functionality
is implemented with help of stress-ng utility.
Node collection API is extended:
def stress(self, target, duration=None)
Human API is extended, examples of commands:
* stress cpu for 20 seconds on controller.domain.tld node
* stress disk for 10 seconds on all nodes
* stress memory for 60 seconds on all nodes with keystone service
Change-Id: I8ddb2292b8dd19f476e4a5071259d1a90cbaa37c
Note: 'stress-ng' is required to be installed on target nodes.
Since Pike release by default DevStack is run with all the services
as systemd unit files (USE_SCREEN=False).
Changes done in patch:
add devstack_systemd driver;
add SystemdService;
add unit tests;
update documentation.
Co-Author: Kyrylo Romanenko <kromanenko@mirantis.com>
Co-Author: Ilya Shakhat <shakhat@gmail.com>
Change-Id: I136398e3d18bafa87689a97b22a5514f4831d56e