Commit Graph

3041 Commits

Author SHA1 Message Date
Carlos Goncalves
3740b67854 Add support for CentOS 8 amphora images
Change-Id: Ic3b1dab418cfd95fe261ca19528ec969ee57610e
2019-12-06 09:24:33 +00:00
Adam Harwell
d115644d3e Adjust for new octavia-lib LB signature
Depends-On: https://review.opendev.org/#/c/697359/
Change-Id: I3f0c47e72978103bb4dd83fe6f3cdd2c0e8e3210
2019-12-04 12:59:39 -08:00
Ann Taraday
d6dc2b9a3e Transition member flows to use dicts
This patch converts the member flows to use the provider driver
data model.
It also stops storing sqlalchemy models in the flow storage in
preparation for enabling jobboard.

Change-Id: Ic15e4311ce244e71b65069359c6c08e49f6b8d00
Story: 2005072
Task: 30810
2019-12-03 22:00:59 +00:00
Ann Kamyshnikova
b9e74630a6 Convert pool flows to use dicts
Story: 2005072
Task: 30809

Change-Id: Id1131589862e4ff68105a50971aa7c67ca15a097
2019-12-03 22:00:48 +00:00
Michael Johnson
7f0abf8b7a Convert listener flows to use provider models
This patch converts the listener flows to use the provider driver
data model.
It also stops storing sqlalchemy models in the flow storage in
preparation for enabling jobboard.

Change-Id: Ic44019b8877f008e6d7a75ceed1b7fd958e051d0
Story: 2005072
Task: 30808
2019-12-03 13:56:05 -08:00
Zuul
a3081d850c Merge "Availability Zone admin API" 2019-12-03 19:14:58 +00:00
Zuul
db34110c12 Merge "Use retry for AmphoraComputeConnectivityWait" 2019-12-03 03:25:02 +00:00
Zuul
f7bc31e128 Merge "Use 2048-bits keys for devstack certificates" 2019-12-02 23:58:04 +00:00
Zuul
bc984d90fe Merge "Stop testing python 2" 2019-12-02 22:24:05 +00:00
Brian Haley
bc94789dc9 Stop testing python 2
Since it's no longer supported past Train, lets stop
running the tests.

Change-Id: Ia30435b3bb19acd1d2f9fe217251c393d4f7480e
2019-12-02 12:08:19 -05:00
Ann Taraday
314b43af9a Use retry for AmphoraComputeConnectivityWait
Use taskflow retry for connectivity wait. [1]

This reqired for redis jobboard implementation as each retry expand
claim for job on worker. This means that worker is proccesing job and
it should not be released for other workers to work on it.

Adopted for v2 flows.

[1] - https://docs.openstack.org/taskflow/latest/user/atoms.html#retry

Story: 2005072
Task: 33477

Change-Id: I2cf241ea965ad56ed70ebde83632ab855f5d859e
2019-11-29 06:51:47 +04:00
Zuul
3c05cce899 Merge "Fix update API when barbican secret is missing" 2019-11-28 09:46:00 +00:00
Zuul
728550103f Merge "Remove unnecessary interface configurations" 2019-11-27 20:32:18 +00:00
Michael Johnson
5af97a248b Fix update API when barbican secret is missing
API update calls were blocked if the load balancer had a TLS
terminated listener that the secret has been removed from barbican.
This patch corrects this problem allowing users to update the
certificate reference.

Change-Id: I96908e6cbdb523f95298aff463a749d15e98e1ad
Story: 2006676
Task: 37322
2019-11-27 18:32:42 +00:00
Gregory Thiemonge
8b6bb936d3 Use 2048-bits keys for devstack certificates
RHEL8 and Centos8 refuse to load certificates generated with a 1024-bits
key because of new security policies. Increasing key size to 2048-bits
fixes certificate generation scripts for these distributions.

Story 2006944
Task 37623

Change-Id: I6d5d39c4cf87ac687355f80ca591c1a611f46f41
2019-11-27 11:49:41 +01:00
Zuul
a308ad28bf Merge "Fix filtering with API tags" 2019-11-27 02:05:18 +00:00
Brian Haley
ce6b2e80e2 Make octavia-grenade job non-voting
Until some python3 upgrade issues are fixed, disable the job
since it's at 100% failure rate.

Change-Id: I29532d955a1d35ad3703af4c18091d4c536b5ad8
2019-11-26 10:21:57 -05:00
Adam Harwell
8ae6bc3697 Availability Zone admin API
Adds the ability for admins to create/manage availability_zones
and profiles for use with upcoming functionality. Works like flavors.

Depends-On: https://review.opendev.org/#/c/694057/
Change-Id: I468d9fdf8c9d0898f9e30f04ac233510a10a53fc
2019-11-22 09:49:17 -08:00
Michael Johnson
7ad61bb451 Remove unnecessary interface configurations
The image building process adds some unnecessary network interface
configuration files to /etc/network/interfaces.d. This element cleans those
out as they are not needed because cloud-init will create the required
configuration file.

Change-Id: If5fbfc34ff0e91608f402811aa2b78c9cbcb00ec
2019-11-20 16:02:42 -08:00
Michael Johnson
a736f98a7f Fix filtering with API tags
When filtering API calls using tags along with other filter parameters
the API could fail with an "Entity has no property" errors.
Also when filtering with tags that contain a comma separated list,
the API would mis-interpret the list of tags as a single string.
This patch resolves both of these issues and adds functional test
coverage for these use cases.

Change-Id: I7153ed9a6214ce352b2ac115001f7f6134d95b39
Story: 2006914
Task: 37559
2019-11-19 15:22:48 -08:00
Zuul
4a5c24ef6f Merge "Stop allowing the deletion of an in-use flavor" 2019-11-19 18:56:06 +00:00
Zuul
58a21efdce Merge "Update flavor guide to be cut/paste friendly" 2019-11-19 06:27:55 +00:00
Zuul
2a60c13863 Merge "Fix controller worker graceful shutdown" 2019-11-18 17:53:52 +00:00
Michael Johnson
033c1e02ff Stop allowing the deletion of an in-use flavor
Currently the API allows an operator to delete a flavor even when it
is in use by a load balancer. This patch corrects this by blocking
the deletion of a flavor that is currently in use by a load balancer.
It also correctly handles load balancers in the "DELETED"
provisioning_status.

Change-Id: Ie6d4f74e36c2fb7cee4e0ff1e198602c5d8394cc
Story: 2006782
Task: 37307
2019-11-18 09:54:03 +11:00
Carlos Goncalves
8178bd37a2 Fix name of VRRP configuration option
The provided etc/octavia.conf file is typically installed by system
packages. It is important to set correct configuration option names and
default values even when commented out.

Task: 37525
Story: 2006891

Change-Id: Ia9da64d76e31422464af9d24b675094f25350f48
2019-11-17 15:43:17 +01:00
Zuul
42bb73d364 Merge "Fix filtering for provider capabilities list API" 2019-11-16 03:24:53 +00:00
Zuul
31139e61c8 Merge "Fix a potential race condition with certs-ramfs" 2019-11-15 13:34:35 +00:00
Zuul
01a3ed55db Merge "Fix listeners with SNI certificates" 2019-11-14 20:43:30 +00:00
Michael Johnson
28c936ec71 Fix filtering for provider capabilities list API
The "Show Provider Flavor Capabilities" would silently ignore
filtering parameters passed into the API. This patch corrects this
such that you can filter the providers capabilities list.

Change-Id: I9a2aa4ed5b4ef60545c60a6d5bd06066ef361a56
Story: 2006817
Task: 37377
2019-11-12 21:39:50 +00:00
Michael Johnson
c389077721 Update flavor guide to be cut/paste friendly
Replacing a UUID with the name of the flavor profile to make
testing cut/paste easier.

Change-Id: Ia114766dab48016a63f8ede9870a02208ee8f3f7
2019-11-11 14:07:55 -08:00
Michael Johnson
1900ee71a5 Fix a potential race condition with certs-ramfs
There is a potential race condition in the start order for the
amphora-agent service and the certs-ramfs service.
This patch configures an explict ordering for the services.

Change-Id: I8e449b19af72d72f6effd52e0a2debb5754a19b3
Story: 2006823
Task: 37396
2019-11-11 13:45:35 -08:00
Zuul
51425dcda6 Merge "Fix typo in doc agent.py->agent" 2019-11-11 17:43:29 +00:00
Colin Gibbons
0682fb977a ipvsadm '--exact' arg to ensure outputs are ints
Currently the keepalivedlvs_query script calls ipvsadm -Ln --stats
to query the local lvs for connection information. If any of these
values grow large enough they will be abbreviated with human-
friendly suffixes (K, M, G) and cause the get_ipvsadm_info func
to raise an exception when it receives a non-integer value from
its command output. By using the --exact argument in addition to
the existing arguments, we can ensure the output is always expanded
numbers, per the ipvsadm man page, and will only ever offer integer
outputs to the get_ipvsadm_info command.

Change-Id: I2e8c0be2221c0c23b752fdf2cdff065cddf830a5
Story: 2006791
Task: 37331
2019-11-06 09:24:30 -08:00
Zuul
43577a6c04 Merge "Fix batch member update error on empty change list" 2019-10-28 13:34:13 +00:00
Michael Johnson
3c05ce1297 Fix listeners with SNI certificates
The single process patch changed the way listeners and load balancers
are deployed inside the amphora. This caused listeners with SNI
enabled to load all of the certificates for all of the TLS enabled
listeners on a load balancer.
This patch corrects that by configuring each listener with a
specific list of certificates.

Change-Id: I2f3c7ab4137dbd84d77a6a6b675975af406249d0
Story: 2006758
Task: 37252
2019-10-25 14:15:48 -07:00
Gregory Thiemonge
215c4c2284 Fix controller worker graceful shutdown
Fix an issue that prevents graceful shutdown of controller workers.

cotyledon.Service.terminate function is by definition the graceful
termination function and doesn't have any 'graceful' optional boolean
argument (https://cotyledon.readthedocs.io/en/latest/api.html).

Because of this error, message_listener.wait() was never called in the
consumers' termination functions, so flows could be interrupted before
completion and could leave resources such as load balancer in a
PENDING_* provisioning state.

By default cotyledon.Service terminates the server after a timeout if
the worker could not shutdown itself gracefully. The default value
for the timeout is 300 seconds (set in devstack plugin) and can be
overriden using the graceful_shutdown_timeout setting in octavia.conf
The default value will be updated to a lower value when work on
persistant taskflow will be merged.

Story: 2006603
Task: 36770

Change-Id: I3f776bd018246897c9a889699a2d0ecbbfbb7098
2019-10-24 14:27:35 +02:00
Ajay Kumar
935567b84c Fix typo in doc agent.py->agent
This patch fix the wrong description of agent_server_cert

Change-Id: I79979198e6cb4ee8c6ad49a7b9bd8e4093cf1934
Story: 2006612
Task: 36797
2019-10-24 14:27:27 +05:30
Zuul
93a7116b54 Merge "Fix some plug.py unit tests that broke on OSX" 2019-10-23 21:27:09 +00:00
Zuul
6a15e14d25 Merge "Allow IPv6 health network in devstack" 2019-10-23 09:20:33 +00:00
Zuul
d775d95fb9 Merge "Do not set log format when 'no log' is set" 2019-10-23 08:40:56 +00:00
Zuul
19789839f6 Merge "[Trivial]Add missing ws between words" 2019-10-23 05:33:18 +00:00
zhufl
28694f0233 [Trivial]Add missing ws between words
This is to add missing ws between words in help messages.

Change-Id: Iedb0e9f5414a9fd82e189c71e565ac0771a1482d
2019-10-22 11:51:43 +08:00
Zuul
6b58e66868 Merge "Add Gentoo platform detection in diskimage-create/diskimage-create.sh" 2019-10-22 03:28:58 +00:00
Adam Harwell
01dfb8ffaf Fix batch member update error on empty change list
If the list of changes was empty, the worker would fail to fetch the
pool because it was retrieved implicitly from one of the changed
members. Pass it explicitly instead, and also short-circuit on NOOPs.

Story: 2006719
Task: 37090

Depends-On: https://review.opendev.org/#/c/688546/
Change-Id: I161a522abad4a2aa521ea46cb1065c5b05a2cd2e
2019-10-21 22:51:27 +00:00
Adam Harwell
ca4b3d379d Fix some plug.py unit tests that broke on OSX
Mocks were done slightly incorrectly for pyroute2, correct this and add
a missing mock for os.path.isfile since it only coincidentally worked.

Change-Id: Id178784ebb4a9da348d295201fd6aa715c5b4abe
2019-10-21 22:47:54 +00:00
Adam Harwell
2c6d8fc5ec Allow IPv6 health network in devstack
This allows the Octavia devstack plugin to use IPv6 for the service
endpoint as well as for the lb-mgmt-net.

Co-Authored-By: Michael Johnson <johnsomor@gmail.com>

Change-Id: I87917440565ea953ec0d762a7e219d912c56c418
2019-10-21 22:47:28 +00:00
Zuul
ae9895adcc Merge "Fix log offload file permissions in CentOS devstack" 2019-10-21 21:37:37 +00:00
Zuul
5979f2c63c Merge "Delete the periodic Fedora 28 amphora image job" 2019-10-21 18:23:44 +00:00
Michael Johnson
7fcef817ec Fix issues with unavailable secrets
Previously, if a secret became unavailable in barbican, the user saw
a generic error raised from the barbican client and was unable to delete
load balancer resources. This patch corrects both of those issues.

Change-Id: I97bd1b2a97a44d0a0566ae56167fa4f2e503ee2d
Story: 2006676
Task: 37012
Task: 37077
2019-10-19 01:09:07 +00:00
Zuul
2f1987ccbe Merge "Revert "Clean up requirements.txt from tox.ini"" 2019-10-19 01:02:47 +00:00