15 Commits

Author SHA1 Message Date
Takashi Kajinami
c25cf05431 RabbitMQ: Override hostname to ensure correct IP version
Change fe83b5488d33b75be6a9bba97faa8ddd69210973 enforced usage of IPv6
in case the scenario requires IPv6, but this causes the following
failure during rabbitmq startup, because hostname is sometimes resolved
to IPv4 address in CI.

```
ERROR: epmd error for host np0033504771: badarg (unknown POSIX error)
```

This makes sure that hostname env is set according to IP address
version.

Change-Id: I4d876200f0fd8b2b84d893f243fe5615352ef11d
2023-03-19 21:58:13 +09:00
Takashi Kajinami
fe83b5488d Refactor usage of puppet-rabbitmq
This refactors current usage of puppet-rabbitmq. Details follow below.

- the rabbitmql class supports the ipv6 parameter which injects
  the required definitions to use IPv6

- ssl options are ignored if rabbitlqm::ssl is false

- we can use native parameters to define the bind address

Change-Id: Id33b56f84b04f0086f0e19e1938f36d109e4a188
2023-03-14 00:02:16 +09:00
Takashi Kajinami
2f1d35f59c Replace legacy facts and use fact hash
... because the latest lint no longer allows usage of legacy facts and
top scope fact.

Change-Id: I25d27829f66c4ee56e2755579dad21530ef09c3a
2023-03-01 13:30:01 +09:00
b44d0bdd5a Add CentOS8 support and jobs
- scenario001 and 004 will be running without ceph
  until ceph repos get available for CentOS8
- scenario003 will run not run with linuxbridge until next CentOS
  minor version as it has issues:-
    - https://bugzilla.redhat.com/show_bug.cgi?id=1720637
- Add Puppetfile_centos7 to have different puppet modules
  as compared to other distros. Currently only puppet-mysql
  needs to be kept pinned for centos7 as newere mariadb version
  is required to remove the pin, CentOS8 and ubuntu have required
  mariadb version so pin is removed. So automatic updates of puppet
  modules will not be applied for CentOS7 as those jobs are going to
  be removed in coming months.
- check for rdo_dlrn url existence only for RedHat distros.

Change-Id: I98fc088cd87c1412544f9590ce7a925b413297e2
2019-12-20 10:18:18 +00:00
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
Cody Herriges
9b49dc4dd4 Disable rabbitmq repo on non-SSL deployments
This commit copies the repos_ensure parameter to the rabbitmq class
  declaration for situations where SSL is diabled.

  This needs to be done to keep consistency across all scenarios.

Change-Id: I8ce0316c4b7dcff6c4cfbd0dbcf61340f843ca84
2016-08-29 10:34:34 -07:00
Emilien Macchi
c3d8e680a4 Align the stars to bring our CI back alive
This patch squash 2 commits to bring our CI back:

1) Pin Tempest to latest working commit:

https://review.openstack.org/#/c/297511/ broke us, we need to pin
Tempest to keep rolling.
This will be reverted once we sort things out.

2) rabbitmq: install packages from distro repos

Stop installing RabbitMQ from rabbitmq.com repository.

rabbitmq.com is providing a terrible and frustrating experience of
packaging repository:
* rabbitmq.com is very often down and we have to recheck our jobs
  everytime it happens.
* packaging signature is currently broken, see [1].

From this patch, we'll deploy RabbitMQ using distro repositories.

[1] https://github.com/puppetlabs/puppetlabs-rabbitmq/pull/476

Change-Id: I1e79c04d7cd796493ae56423b70626e8841cf284
2016-05-25 14:09:45 -04:00
Emilien Macchi
e22fe0ed9b rabbitmq: use $::package_provider fact
Switch package_provider to use $::package_provider fact present in
puppetlabs-stdlib.

It will avoid any collision later.

Change-Id: I2df1bff1b911c22eed8a2f6b9c0ab38edda43156
2016-04-12 19:38:39 -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
Emilien Macchi
a0c3df6eae scenario002: deploy RabbitMQ with IPv6 binding
* Configure RabbitMQ to bind on IPv6 (scenario002 only).
* Configure OpenStack service to connect with an IPv6 on
  RabbitMQ (scenario002 only).

Change-Id: I0e4ab4b03d7b1c7bb47c55a751bc04f29292a621
2016-03-01 14:32:47 -05:00
Emilien Macchi
4a81d1da98 refactorize SSL configuration
Add config.pp file so we can enable common features (ssl, ipv6, ...)
more easily.
Also move the logic into config.pp so we avoid dupplicated code.

Change-Id: Ib7993ad1fbabfc22dc4ee22f72671303190e39e2
2016-03-01 14:32:08 -05:00
Emilien Macchi
2be3e3f9d2 scenario002: deploy RabbitMQ with SSL
* Manage Puppet OpenStack CI CA and create a common certificate,
  auto-signed.
* Configure RabbitMQ to activate SSL on scenario002
* Configure OpenStack services that run on scenario002 to connect to
  RabbitMQ using SSL protocol.

Change-Id: Ic435078472ba4e0e0eaf04a64e5bcb7aabba7b3d
2016-02-29 14:37:56 -05:00
Emilien Macchi
2490ea9b4c Revert "rabbitmq: make sure RabbitMQ resources are created before running OpenStack"
This reverts commit 7a3c110294c464ef0728cf541a53d208dbc5dcf0.

Change-Id: I259249b8074a41ba4acb53439fab0016954231f3
2016-01-11 23:16:54 +00:00
Emilien Macchi
7a3c110294 rabbitmq: make sure RabbitMQ resources are created before running OpenStack
OpenStack services need RabbitMQ ready before starting, otherwise we
will randomly have this issue:
(...)closed the connection. Check login credentials: Socket closed

Change-Id: I55017c6a3eb91e96136c0928045136f423866aa2
2016-01-05 23:05:03 +00:00
Emilien Macchi
e1c20c9b1f Create manifests directory for common bits
Change-Id: Ibf7d3aa962e2e0727f0593f70186521602c48ca6
2015-11-18 15:09:18 +00:00