192 Commits

Author SHA1 Message Date
Carlos Goncalves
cb2c5fc1a5 Fix grenade job to clone Octavia from base branch
The job was cloning Octavia always from stable/queens while all other
enabled services were being cloned from $BASE_DEVSTACK_BRANCH.

http://logs.openstack.org/64/602564/15/check/octavia-grenade/39f9e96/ \
logs/grenade_localrc.txt.gz

http://logs.openstack.org/64/602564/15/check/octavia-grenade/39f9e96/ \
logs/grenade.sh.txt.gz#_2019-01-02_13_27_29_587

Change-Id: I3bc85588c4cac6bba24648f2793940fddc17f4a2
2019-01-02 19:00:33 +01:00
Carlos Goncalves
9bb4c5c1c4 Set same debug log level as per DevStack local.conf
Change-Id: Idbfad56a01aecb15a7508378158e6f07ea77e97b
2018-12-19 10:55:42 +01:00
Zuul
5848b26e47 Merge "Add auditing support to the Octavia API" 2018-12-13 14:02:25 +00:00
Michael Johnson
256a3f9ce8 Prepare for new multi-node jobs
This patch makes the following changes in preparation for the new
multi-node gates:
1. Resolves some issues in the devstack plugin in multi-node mode.
2. Removes the legacy non-voting multi-node gates and playbooks.
3. Removes the lxd legacy playbook as the jobs were removed in a previous
   patch.

Change-Id: I3fb303a67cc66ec44a4ef4d09a16ed6470cbbaff
2018-12-12 08:52:20 -08:00
Michael Johnson
e60cd189fb Add auditing support to the Octavia API
This patch adds Cloud Auditing Data Federation (CADF) auditing support to the
Octavia API. This is implemented using the keystonemiddleware audit filter.

Change-Id: I87a7e15171dfaf28b6ed97ca71d4423d18fbdbea
2018-12-11 23:32:58 +00:00
Zuul
37622044ad Merge "Fix devstack plugin for /var/log/dib-build exists" 2018-12-07 22:53:57 +00:00
Michael Johnson
1e4940f37e Fix the grenade gate
After the upgrade Apache seems unable to reach the Octavia API.
It appears that the devstack plugin.sh enables the octavia-wsgi site,
but fails to restart the Apache server to pick up this change.

This patch corrects that by restarting Apache after any Apache site
changes.

Change-Id: I972c7d7934268131765ce5eebab1d81cc326fd49
2018-12-05 15:21:02 -08:00
Michael Johnson
c62031f909 Fix devstack plugin for /var/log/dib-build exists
The recent change to log the DIB output assumes the /var/log/dib-build
directory does not exist. This is not the case on dev systems.
This patch now handles the case where an old /var/log/dib-build exists.

Change-Id: If4116e2c9b13db64b07ffbc3fd6af13e2373b860
2018-11-21 21:16:54 +01:00
Zuul
c07612aba1 Merge "devstack: Define packages for (open)SUSE" 2018-11-19 00:52:10 +00:00
Ian Wienand
5bec6f70c2 Redirect disk-image-builder logs, make verbose
Update the diskimage-create.sh to have a "-l" option to pass into
dib's "--logfile" option.  In the devstack job, use this to redirect
the dib output to a separate logfile.  Turn on verbose logging by
default for this log.

Copy this in the v1 jobs.  v2 jobs are covered by a similar change in
octavia-tempest-plugin: I5bc0d9a3b071733cbe31d618f7236a3c2285b3e5

Depends-On: https://review.openstack.org/612865
Change-Id: Ie639af4266152d4626f8312b1849deeba5048348
2018-10-30 11:39:12 +01:00
Michael Johnson
e644b9fdce Remove deprecated API settings
We moved "bind_host", "bind_port", "auth_strategy", and "api_handler"
into the api_settings section in the configuration file. These settings
have now reached the end of their deprecation cycle and are being removed.

Change-Id: I323a7bdceae5a8d0e3025800beaf1d0a13c12ef8
2018-10-18 19:42:21 +00:00
Michael Johnson
951f018efe Pass through DIB_LOCAL_ELEMENTS from localrc
This patch allows us to specify special DIB elements via the localrc.
An octavia-tempest-plugin patch[1] linked to this will use this
setting in the gates to configure DIB to use the infra package mirrors.

[1] https://review.openstack.org/#/c/601332

Change-Id: I7444e8941c7175d92c50f1714a87b4181b983829
2018-09-24 16:35:33 -07:00
ckji
756a17ce3a Updates README-Vagrant.md to use OSC commands
Change-Id: I255520474a38147722bc75f868ef6c7fccbcba97
2018-09-17 16:58:08 +08:00
Michal Rostecki
06142d11f9 devstack: Define packages for (open)SUSE
Add devstack/files/rpms-suse/octavia file with a list of
dependencies than need to be installed on (open)SUSE to create an
image based on Ubuntu by diskimage-builder.

Change-Id: Iae54c0342f9040ba13eae9ad36426baeb98dd392
Signed-off-by: Michal Rostecki <mrostecki@suse.de>
2018-09-04 13:53:09 +02:00
Carlos Goncalves
88649d9547 Fix DIB_REPOREF_amphora_agent not set on Git !=1.8.5
Setting DIB_REPOREF_amphora_agent with git -c does not work. The option
-c is for passing key-value configurations and git -C option was
introduced in git v1.8.5 which some distros do not include (e.g. CentOS
7.5 ships with git v1.8.3.1). As a result, DIB_REPOREF_amphora_agent is
not set on any git version !=1.8.5.

The alternative that works across all tested Git versions is: git
--git-dir=/.git sub-command

Change-Id: I41993fa0f8bfde4b7ca9509872de5b54e2ed5680
Story: 2003067
Task: 23114
2018-07-25 08:38:57 +00:00
Carlos Goncalves
fa7308554a Allow setting load balancer topology in Devstack
Load balancer topology options are SINGLE and ACTIVE_STANDBY. We default
to SINGLE as it is the default in-code too.

Change-Id: Id5af2397122ca3c031e9a5becccfcdd75506876f
2018-07-10 14:05:58 +00:00
Carlos Goncalves
13eab152fb Add grenade support
Zuul v3 does not yet offer native grenade base jobs. Workaround it by
creating a legacy grenade-devstack-octavia playbook.

Change-Id: Ib81557ee75ff2ea365ca8403dcfe6e6724657f75
2018-06-14 09:43:04 +01:00
Kobi Samoray
77b6e1bf56 Octavia devstack plugin API mode
For API drivers which only use API service, devstack needs:
- To skip creation of o-oh0 interface, as there's no amphora VMs
- Create endpoint, roles

Change-Id: I168b9ccc968a680ed2db326435f7523c35e7a020
2018-05-30 09:48:16 +03:00
Michael Johnson
6e2668dbff Increase devstack neutron secgroups quota to 100
When running tempest with a high concurrency the service account
will run out of security group quota. This patch increases the
service account security group quota to 100 when using the octavia
devstack plugin.

Change-Id: I1483745963b858463c45db7e85438920f90ca447
2018-05-18 17:01:11 -07:00
Kobi Samoray
931a531317 Devstack plugin: Check for IPv6 support
Some Neutron backends lack IPv6 support.
Address failures with such networking platforms.

Change-Id: If6c9d79bf4c8a2626902de471ff914353c824ea4
2018-05-10 15:21:53 +03:00
Michael Johnson
f935a51fe4 Switch to ubuntu-minimal for default amphora image
Previously we were using the "ubuntu" diskimage-builder base element as the
default base OS to build the amphora image.
The "ubuntu" element is based on the ubuntu cloud image. This image includes
packages we do not need for the amphora image. At this point it's not clear
that Ubuntu will ship an 18.04 LTS cloud image in the format the "ubuntu"
element requires.
This patch switches the default Ubuntu amphora image to build with the
"ubuntu-minimal" diskimage-builder element.

This patch also moves the amphora agent into a virtual environment inside
the amphora.

It also sets up support for Ubuntu 18.04 (bionic beaver) and HAProxy 1.8.

Change-Id: I84a85ca1363bce2e0f13da64540ec7ba3575e818
2018-04-16 18:07:31 -07:00
Michał Dulko
f66f08ff9c Install client from pip if not in LIBS_FROM_GIT
It shouldn't be a requirement to put python-octaviaclient into
LIBS_FROM_GIT in local.conf. This commit makes Octavia's DevStack plugin
install it from pip if it's not present in LIBS_FROM_GIT.

Story: 2001830
Task: 12587
Change-Id: I37014a766e27f6117c96aef976fa1e0b5a9ca031
2018-04-12 11:45:29 +02:00
Michael Johnson
ae1ab563e5 Move o-hm0 dhcp config under /etc/dhcp
Apparmor will block dhclient from accessing the o-hm0 configuration file
under /etc/octavia. This patch moves our dhclient.conf under /etc/dhcp/octavia
to allow the dhclient to access the file when apparmor is running.

Change-Id: I3153f8bd9237470f406a9edeb4e2a0767fc747b8
Story: 1673269
Task: 5434
2018-04-10 09:55:45 -07:00
Zuul
b07faa03e0 Merge "Add a devstack variable for legacy RBAC" 2018-04-09 07:12:10 +00:00
Vadim Ponomarev
2a94e10f3a Change used keystone token provider in devstack
This patch changes used keystone token provider from 'uuid' to 'fernet'
in devstack creation script new-octavia-devstack.sh, because the uuid
type deprecated. Changes in keystone:
I76d5c29f6b1572ee3ec7f2b1af63ff31572de2ce

Change-Id: Ia42d8afe62413aa086d9a3751171d42042a700a8
Blueprint: removed-as-of-rocky
Story: 2001732
2018-03-25 12:15:48 +03:00
Michael Johnson
949261f342 Add a devstack variable for legacy RBAC
This patch adds the OCTAVIA_USE_LEGACY_RBAC variable to our devstack plugin.
When set to True it will install the legacy Admin/Owner RBAC policy.json file
for the devstack Octavia install.
This is useful for tempest testing the neutron-lbaas proxy driver that passes
neutron LBaaSv2 API requests through to the Octavia API.

Change-Id: I5f112131b9c57e394349f29fa1b675643784b867
2018-03-16 11:43:27 -07:00
Zuul
be26842229 Merge "Split up extra init steps and start processes" 2018-03-16 10:27:04 +00:00
Adam Harwell
53dc41d06f Devstack plugin image build option quoting fix
Options that are unset should not use '' as their default because it
actually puts them literally into the command which will cause it to
skip parsing args after any empty quotes.

Change-Id: I54c0170bad28adb26df87024bd16f31827702f1e
2018-03-14 05:13:37 +00:00
Zuul
fbd48859a9 Merge "Rename q- to neutron- services" 2018-03-13 01:21:47 +00:00
Daniel Mellado
6eb4c1f332 Rename q- to neutron- services
We were using neutron lib/neutron-legacy on our devstack plugin as we
were enabling legacy services. This commit changes it so we rely on
lib/neutron.

Co-Authored-By: Carlos Goncalves <cgoncalves@redhat.com>

Change-Id: I159dd4b371b870dc752fa01f738a2910263e3918
2018-03-12 10:48:26 +01:00
Carlos Goncalves
303b339836 Split up extra init steps and start processes
By spliting them up, we can now start Octavia without going through the
extra initialization steps, which are not idempotent (or meant to be
anyway), exiting with error code and preventing from continuing the
so desired start process of Octavia. The split-up will allow Grenade to
call out octavia_start solely for the purpose of starting Octavia
services.

This patch also fixes awk from matching itself when stopping Octavia.
This keeps awk from showing itself in the output, grabbing only relevant
PIDs. Otherwise awk PID is added to PID list resulting in kill command
exiting with error as awk is no longer running. This is equially
important and required grenading Octavia, else an exit error would be
thrown.

Change-Id: I1b53076953eaf1a6c6934a10439d00977c875fec
2018-03-11 18:26:52 +00:00
Adam Harwell
1020a3bceb Fix kvm-centos.7 gate
Somehow it was pulling in barbican-tempest-plugin incorrectly, and
didn't have image size set right for centos.

Also fix the devstack plugin to size the flavor correctly based on the
image size variable.

Change-Id: I724f5064309d07fe05f86fcf2c7a488d9319e54c
2018-03-08 12:54:37 -08:00
Bar RH
bf9dffc815 Update configuration samples (QoS)
Enable QoS support.
We rely on Neutron's devstack plugin script to set the correct
configuration.

Change-Id: Idd99af81cafd4c8fc541ca8664c844b5473bb39a
2018-02-26 18:31:30 +00:00
Nir Magnezi
662485e2d2 Update devstack plugin and examples
The devstack plugin should only use the openstackclient to
interact with OpenStack services via CLI.

This patch fixes both the devstack plugin and the examples.

Task: 5678
Task: 5680
Task: 5698
Story: 2001183

Change-Id: Id30ab0484edb350f0a424a0fc90c381357614b8e
2017-11-26 23:20:33 +02:00
Vu Cong Tuan
b2d5604203 Remove SCREEN_LOGDIR from devstack
SCREEN_LOGDIR has already been deprecated [1]
[1] https://review.openstack.org/#/c/499186

Change-Id: I0f2100008cb866da99e117cab6b41c872e2e8b73
2017-10-05 17:08:57 +07:00
Luis Tomas Bolivar
3e3416113e Ensure DIB_REPOREF_amphora_agent is set
This patch ensure that the proper git format is used based on
the git version, i.e., if the git version is below 1.8.5, it
forces to use git -c -- since -C option is not available.
Otherwise it used git -C.

Change-Id: I9522765fae633f096c095a60f470467c0ff221c0
Story: 2001204
Task: 5709
2017-09-19 17:05:35 +02:00
Omer Anson
ca69044222 devstack: Allow 3rd party neutron backends deployment
In plugin.sh, there is only support for neutron reference
implementation, with either openvswitch or linuxbridge agent.

This change allows external devstack plugins to define hooks needed in
devstack.

Change-Id: I1d5797a1becb4201d76c0e522f84dad09804c5b6
Closes-Bug: #1712077
2017-08-24 09:25:35 +03:00
Michael Johnson
aa5552e0d4 Fix octavia logging to be more friendly
Configures the octavia devstack plugin to use devstack's setup_logging
function to standardize the octavia gate log format.
Octavia processes will now print the version string to the logs on startup.

Change-Id: I094636a983fb0bcac2a1a1445b3487eac88a5e75
Closes-Bug: #1694588
2017-08-12 11:57:42 -07:00
Michael Johnson
6e71722bc9 Update devstack readme.md
Change-Id: I34437efccab1f1f4e183d6cf322207c34b1c49aa
2017-08-09 12:22:45 -07:00
Jenkins
73d4f356e4 Merge "Remove key_path from devstack plugin" 2017-07-20 23:15:08 +00:00
Nir Magnezi
2dd53b5bba Remove key_path from devstack plugin
Removing key_path, because it is not being referenced
from anywhere in the code.

Change-Id: I5d7255d7a5cff33d69206a8373aade7353539865
2017-07-20 15:30:03 +03:00
Jacky Hu
099921c14c Add placement service to new-octavia-devstack.sh
As a followup to I273c3c8299ee329bed425f3e7cd4b583ed1187a4,
adding nova placement services which are mandatory starting Ocata.

Change-Id: I8a4474a52766f01086501564c52e4fc3a2ced7dc
2017-07-04 16:59:57 +08:00
Jenkins
4a9beeb885 Merge "Enable uwsgi support for octavia devstack" 2017-06-29 03:19:33 +00:00
Jenkins
dac945260d Merge "Change default vagrant box to xenial64(16.04)" 2017-06-29 00:51:13 +00:00
Michael Johnson
55305c5f6c Enable uwsgi support for octavia devstack
The Pike goal [1] has changed to requiring uwsgi for projects.
This patch enables octavia to run under uwsgi.

[1] https://governance.openstack.org/tc/goals/pike/deploy-api-in-wsgi.html

Change-Id: I4f5bafe8d194b23a55cb4de0ba42ad7b6eb7a6cc
2017-06-28 15:59:00 -07:00
ckji
79a7698bfd Fix nova secgroup-add-rule which is unavailable
Nova secgroup-add-rule is not available anymore.
Change it to 'openstack security group rule create'.

Change-Id: I43befb0635ea4f8978b0d863722599cff3863a03
2017-06-28 15:17:04 +08:00
ckji
a7256e15ed Change default vagrant box to xenial64(16.04)
Because current devstack don't support ubuntu 14.04. Change default
vagrant box from trusty64 to xenial64.

See:
https://docs.openstack.org/developer/devstack/#install-linux

Change-Id: Id49167e6d60babcc6145c0f4cbd5b15231d12c88
2017-06-28 11:29:49 +08:00
Michael Johnson
335c00ac18 Add RBAC enforcement to quotas v2 API
This patch adds policies and enforcement to the Octavia v2 API for quotas.

Change-Id: I5f2fa38973fce595ea3ec03cdff924336e0e71c8
Partial-Bug: #1690481
2017-06-20 18:52:05 -07:00
Michael Johnson
0ce46fe8d0 Add RBAC enforcement to Octavia v2 API
This patch adds policies and enforcement to the Octavia v2 API for
load balancers and listeners.  Child patches will add the rest of the API.

In this patch I also correct some improper functional tests.

Change-Id: Id8a2d15c117c54bd45fc8bb76bf71aff1b3c8fe9
Closes-Bug: #1690481
2017-06-20 13:43:47 +03:00
Michael Johnson
be27e4f0e8 Remove deprecated signing_dir config setting
keystonemiddleware has deprecated the "signing_dir" configuration
option [1].
This patch also removes reference to it from octavia.

[1] https://review.openstack.org/#/c/391405

Change-Id: Idda46ab1459584eafd58097ec42b9f0fcea41759
2017-06-12 17:04:53 -07:00