778 Commits

Author SHA1 Message Date
Jenkins
972cdba6ee Merge "Make SSH bind to management net only" 2016-03-09 22:26:12 +00:00
Jenkins
eb7a36565c Merge "Replace deprecated LOG.warn with LOG.warning" 2016-03-09 21:52:01 +00:00
Jenkins
5f8eb23857 Merge "Add unit tests for L7Policy API" 2016-03-09 21:19:30 +00:00
Jenkins
357e3375a5 Merge "Add missing unit tests for L7Rule API" 2016-03-09 21:19:24 +00:00
Jenkins
ed152a5b0d Merge "Add maximum number of l7rules per l7policy" 2016-03-09 21:19:17 +00:00
Jenkins
6a97904590 Merge "Adds release notes for Active/Standby" 2016-03-09 21:19:12 +00:00
Jenkins
c4acd4fd30 Merge "Add CA Cert file config option to validate against SSL endpoints" 2016-03-09 21:14:16 +00:00
Bharath M
f4da51c27d Add CA Cert file config option to validate against SSL endpoints
Currently Octavia cannot validate against SSL service endpoints,
which would be keystone, neutron, nova and glance in this case.

This patch adds a config option under nova, neutron and glance
sections to read the specified CA certificate files
for validation. It's slightly different in the case of glance,
because glance session method invocations depend on the endpoint
URL whether it starts with HTTP or HTTPS.

Also added is the "insecure" option for these services in case
the cert validation needs to be skipped.

For keystone, we read config params from keystone middleware. Thus,
instead of defining a new config option, we can make use of it's
pre-defined "cafile".

Barbican is not added because we do not yet have a barbican endpoint
override in it's config. This could be added in the future as a
separate patch, if needed.

Lastly, unrelated to the above, fixes the amphora REST api default
bind_port in octavia.conf

Change-Id: Id57672a3dc7c962b8ee07db0cb7a743041082c66
Closes-Bug: #1552987
2016-03-09 10:15:44 -08:00
Michael Johnson
a9fde42f6d Remove an unused configuration option
This patch removes an unused configuration option
"haproxy_cert_dir" that was flagged as a potential security
risk.

Change-Id: I31af43e8265431767544802451d9b5c297d83d28
Closes-Bug: #1548556
2016-03-09 01:28:15 +00:00
Jenkins
178f13b930 Merge "Update doc to make it consistent with the actual api" 2016-03-08 20:20:34 +00:00
zhang.lei
de41db2755 Replace deprecated LOG.warn with LOG.warning
Python 3 deprecated the logger.warn method, see:
https://docs.python.org/3/library/logging.html#logging.warning
so we prefer to use warning to avoid DeprecationWarning.

Change-Id: I49544d1370e7fe083eb23752227567d8d6f24020
Closes-Bug: #1508442
2016-03-08 14:54:24 +08:00
Stephen Balukoff
f6b527b32a Add unit tests for L7Policy API
Note: The only lines not tested in this have to do with the _lookup
method for manipulating L7 rules. Hence the reason the unit test here
ended up in the l7rule.py test file.

Closes-Bug: #1549003
Change-Id: I0c7325a7a974be51d4c57c3d430cad959a09250e
2016-03-07 15:00:53 -08:00
Stephen Balukoff
cb4df2f84e Add missing unit tests for L7Rule API
Change-Id: I6e86114d6b8bffcdb5ebe705a89ad5f88a4b38ff
Closes-Bug: #1548922
2016-03-07 13:39:38 -08:00
Stephen Balukoff
df5f907185 Fix default_pool_id type in l7policy API
The L7Policy API type checker presently lists the redirect_pool_id
parameter as StringType(). While this is not incorrect, it is more
correct to call it a UuitType().

In addition to the above change, I removed unnecessary string length
checking on string response parameters.

No tests needed updating, as we already have good test coverage of the
validations we do on the redirect_pool_id in the L7Policy API.

Change-Id: I2bf70b51c6bc0949165f8af31c7d47c3407df08b
Closes-Bug: 1549013
2016-03-07 01:25:36 -08:00
Stephen Balukoff
ad3423afca Add maximum number of l7rules per l7policy
For reasons of pure practicality, it is not a good idea to allow tenants
to create arbitrarily long lists of l7rules on their l7policies. After a
brief discussion we decided that 50 rules is good limit, especially
given that we expect most practical uses of L7 functionality to entail 1
to 4 rules per policy at most.

This commit also fixes a minor bug I noticed in the L7 rule API tests,
and cleans up the L7Rule API rule response specification.

Change-Id: I28b8161e85b9e86d4c44be3d48cbf94a3ce631f3
Closes-Bug: 1549100
2016-03-07 01:15:06 -08:00
Michael Johnson
c3bd87a8ee Adds release notes for Active/Standby
This patch adds release notes for a feature added early in Mitaka.

Change-Id: If85d90ff30175011365da77776276a837a9fb252
Implements: blueprint activepassiveamphora
2016-03-07 02:31:18 +00:00
Jenkins
74d706113c Merge "Add pre_test_hook to run gate jobs" 2016-03-06 21:03:28 +00:00
Jenkins
edab092d7e Merge "Updated from global requirements" 2016-03-06 03:47:33 +00:00
Jenkins
2b373f6dfc Merge "Remove swift related content in the sample local.conf" 2016-03-06 03:32:18 +00:00
OpenStack Proposal Bot
8cc63650fc Updated from global requirements
Change-Id: I342089b5e8a09e7e10fec6e935ecc1f515063d9d
2016-03-05 20:48:46 +00:00
Jenkins
343657a093 Merge "Better L7Policy API validations" 2016-03-05 20:23:14 +00:00
Jenkins
a46599118a Merge "Use "--pub-key" instead of "--pub_key"" 2016-03-05 19:39:51 +00:00
Jenkins
3c13912134 Merge "Adds the Cascade Deelete REST API doc" 2016-03-05 19:39:45 +00:00
Jenkins
5430c46c4c Merge "Add release notes for L7 and shared pools" 2016-03-05 19:39:39 +00:00
Jenkins
87ca28d5bc Merge "Fixed make sure to get IPv4 value by awk in sample local.sh file" 2016-03-05 19:12:08 +00:00
Jenkins
8f7a00a925 Merge "Block deletion of pool in use by L7Policies" 2016-03-04 23:36:34 +00:00
Jiahao Liang
8161b885f3 Update doc to make it consistent with the actual api
Closes-Bug: #1552965

Change-Id: I160fb31d40849230010caedd4f79e5cc7c86661a
2016-03-04 14:13:14 -08:00
madhusudhan-kandadai
d013927a7b Add pre_test_hook to run gate jobs
Tweak set of services with plugins to run gate jobs
for Octavia scenario tests.

Change-Id: Ibaecb2e0141e3ff9a19acf4c2b63aeae60e6ed9a
2016-03-04 22:12:34 +00:00
Stephen Balukoff
81c73bd1b5 Make SSH bind to management net only
Our present amphora image create scripts set up the ssh daemon on the
amphora to bind to the wildcard interface (which is the default).
However, this causes problems for anyone who tries to set up a listener
on TCP port 22, since haproxy will not be able to bind to the same IP.

This patch introduces a dhclient post-bind script to the amphora image
to gracefully rebind the SSH-daemon to only the load balancer management
net IP when it comes up on the network, solving the above use case. This
patch has the secondary benefit of making the amphora's SSH daemon only
respond to requests on the management network, which incrementally
increases the security of the amphora.

Change-Id: Iab93cec1f4dc4a2e37ad3cb8a92c132383dcda6a
Closes-Bug: #1551505
2016-03-04 13:58:33 -08:00
Stephen Balukoff
0fac4f2cd9 Better L7Policy API validations
Testing of the API shows that it didn't react well to having
non-essential parameters set to 'None' in update requests. This
patch moves L7Policy validations much sooner in the update process
(ie. we catch them at the API), and otherwise reorganizes most of
the L7Policy validation code into the common validations file both so
that it can be called from various locations in the code base, and
so that we can have an easier time unit testing the validation code.

Closes-Bug: 1550913
Change-Id: I7c14a8cef3d74b2b8d6f4d1ec4f6f9f32f96b9ad
2016-03-04 13:49:14 -08:00
Jenkins
5c8ebf0784 Merge "Add bandit baseline to tox" 2016-03-04 18:31:02 +00:00
chen-li
5844f9494b Remove swift related content in the sample local.conf
Swift is not default enabled by devsatck, and it is not used
by Octavia by default too. The content in the sample local.conf
is useless.

Change-Id: Ie3accb5c1be455f0212fbc07d4f5c26a55529b3c
2016-03-04 23:52:13 +08:00
chen-li
c5c50827ee Use "--pub-key" instead of "--pub_key"
Option "--pub_key" is deprecated and will be removed in novaclient 3.3.0.

Change-Id: Iaa6b12cbc3418dce40f689fb4812670784ea3018
2016-03-04 23:43:20 +08:00
OpenStack Proposal Bot
1421d34b8d Updated from global requirements
Change-Id: I08d778537cf3e9d08959772afe4613307cc4b932
2016-03-04 10:19:27 +00:00
Grant Murphy
61a9894527 Add bandit baseline to tox
Bandit baseline will check the last commit to see if
it introduced any new security problems.

Details of how bandit can be configured for the gate are
documented here:

https://wiki.openstack.org/wiki/Security/Projects/Bandit#Gate_Testing_with_Bandit

Change-Id: I791d897c4efe00bc4c0fd3b9d249e561eeb82acb
Partial-Bug: #1552002
2016-03-03 22:42:15 +00:00
German Eichberger
62cb739f8e Adds the Cascade Deelete REST API doc
Change-Id: I7dbbb95ae327abb24a3d25376020be41375a4609
Closes-Bug: #1551436
2016-03-02 13:16:53 -08:00
OpenStack Proposal Bot
79669c925c Updated from global requirements
Change-Id: Ide800fba3f55d6c60012cc474f4bb0d5534e5c77
2016-03-02 04:03:29 +00:00
Jenkins
9fe1056aa7 Merge "glance: support relying on tags to extract image id" 2016-03-01 23:06:06 +00:00
Ihar Hrachyshka
fb53fe2340 glance: support relying on tags to extract image id
Deprecated amp_image_id option with the new amp_image_tag option.

Also switched devstack plugin to rely on the tag to update the image
used for new load balancers.

Implements: blueprint use-glance-tags-to-manage-image
Change-Id: Ibc28b2220565667e15ca2b2674e55074d6126ec3
2016-03-01 20:43:33 +01:00
Stephen Balukoff
feb7a375fc Add release notes for L7 and shared pools
The previously-merged patches for L7 and shared pools did not include
release notes. This commit adds the missing release notes.

Change-Id: I0c216addf9e85d512fd2fe689db1e819d183b36c
Partially-Implements: blueprint lbaas-l7-rules
2016-02-29 22:48:56 -08:00
Trevor Vardeman
4a1acafa12 Get Me A Load Balancer Controller
Sets up the flows and some new tasks required to create all the
resources needed for an entire load balancer graph.  This includes
updating all listeners on all amphorae (depending on topology), and
plugging networks and setting up the routes and rules on every
amphora for a load balancer.  Luckily this mostly reuses tasks and
flows that were already created, though some new tasks and flows
were created specifically for handling many listeners.

Co-Authored-By: Trevor Vardeman <trevor.vardeman@rackspace.com>

Change-Id: I43a838e80281a37537e179cd8d4768f45e1ca7f1
2016-02-29 17:18:45 -06:00
Trevor Vardeman
c7d6146e59 Get me a Load Balancer API
We need the ability to send a request to the API with a fully configured
load balancer and have it create all the appropriate resources all at once.  It
will support all load balancing topologies, and all different configurations of
a load balancer.

Co-Author: Trevor Vardeman <trevor.vardeman@rackspace.com>

Change-Id: Id3a5ddb8efded8c6ad72a7118424ec01c777318d
2016-02-29 17:08:23 -06:00
Jenkins
e0e6bfca91 Merge "Cascading LB delete" 2016-02-29 22:48:27 +00:00
Jenkins
02b4199f40 Merge "Improved LoadBalancer Delete" 2016-02-29 22:43:21 +00:00
Jenkins
667bb92381 Merge "Remove old SSH specific config options from sample config" 2016-02-28 01:06:03 +00:00
German Eichberger
c22baccd98 Cascading LB delete
Adds a new cascading delete method to the REST API.
When a load balancer is deleted it will alo delete
all associated listeners, pools, memebers, healthmonitors,
and L7 Policies

Change-Id: I0fd88923dc76e573b92d83f68d292ded913b13a6
2016-02-27 10:28:38 -08:00
Adam Harwell
06f50c07ef Barbican Cert Manager fails to correctly parse intermediates
This may be a candidate for stable/liberty backport.

Change-Id: Ia61bbc7099630fa33ca0f1ee4825c2b01244c7f3
Closes-Bug: 1550535
2016-02-27 04:59:06 -06:00
Stephen Balukoff
ae82d21f0c Block deletion of pool in use by L7Policies
After a discussion, we decided that the best user experience to have if
they attempt to delete a pool in use by an l7policy (even an inactive
one) is to block the deletion. This patch implements this behavior.

Change-Id: I8b954ac6e12ec994cb63e5b56eecac7fc67c4e83
Closes-Bug: 1549097
2016-02-26 01:56:22 -08:00
OpenStack Proposal Bot
3ec5d4fa51 Updated from global requirements
Change-Id: I590c4e57f42db1f23c66dccb60fd6cdc59f6ef29
2016-02-26 01:51:44 +00:00
German Eichberger
7ca43d208f Improved LoadBalancer Delete
Removes unecessary and error causing steps from the
Delete LoadBalancer flow.

Change-Id: Ic96c7e44f223f0603dc899c9acf2cb11c57e18de
Closes-Bug: #1547256
2016-02-25 09:04:36 -08:00