975 Commits

Author SHA1 Message Date
Adam Harwell
fdde4e6984 Revert "Condense amphora-agent-ubuntu in to amphora-agent"
This reverts commit 687a972960915ef01008701dbbb35a7b52c728ae.
Something about this seems to have possibly broken amphora boots.
Testing reverting this patch to see if it fixes the scenario runs.

Change-Id: I824cb1c6fa38f2320f84456a551585114215f625
2016-07-14 17:51:02 +09:00
Jenkins
c2b82a0849 Merge "Fix Octavia release notes header" 2016-07-13 21:10:25 +00:00
Jenkins
ed45d5f9c4 Merge "Condense amphora-agent-ubuntu in to amphora-agent" 2016-07-13 21:10:18 +00:00
Jenkins
62c3353a44 Merge "Support RHEL base image in DIB" 2016-07-13 21:04:08 +00:00
Jenkins
613cbf6538 Merge "Fix docstrings for database tasks" 2016-07-13 21:02:10 +00:00
Jenkins
cae30d125d Merge "Use git.o.o rather than review.o.o for cloning" 2016-07-13 21:01:36 +00:00
Jenkins
fd9e45a54a Merge "Modernize amphora-agent element" 2016-07-13 20:50:34 +00:00
Jenkins
e0cfe6b559 Merge "Add Python 3.5 classifier and venv" 2016-07-13 20:50:10 +00:00
Jenkins
1f05e3bb1c Merge "Remove the conditional check for topology" 2016-07-12 22:31:03 +00:00
Jenkins
6910f1a57f Merge "Fixed running tox while stacked" 2016-07-12 22:07:23 +00:00
Yatin Kumbhare
db2178964a Add Python 3.5 classifier and venv
Now that there is a passing gate job, we can claim support for
Python 3.5 in the classifier. This patch also adds the convenience
py35 venv.

Change-Id: I968c8baab6b9f5c1b1b99735e16dc08158f7d8d7
2016-07-12 21:12:59 +05:30
Bernard Cafarelli
6e97a37744 Support RHEL base image in DIB
This adds a rhel type and gives some pointers on needed environment
variables for base image, registration, needed subscriptions.

no-resolvconf is also updated to work on rhel-type systems

Depends-On: Icb0e20b01479fea345e01309fc4bf3f7f639900c
Change-Id: Ic452feaf32fe7699ebd072f21dd630a2ac93bb5f
2016-07-12 10:24:37 +02:00
Jenkins
a3803ad68b Merge "Insert haproxy in front of all the o-api endpoints" 2016-07-12 02:29:30 +00:00
Jenkins
ab2faff96f Merge "Allow deploying secondary worker and API nodes" 2016-07-12 02:13:37 +00:00
Matt Alline
55e6e3a77a Fixed running tox while stacked
Tox tests for py27 and py34 would fail various numbers of tests
when tox was run multiple times without a clean stack. This patch
tracked down the missing mocks for the various tests and put them
into place. Now running tox should pass green no matter if the
user has a running stack or does not have a running stack.

Change-Id: I0b11c83ec7ccfdc57790213d415b30d52fd55a61
Closes-Bug: 1599330
2016-07-11 07:16:17 -05:00
OpenStack Proposal Bot
c3c9fb6cf4 Updated from global requirements
Change-Id: I463f419d8cfda924068ae661467a593a05636d22
2016-07-09 19:25:17 +00:00
Miguel Angel Ajo
50fd8be1fd Insert haproxy in front of all the o-api endpoints
The main octavia node will need the OCTAVIA_NODES setting
in the following format to setup the octavia API haproxy
in front of all of them.

OCTAVIA_NODES=main:<ip-address>,second:<ip-address>

Change-Id: I4a88dae4aa47c508559fd7464f127a23b089af2a
2016-07-09 11:33:35 +00:00
Miguel Angel Ajo
b47fcb2834 Allow deploying secondary worker and API nodes
This commit introduces a new parameter "OCTAVIA_NODE", which
is standalone by default. Only the main (for ha) or standalone
nodes create resources like accounts, the management network,
images, etc.

We also introduce a multinode vagrant configuration.

A follow up patch will introduce an haproxy in front of the octavia
API endpoints.

Change-Id: I835ee7e0e925232b55f3c14eeed98aeb0f0ce463
2016-07-09 11:33:08 +00:00
Evan Gray
48d4316cf9 Fix small typo in log message
Change-Id: I20a59298e0dc2739b6e4c145fd38d632ce528624
2016-07-08 21:34:08 -05:00
Elena Ezhova
9de6d8d925 Fix Octavia release notes header
Change-Id: I228ba7d06a13116422ddec0a3b97259ecdbd1b4a
2016-07-08 16:18:35 +03:00
Elena Ezhova
ae94266fc4 Fix docstrings for database tasks
This fixes some typos and copy-paste mistakes in docstrings and
logs. Missing docstrings were added as well.

Change-Id: Idc61068f36c3a30743fe7eff033d7e8b0d660661
2016-07-08 11:54:04 +03:00
Elena Ezhova
a7ac7ad1cb Decrease default resource expiry age in DevStack setup
DevStack is used mostly for development purposes that
often involve frequent creation and deletion of resources.
That is why having a lot of stale resources like amphorae and
load balancers is quite confusing.

Keeping them around for a week makes sense in production but in
DevStack deployments it is reasonable to decrease expiry age
to 1 hour by default.

Change-Id: I1b78963256467175537caffd46a863da9f5fb018
2016-07-07 05:54:27 +00:00
Elena Ezhova
d73df70d85 Cleanup deleted load balancers in housekeeper's db_cleanup
When load balancer is deleted the corresponding DB entry is marked
as DELETED and is never actually removed along with a VIP
associated whit this load balancer.

This adds a new method to db_cleanup routine that scans the DB for
load balancers with DELETED provisioning_status and deletes them
from db if they are older than load_balancer_expiry_age. Corresponding
VIP entries are deleted in cascade.

Added new config option `load_balancer_expiry_age` to the `house_keeping`
config section.

Also changed the default value of exp_age argument to
CONF.house_keeping.amphora_expiry_age in check_amphora_expiry_age
method.

DocImpact
Closes-Bug #1573725

Change-Id: I4f99d38f44f218ac55a76ef062ed9ea401c0a02d
2016-07-07 03:03:03 +00:00
Jenkins
8a4bbad4d2 Merge "Fixes failover issue with neutron dns integration" 2016-07-07 03:01:28 +00:00
Michael Johnson
4f208c3dc2 Fixes failover issue with neutron dns integration
Neutron has added and removed [1] the dns integration extension
as enabled by default.  This patch tells Octavia to check the
neutron extension list to see if the dns integration extension
is enabled before preparing a neutron port for failover and formating
the request appropriately.

Closes-Bug: #1597451
Change-Id: I15f7cb50642616f87fc8fb5bcb2af1c2e849264d
2016-07-06 23:52:41 +00:00
Jenkins
86549d93c5 Merge "Use correct code version for amphora agent image" 2016-07-06 17:59:07 +00:00
Brandon Logan
f88e06b52f Use correct code version for amphora agent image
Change-Id: I3d5ad4d4904cf5fdf19124ad4d66e6c9cf16a93c
Co-Authored-By: Adam Harwell <flux.adam@gmail.com>
2016-07-01 14:55:19 -07:00
OpenStack Proposal Bot
2fd106ab77 Updated from global requirements
Change-Id: I25c8654f49e9228a6e96eefe453a4fadc7bb4a37
2016-06-30 18:47:48 +00:00
Gregory Haynes
687a972960 Condense amphora-agent-ubuntu in to amphora-agent
Creating separate elements per-distro is an anti-pattern for DIB. This
leads to a lot of code duplication across all the elements being used.
In DIB we try and create facilities to allow elements to easily perform
cross-distro tasks so this isn't necessary.

Change-Id: Ie3018eacfa0e2726449cfb580ded09d027bed349
2016-06-29 17:16:31 +00:00
Gregory Haynes
866dbb3339 Use git.o.o rather than review.o.o for cloning
This will hit the git mirrors which are scaled out much better than
gerrit.

Change-Id: I302ccd093f6cba36846ee5f3d86bc9dbee681e98
2016-06-29 17:15:35 +00:00
Gregory Haynes
aec22a79d3 Modernize amphora-agent element
There are some new facilities in DIB which simplify our element code -
declarative package installs, automated init script installation.

Change-Id: I8b91325999af5cfc9e455c4d6228453d8567c919
2016-06-29 17:06:17 +00:00
chen-li
a1d29a8002 Remove the conditional check for topology
The 'topology' is already been checked in both
    octavia.controller.worker.flows.load_balancer_flows.get_create_load_balancer_flow
and
    octavia.controller.worker.flows.load_balancer_flows.get_post_lb_amp_association_flow

Change-Id: Id6f9ac2a2b880542392581113bcc76550ae41f62
2016-06-27 23:57:35 -05:00
chen-li
e42b3db580 Remove untrue comment message
Octavia is using graph_flow to handle building Amphora if there are
no spares. More details can be find:
    octavia.controller.worker.flows.amphora_flows.AmphoraFlows.get_amphora_for_lb_subflow

The comment message for 'create_load_balancer' in ControllerWorker
is not correct.

Change-Id: I9cfafd96076416c86462b333fe6e6f6abfa3fb97
2016-06-27 03:57:45 -05:00
OpenStack Proposal Bot
d19eb06a67 Updated from global requirements
Change-Id: I6e24c516267473769b05400e859fabb800915745
2016-06-24 03:16:02 +00:00
ptoohill1
ebf88b65fb Updates test with overridden timeout values
Currently there is a test that takes an incredibly
long time because its using the sane defaults
set in code. Over ride these defaults for something much more
reasonable for testing purposes.

Closes-Bug: #1594961

Change-Id: I4232157a0a8c8f0cff9dea77f860efa857442754
2016-06-21 15:26:08 -05:00
OpenStack Proposal Bot
7325db3738 Updated from global requirements
Change-Id: Ifba9422f16e648d64786cf44bbc1482f70bc86db
2016-06-20 16:59:49 +00:00
OpenStack Proposal Bot
0e56b4b51d Updated from global requirements
Change-Id: Ifa076b7c5847fce4cca7e22492b78ff6388e7d61
2016-06-17 14:19:15 +00:00
Jenkins
00c5c7a7f0 Merge "Set device owner for health manager port" 2016-06-17 04:11:44 +00:00
Jenkins
fadc300505 Merge "Use transport_url instead of oslo_messaging_rabbit" 2016-06-16 23:42:40 +00:00
Jenkins
92954f16b7 Merge "Fixed unit test for amphorae backend utils" 2016-06-16 23:42:34 +00:00
Jenkins
6d5aa52160 Merge "Fix alembic migration on MySQL 5.7" 2016-06-16 19:51:42 +00:00
Jenkins
b2d78f815c Merge "Tox: Remove exclude directories that no longer exist" 2016-06-16 19:43:40 +00:00
Jenkins
d3e637487c Merge "Repaired spacing mistake in info message" 2016-06-15 16:11:50 +00:00
Valeria Perelman
c8db2266a9 Fixed unit test for amphorae backend utils
In the function test_get_network_interface_file:
first we check path returned when 'agent_server_network_dir' is defined.

In the tested function the code of taking 'agent_server_network_dir'
is unreachable if there is a non-empty sting in 'agent_server_network_file'.
Hence, to test this case we should first set 'agent_server_network_file'
to None.

Change-Id: Ifb5951111585ee871e1956575d5434e09da8f8cf
Closes-Bug: 1585919
2016-06-15 13:43:18 +03:00
Matt Alline
ea491655cc Repaired spacing mistake in info message
In the BaseNeutronDriver an info message is emitted
when security groups are disabled. In this message
the words "driver" and "will" end up getting
concatenated without a space.

Change-Id: Id531ad9ceebb1e67a2fbe51d6b8c92746ab8d3d0
2016-06-14 12:08:30 -05:00
Stephen Balukoff
2d72ac69df Fix alembic migration on MySQL 5.7
Presently, attempting to run alembic migrations for Octavia on a host
using MySQL 5.7 as the database back-end fails with an error about a
nullable field in a primary key. This commit fixes the offending
migration and introduces a second, similar migration so that any
existing installation using MySQL 5.6 or older also have this field set
to be non-nullable.

Change-Id: Iae3d4f627c1124b1d913aab283e6e19d9c0f0dbb
Closes-Bug: #1590145
2016-06-13 16:55:55 -07:00
Jenkins
0f8e913b3e Merge "Killed existing downgrade rules in migration scripts" 2016-06-13 23:17:08 +00:00
Jenkins
ab9765e876 Merge "Drop support for SQL Schema Downgrades" 2016-06-13 23:16:45 +00:00
Kobi Samoray
fda9f2cd60 Set device owner for health manager port
Devstack plugin creates the health manager port with no device owner.
This is unusual as this value usually has some meaningful value, and
although the port name is quite descriptive, a distro could use the
device owner value to lookup the health manager port.

Closes-bug: #1592007
Change-Id: I8f75c5f70837dbc2f66d3e34c52a39a25614ada3
2016-06-13 17:17:46 +03:00
chen-li
3194618372 Use transport_url instead of oslo_messaging_rabbit
Aviod warning message:
oslo_config.cfg [-] Option "rabbit_hosts" from group "oslo_messaging_rabbit"
is deprecated for removal.  Its value may be silently ignored in the future.

Change-Id: Ibe591f104367e3c3e8d26c7a22be25cf53991599
2016-06-13 02:50:02 -05:00