65 Commits

Author SHA1 Message Date
Tobias Urdin
81687e2ead Convert all class usage to relative names
In Puppet 3 there was a need to use absolute
names to prevent issues. Since Puppet 4 everything
is absolute by default which makes this not needed.

We need to change this everywhere so that we can
revert the pin in [1] that now prevents us from
using the latest version of the puppet-lint check
puppet-lint-absolute_classname_check that properly
checks that we dont use absolute names.

[1] https://review.opendev.org/#/c/697742/

Change-Id: I78b74fbeb08be7234189e4d266412fb7fb7a73c0
2019-12-08 14:58:12 +01:00
Alfredo Moralejo
d22e2f1e81 Start nova services after keystone endpoints are created
nova conductor and scheduler need to discover placement service when it
starts so let's make sure endopints are discoverable before starting the nova
conductor and scheduler services.

Change-Id: Iaf70c646f29a326d39471e562c61d553121fa3ff
2019-08-06 12:54:58 +02:00
Tobias Urdin
ad92772e98 Remove deprecate consoleauth
Change-Id: Ibe2dc7123643600ad823e7b72fa76f4970f5a6d1
2019-05-24 14:12:40 +02:00
Zuul
58800f825e Merge "Remove nova::network::neutron::neutron_url" 2019-05-16 00:25:48 +00:00
Tobias Urdin
af5f353760 Remove deprecated nova::use_ipv6
This param is deprecated and will be removed in [1].

[1] https://review.opendev.org/#/c/658403/

Change-Id: I709f2555e2f5ef01cce0dacb373d56ddd0744a99
2019-05-11 21:22:34 +02:00
Tobias Urdin
41abe5bf6e Remove nova::network::neutron::neutron_url
This parameter is deprecated and will be removed in [1].

Removing this will make nova use the default behavior of
looking up the endpoint for talking to neutron. Deployments
that want to override that behavior can set the
neutron_endpoint_override parameter or the use the
neutron_valid_interfaces parameter to let nova know what
type of endpoint type to use.

[1] https://review.opendev.org/#/c/658400/

Change-Id: Id892bf2a2998cb11a5337f36ff55a05dc1f34601
2019-05-11 20:12:50 +02:00
Lee Yarwood
abdc4d8456 Remove nova_placement and switch scenario001 to use placement
Following on from I5260b4d3478008a76fbe53fdbb716004d11b22df in Stein and
ahead of the removal of the Placement deployment logic from puppet-nova
we can now remove nova_placement from POI. We can also switch the one
remaining job using this class to the puppet-placement based placement
class.

Change-Id: Ia56e403b0f7171ee3583e768404d5f65acd61576
2019-04-24 16:19:14 +01:00
Lee Yarwood
2457c0aca0 nova: Extract placement deployment into a separate class
This change extracts the existing logic to deploy the Nova Placement
service into a separate class. This should allow POI to continue to test
that puppet-nova is able to deploy the service after puppet-placement is
introduced.

Change-Id: I8e54d851bc433527d010b763e4aad54172a17676
2019-02-27 12:36:12 +00:00
Tobias Urdin
5d47105276 Add --debug to nova db sync and increase timeout
Double the timeout from 300 to 600 and add --debug
to see if we can catch what is causing it to timeout.

Change-Id: I7d6557eb8175a56d5a31e9b017af9fd192779862
2018-11-24 19:23:14 +01:00
Chandan Kumar
4454fbf98f Increase the sleep to 30 sec for discover_hosts in Nova
* Earlier the sleep was 10 sec, till that time nova-compute does
  not startup and register itself in these 10 seconds which leads
  to race condition while tempest tests. Increasing sleep will fix
  the issue.

Change-Id: I9ad252eee056762fbaacb68f673d07a24329947f
2018-11-04 06:34:35 +00:00
ZhongShengping
bbb361cf9f Remove keymgr_api_class option in nova.pp
The keymgr_api_class parameter is deprecated, use keymgr_backend instead.

https://review.openstack.org/#/c/515058/

Change-Id: I44da6a0c277a2d4400708270883a5f44348af143
2018-10-17 11:04:59 +08:00
Martin Schuppert
ba4be683d4 Enable nova metadata via httpd wsgi
Support for nova metadata api via wsgi was added in dependency.
This changes so that we test with running via wsgi.

With nova metadata api running via wsgi it is ssl terminated, also
neutron metadata agent does not support an ipv6 address for the
metadata_host, so we need to configure the neutron metadata agent
to connect via https to the nova metadata api.

Related-Bug: 1781405

Depends-On: Ic65736cb0e95c400a728cd699ecf06c6aecff832
Depends-On: I3d572dda2e90b7e24f2f8912d704462b9332d807

Change-Id: I03f4dcb7f40055d802b114ee305323c95975e4df
2018-09-17 12:20:46 +02:00
ZhongShengping
9e35cdc340 Fix debug option in nova
The nova::logging parameter has been deprecated in puppet-nova repo[1].

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

Change-Id: I656a630570ea0c22dbc8dfc67956324a3b40175b
2018-07-10 10:40:05 +08:00
zhubingbing
7ed956b5f0 Switch to www_authenticate_uri for nova
puppet-nova switched to www_authenticate_uri in
[1], update puppet-openstack-integration for the same.

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

Change-Id: I79af66fdbbf2f81a3da4900053d0f2e92b0fcaac
2018-05-11 14:32:51 +08:00
Thomas Goirand
59042b6234 Debian: correctly set placement endpoint
When using Debian's uwsgi setup, we don't use /placement in the URL. This
patch fixes it.

Change-Id: I88aa6894eeb175fe20c6f9f0812cb8a6d747a558
2018-05-08 16:20:09 +02:00
Thomas Goirand
e125dd465a Debian uses uwsgi for nova-placement-api
Do not attempt to configure apache for nova-placement-api in the
case of Debian, as everything is handled by the package that uses
uwsgi instead of apache.

Needed-By: I081542bfca7f5d4f3c0d8493c0b7c90d782a3e1f
Change-Id: I2808e73576fc90c6c9d5c0c1c020998a521924f2
2018-04-19 17:39:23 +02:00
Emilien Macchi
f5878c0c6b vitrage: run missing db-sync and add persistor
- Enable messagingv2 on cinder, aodh, heat, neutron and vitrage.
- Allow to configure notification_topics
- Include persistor, db-sync classes
- Enable Vitrage testing on centos7

Depends-On: I2fadae52aa59e3ee0fe74ddd3973a3e0863adca1
Change-Id: I4bdeb0e000d4903a1543434718b3317e552398e2
2018-01-04 15:36:14 -08:00
Mohammed Naser
a52d9564c0
Refactor usage of RabbitMQ resources
This patch refactors all creation of RabbitMQ resources such
as users and ACLs to a define called openstack_integration::mq_user.

This will make sure RabbitMQ is automatically installed as well,
as there are times where dependencies to RabbitMQ are added to things
like Keystone which break Beaker tests in other repos (but we don't
know they're broken until the change merges).

In addition, instead of setting up dependencies on the tagged services,
we use the anchors provided which should hopefully test against them
as well.

Change-Id: Ib122ddd105529de5e12389cc9db2e4e09ec4ad54
2017-09-15 09:10:25 -04:00
Andrew Smith
c82f5689cb Add support for dual oslo.messaging backend configuration
Introduce configuration parameters to specify the oslo.messaging
rpc or notification backend as one of rabbit, amqp. The default
config is to use rabbit broker for both rpc and notification. Selection
of amqp for rpc will use brokerless qpid-dispatch router.

This patch:
* Adds notification_transport_url parameter across services where needed
* Adds rpc and notification parameters to config
* Adds qdr for rpc amqp1 configuration
* Modifies scenario001 for dual messaging backends
* supports ssl config

Depends-On: Id6ebc4ce8b0ffdb0be92a758dbf89c84c3274725
Change-Id: Ia2a79a2e1482f6f72426bc81c8e6d2a04cb211e3
2017-08-27 10:44:31 -04:00
ZhongShengping
c667a63b8d Fix default_floating_pool option
nova::api::default_floating_pool has been deprecated, Please use
nova::network::neutron::default_floating_pool instead.

Change-Id: Ic8a5296d4d4a754bad28a091493c7627a770e6f1
Depends-On: Ife09171b84e0536b22784875ca4d0d69d16fb7fb
2017-06-30 13:41:16 +08:00
Emilien Macchi
4df2ccaea5 Revert "Stop deploying Nova API in WSGI with Apache"
This reverts commit 067e1a32a93b1aaad94746defe091ebc63b6ff66.

Depends-On: I012ce89554640a39cda5104e62a0f135ec5e92e1
Change-Id: I382b19fa3ea3289b31dad4b50ff29ac1519265a3
2017-06-26 14:51:51 +00:00
Emilien Macchi
feb5de1ad9 nova: use default value for $vncserver_listen
Instead of overriding nova::compute::libvirt::vncserver_listen, just use
the default value, so we can check that nova-compute will bind the
process on 127.0.0.1 and not 0.0.0.0.

It's recommanded for security to use an host IP address, instead of
0.0.0.0.

Change-Id: I724e8485d9fa58c213606ef0b30e2483d8a04802
2017-05-12 08:47:46 -04:00
Alex Schultz
b748e03f16 Add workaround for cellv2 race condition
We've seen on ubuntu that the nova computes are taking a bit longer to
register so we end up running discover_hosts prior to the registration.
This results in a failure when we attempt to use nova. So for p-o-i we
need to add in a sleep to give the computes enough time to register
before the discover_hosts is run. In most down stream consumers of these
modules, this should be handled as part of the overall orchestration
(tripleo/fuel/etc) rather than puppet itself because it's something that
will require cross node orchestration.

Change-Id: I9ad0393a34fc1416a3f4959eb83deb7a9b5aa9af
2017-03-08 09:24:37 -07:00
Emilien Macchi
25372c7dd2 Align stars for Ubuntu Ocata RC1
1. ubuntu: enable placement API in Nova

Until now, we were only deploying Placement API on Ubuntu because
packaging was too old. Though it's becoming a requirement in Ocata RC1
so before our CI breaks when Ubuntu will update their packages, let's
enable it now.

2. ubuntu: enable ::nova::cell_v2::simple_setup

Because we have to.

Change-Id: Id0ef365539a907c131167d745f9ac6eb1cd676fd
2017-02-14 07:26:42 -05:00
Emilien Macchi
7fe3c0e7e4 nova: start compute after keystone endpoints/services
Nova team suggest it to avoid situations where nova-compute don't find
the placement service in the service catalog, which could lead to
compute resource not registred.

Change-Id: I14d7079e3830ca4436780ce690dbee5381a5e454
2017-02-09 10:19:31 -05:00
Emilien Macchi
067e1a32a9 Stop deploying Nova API in WSGI with Apache
It was suggested by Nova team to not deploying Nova API in WSGI with
Apache in production.
It's causing some issues that we didn't catch until now (see in the bug
report). Until we figure out what was wrong, let's disable it so we can
move forward in the upgrade process.

Note: we also need to fix orchestration in provision to make sure
Keystone is ready before creating nova flavors, and other resources.

Depends-On: I1688eae1369f6da2c7084dc3864d19708d15c78d
Change-Id: I4a0d999d5290785a416bbb11953fee7a5028a00b
Related-Bug: 1661360
2017-02-06 07:47:36 -05:00
Emilien Macchi
642af023fe Align the stars
nova: do not install virtlockd and virtlog (workaround)

virtlog and virtlockd services are not idempotent with our version of
Puppet when deploying on Ubuntu.
See https://tickets.puppetlabs.com/browse/PUP-6370

Note: we already had this issue 8 months ago: https://review.openstack.org/#/c/324816
But it was fixed after Puppet 4.5. We'll have to investigate.

Change-Id: I2059b83d055d551872f4b63dc952af775f83c020

Disable the deprecation warnings as errors for puppet-syntax

Recently puppet4 started deprecating ruby 2.0 with the following
commit: e9eda7ed56

One way to work-around this (in the absence of a more recent ruby
version) is to not treat this deprecation warnings as fatal when
doing the puppet syntax check

Change-Id: If31ac681c75c6eb361dbb58682233160b31ae113
Related-Bug: #1660943
Co-Authorized-By: Michele Baldessari <michele@acksyn.org>
2017-02-01 22:36:10 -05:00
Alex Schultz
26617a72ab Run nova cell v2 setup
Cells are being required so we need to setup the default cell.

Change-Id: I119353e5edf343d704ad961b21c5aa466eb7d54d
Depends-On: I591b451197dc3bd0783978f5e3d2b1c830afe54e
2017-01-25 14:00:13 -07:00
Emilien Macchi
b095924bc5 nova: disable setup_cell0
This feature is broken for us now, let's disable it so we can promote
packages in RDO:
https://bugs.launchpad.net/tripleo/+bug/1649341

Change-Id: I8853290d4f63ef4ce5cb77579ad821f15bbb739c
2017-01-13 16:16:30 -05:00
Emilien Macchi
fda89d648e nova: deploy placement database
It's recommended to have a database dedicated for placement service in
Nova. Let's do it.

Change-Id: Ib113bc341582e1053fa89fb531586a04e5b19df4
Depends-On: I139e1549fb4b33e518892a30bf781856d6cb31bc
2017-01-05 18:56:01 -05:00
Emilien Macchi
471217ea1e nova: activate placement API service
Activate a new service in Nova: Placement API
It will be mandatory in the future.
docs.openstack.org/developer/nova/placement.html
Note: testing only on Centos7. Ubuntu package is broken.

Change-Id: I02f5ec6b99f14ec3568934815c45efb83711d706
2017-01-05 04:01:58 +00:00
Emilien Macchi
ddd5a3d20e nova: cleanup from old bits
Cleanup some workarounds for idempotency, the bug should be fixed since
we updated the version of Puppet.

Change-Id: I429b4159dfd26893b5c488e171b26c5bbae53d7d
2016-12-23 14:30:11 -05:00
Alex Schultz
d97ade6e1e Enable cell_v2 setup for p-o-i
This change adds in the ability to test the cell_v2 setup for nova.

Change-Id: I08efa36f5f62ae406ab20e8da77c01fbf3d9b11f
Depends-On: Idfc369e9e17f7d5a30ce4ff52beb604dd4a6ac23
Related-Bug: #1649341
2016-12-23 02:43:34 +00:00
Alex Schultz
b93ecf8bff Align stars to fix ci
1) Pin fast_gettext
The fast_gettext gem 1.2.0 and greater require ruby 2.1 which we don't
have.

2) Pass a generic cpu to qemu instead of trying to pass host-model

We don't need to pass any CPU extensions in the gate, given the
context where we don't use KVM or (proper) nested virtualization.
Truthfully, this also becomes required as there are upcoming changes
in qemu-kvm 2.6.0 which breaks us when trying to pass extensions
while using qemu.

Worth noting that devstack has been setting 'none' [1] as well.

[1]: 1c442eebc8/lib/nova_plugins/hypervisor-libvirt (L42)

Change-Id: I881bd712266ae63b0ac9074ec18bd6a41b946c3a
2016-12-13 14:48:52 -07:00
Alex Schultz
ddcb1b4786 Switch to default_transport_url
The rabbit_host, rabbit_hosts, rabbit_userid, rabbit_password,
rabbit_port and rabbit_virtual_host parameters are being deprecated.
This change updates the p-o-i tests to use the default_transport_url for
the rabbit connection instead.

Change-Id: Icb15ad3b5d75a35afcb685f4ae03c5755031fc3d
Depends-On: I43ac3079da9e52179457ca1a34f4faee60d5617b
Depends-On: Ie63457370ae37ef5af5878b1a97b8bafa80a8189
Depends-On: Ia0c5b5072431bbc186c8b96b7f034e68e9248af3
Depends-On: I43500ac7be4296ea534266fa14ca37fc700b0092
Depends-On: If4dfe8b82518fc4e590731a805ee3115b11f4f47
Depends-On: I00d4782693c1f67b82673624d4d36822c9762303
Depends-On: If83c0f0e61a08061334536399a42767a305966b7
2016-11-30 11:06:33 -07:00
David Moreau-Simard
825eccf220 Fix typo in comment
Change-Id: I961c903be1906b6e4c0a3f7fc95cb1a420693179
2016-09-17 11:09:55 -04:00
David Moreau-Simard
c82d1e02ed Remove nova::memcached_servers
nova::memcached_servers is deprecated and we're already using
nova::keystone::authtoken::memcached_servers instead.

Change-Id: I78fd0a1fa421477129d5c9b2670435da65dce9f4
2016-09-15 21:43:05 +00:00
Emilien Macchi
9e6130572c Configure authtoken with new method
Configure Aodh, Ceilometer, Ironic and Nova authtoken sections with new
method.

Depends-On: I779cb0b76187f742555c5c77f3d6b97d35c6be28
Change-Id: I8f5b7f3d7392bfa4215fccd7defe953857cef3f6
2016-08-25 19:46:24 +00:00
David Moreau-Simard
df8841bd39 Parameterize the libvirt_virt_type parameter so it can be overridden
When running puppet-openstack-integration in certain contexts, for
example outside of the gate, we might want to choose a different
hypervisor such as KVM.
Making it a parameter will allow it to be overridden by hiera
easily.

Change-Id: Ie80740b67561ca21e1e81e9e571e66e8d505d940
2016-08-17 17:17:27 -04:00
Emilien Macchi
23b468acd7 puppet4: ensure rabbitmq is ready before starting nova
Ensure RabbitMQ is ready before trying to start Nova services.
it seems like if RabbitMQ is not ready after 16 attempts, some Nova
services just crash.

Change-Id: Iefbb018ccbecd999a124d760b29a36c9e7e8fcb7
2016-08-12 10:52:59 -04:00
David Moreau-Simard
7aa1cca7d7 In-process token caching is deprecated, use memcached instead
Change-Id: Ia92ca1e56118e8fd625d20848c2554c446ad3dda
Closes-Bug: #1556164
2016-08-05 10:40:16 -04:00
Emilien Macchi
abd6b91e05 scenario002: enable Barbican and Volume Encryption testing
Start testing Barbican for real.

Depends-On: I7a51c1a3baae5fd96b75cc73acd4c8c3e2c4ade5
Change-Id: I034a38bb7adde9f39db99b1a82715ce11e8ca63b
2016-08-05 09:28:45 +00:00
Emilien Macchi
1bbcc95839 nova: remove osapi_v3
osapi_v3 was deprecated and has no effect. Stop using it.

Change-Id: Iadfa43fe740ce317d849f74d585e967cd048d1df
2016-07-09 16:43:42 -04:00
Jenkins
cba6f3e243 Merge "deploy neutron with SSL & IPv6" 2016-06-06 15:35:25 +00:00
Emilien Macchi
84c156e44b deploy neutron with SSL & IPv6
Starting from Newton, VMs can be deployed with a metadata server that
runs with SSL enabled.
This patch aims to activate the tests for that, so we'll have a better
coverage of Neutron in SSL & IPv6 environment.
Note: I could not enable SSl for neutron metadata agent, I found this
bug: https://bugs.launchpad.net/neutron/+bug/1514424 and I'm not sure it
actually works.

Change-Id: Ia5b19d22549fc0c891a46cf47a742b35eaec6276
2016-06-04 21:43:35 +00:00
Emilien Macchi
aa01ef6b24 nova: do not install virtlockd and virtlog (workaround)
virtlog and virtlockd services are not idempotent when running Puppet 4.5.
See https://tickets.puppetlabs.com/browse/PUP-6370

This is a workaround and will be reverted once Puppet is fixed.

Change-Id: Ib6be58ad527ec875107578fa10c3d17e1d65133d
2016-06-04 03:55:22 +00:00
Emilien Macchi
6bcc7756fc Drop usage of deprecated verbose option
Change-Id: Ia4ba77e4ea6e2afe591772cb33cd4ca0080ef6a6
2016-05-19 15:05:17 +00:00
Emilien Macchi
1c8c0d7c03 Align the stars to bump CI to latest Newton
1) scenario001: disable ceilometer tests on Ubuntu
Because we need this backport in UCA:
https://review.openstack.org/#/c/318503/
And we won't have it before... who knows?
Let's disable the tests for Ceilometer on Ubuntu until UCA provides a
packaging update.
Let's also disable Telemetry at all on Ubuntu, since Ceilometer can't be
tested until UCA does the backport.

2) add RDO Newton dependencies repository, so we have paramiko >= 2.0
and have a more stable gate.

3) Update RDO trunk URL to have a very recent URL.

4) Update nova endpoints to match with what is required upstream (2.1)

5) Un-pin Tempest, so we keep testing master (our desire in our master
gate but we pin it in stable branches).

Change-Id: I10dc1beeca3ec47fd4c3a866aa3e1d3bc9d0aa81
2016-05-19 17:04:38 +02:00
Emilien Macchi
4ed8366f07 scenario002/centos7: switch RabbitMQ and OpenStack to IPv6
This is a first iteration of testing IPv6 deployment.
This patch will deploy scenario002 on centos7 by using IPv6 network.

To make it work on Ubuntu, it will require more work, that will be done
in future iterations. During my testing, I found some bugs and did not
investigate because I wanted a first scenario working on v6.

Same for scenario001 and scenario003, they'll be tested later.

Change-Id: Ib28b379645b5a3d351438e0408a9de62b9f48302
2016-03-29 13:54:17 -04:00
Emilien Macchi
3874255b9f scenario002: switch Keystone/Glance/Ironic/Nova to SSL
* Deploy Self-Signed Certificates for both IPv6 & IPv4 deployments.
* Disable IPv6 for RabbitMQ now, for SSL reasons, will be enabled again
  later in a next iteration.
* Deploy Ironic API under WSGI instead of eventlet.
* Switch Glance API, Ironic API and Keystone to SSL.
* Configure Tempest with SSL endpoints when needed.
* Reduce the Ironic tests because of [1].

[1] https://bugs.launchpad.net/ironic/+bug/1554237

Note #1: puppet-swift, and puppet-cinder will require some work to support SSL, so it's not
implemented in this patch.
Note #2: we don't enable SSL for Neutron because of
https://bugs.launchpad.net/neutron/+bug/1514424

Change-Id: Ib2b5289b6f5e82f43cf60dee3152b2c2ddd5a014
2016-03-14 16:34:29 -04:00