keystone only puppet deployment
While evaluating new versions of a base operating system it is handy to have a very minimal deployment. * configure_[images,networks] turned off * tempest api tests only for keystone Match TripleO's scenario000 deployment: https://bit.ly/3tBNBor Change-Id: Ie7ebee89b1ca00ca2fc50b7d1cbd2d8364daca46
This commit is contained in:
parent
19de508641
commit
e8fe5bae37
76
README.md
76
README.md
@ -31,6 +31,7 @@ Description
|
|||||||
|
|
||||||
OpenStack Infrastructure is deploying four jobs per supported Operating System
|
OpenStack Infrastructure is deploying four jobs per supported Operating System
|
||||||
(Ubuntu and CentOS): scenario001, scenario002, scenario003 and scenario004.
|
(Ubuntu and CentOS): scenario001, scenario002, scenario003 and scenario004.
|
||||||
|
For CentOS it is also deploying a job(scenario000) with very tiny installation.
|
||||||
|
|
||||||
OpenStack services are balanced between four scenarios because OpenStack
|
OpenStack services are balanced between four scenarios because OpenStack
|
||||||
Infastructure Jenkins slaves can not afford the load of running everything on
|
Infastructure Jenkins slaves can not afford the load of running everything on
|
||||||
@ -38,43 +39,44 @@ the same node.
|
|||||||
One manifest (scenario-aio) is used for people who want to [run a simple All-In-One
|
One manifest (scenario-aio) is used for people who want to [run a simple All-In-One
|
||||||
scenario](#all-in-one).
|
scenario](#all-in-one).
|
||||||
|
|
||||||
| - | scenario001 | scenario002 | scenario003 | scenario004 | scenario-aio |
|
| - | scenario000 | scenario001 | scenario002 | scenario003 | scenario004 | scenario-aio |
|
||||||
|:----------:|:-----------:|:-----------:|:-----------:|:-----------:|:------------:|
|
|:----------:|:-----------:|------------:|:-----------:|:-----------:|:-----------:|:------------:|
|
||||||
| ssl | yes | yes | yes | yes | no |
|
| ssl | yes | yes | yes | yes | yes | no |
|
||||||
| ipv6 | centos7 | centos7 | centos7 | centos7 | no |
|
| ipv6 | centos8 | centos8 | centos8 | centos8 | centos8 | no |
|
||||||
| keystone | X | X | X | X | X |
|
| keystone | X | X | X | X | X | X |
|
||||||
| glance | rbd | swift | file | swift+rgw | file |
|
| glance | | rbd | swift | file | swift+rgw | file |
|
||||||
| nova | rbd | X | X | rbd | X |
|
| nova | | rbd | X | X | rbd | X |
|
||||||
| neutron | ovs | ovs | linuxbridge | ovs | ovs |
|
| placement | | X | X | X | X | X |
|
||||||
| cinder | rbd | iscsi | | | iscsi |
|
| neutron | | ovs | ovs | linuxbridge | ovs | ovs |
|
||||||
| ceilometer | X | | | | |
|
| cinder | | rbd | iscsi | | | iscsi |
|
||||||
| aodh | X | | | | |
|
| ceilometer | | X | | | | |
|
||||||
| panko | X | | | | |
|
| aodh | | X | | | | |
|
||||||
| designate | | | bind | | |
|
| panko | | X | | | | |
|
||||||
| backup | | swift | | | |
|
| designate | | | | bind | | |
|
||||||
| gnocchi | rbd | | | | |
|
| backup | | | swift | | | |
|
||||||
| ec2api | | X | | | |
|
| gnocchi | | rbd | | | | |
|
||||||
| heat | X | | X | | |
|
| ec2api | | | X | | | |
|
||||||
| swift | | X | | | |
|
| heat | | X | | X | | |
|
||||||
| sahara | | | X | | |
|
| swift | | | X | | | |
|
||||||
| trove | | | X | | |
|
| sahara | | | | X | | |
|
||||||
| horizon | | | X | | X |
|
| trove | | | | X | | |
|
||||||
| ironic | | X | | | |
|
| horizon | | | | X | | X |
|
||||||
| zaqar | | X | | | |
|
| ironic | | | X | | | |
|
||||||
| murano | | | X | | |
|
| zaqar | | | X | | | |
|
||||||
| magnum | | | X | | |
|
| murano | | | | X | | |
|
||||||
| mistral | | | X | | |
|
| magnum | | | | X | | |
|
||||||
| barbican | | X | X | | |
|
| mistral | | | | X | | |
|
||||||
| ceph | X | | | X | |
|
| barbican | | | X | X | | |
|
||||||
| ceph rgw | | | | X | |
|
| ceph | | X | | | X | |
|
||||||
| vitrage | X | | | | |
|
| ceph rgw | | | | | X | |
|
||||||
| watcher | | | | X | |
|
| vitrage | | X | | | | |
|
||||||
| bgpvpn-api | | | | X | |
|
| watcher | | | | | X | |
|
||||||
| bgp-dr | | | | X | |
|
| bgpvpn-api | | | | | X | |
|
||||||
| redis | X | | | | |
|
| bgp-dr | | | | | X | |
|
||||||
| l2gw | | | | X | |
|
| redis | | X | | | | |
|
||||||
| om rpc | amqp1 | rabbit | rabbit | rabbit | rabbit |
|
| l2gw | | | | | X | |
|
||||||
| om notify | rabbit | rabbit | rabbit | rabbit | rabbit |
|
| om rpc | amqp1 | amqp1 | rabbit | rabbit | rabbit | rabbit |
|
||||||
|
| om notify | rabbit | rabbit | rabbit | rabbit | rabbit | rabbit |
|
||||||
|
|
||||||
When the Jenkins slave is created, the *run_tests.sh* script will be executed.
|
When the Jenkins slave is created, the *run_tests.sh* script will be executed.
|
||||||
This script will execute *install_modules.sh* that prepare /etc/puppet/modules
|
This script will execute *install_modules.sh* that prepare /etc/puppet/modules
|
||||||
|
91
fixtures/scenario000.pp
Normal file
91
fixtures/scenario000.pp
Normal file
@ -0,0 +1,91 @@
|
|||||||
|
#
|
||||||
|
# Copyright 2015 Red Hat, Inc.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
# Keystone only puppet deployment
|
||||||
|
|
||||||
|
if ($::os['name'] == 'Ubuntu') or ($::os['name'] == 'Fedora') {
|
||||||
|
$ssl = false
|
||||||
|
} else {
|
||||||
|
$ssl = true
|
||||||
|
}
|
||||||
|
|
||||||
|
if $::osfamily == 'RedHat' {
|
||||||
|
# (amoralej) - disable selinux defaults until
|
||||||
|
# https://tickets.puppetlabs.com/browse/PUP-7559 is fixed
|
||||||
|
Concat { selinux_ignore_defaults => true }
|
||||||
|
File { selinux_ignore_defaults => true }
|
||||||
|
}
|
||||||
|
|
||||||
|
case $::osfamily {
|
||||||
|
'Debian': {
|
||||||
|
$ipv6 = false
|
||||||
|
# vitrage are not packaged yet in debian/ubuntu
|
||||||
|
$enable_vitrage = false
|
||||||
|
$om_rpc = 'rabbit'
|
||||||
|
$om_notify = 'rabbit'
|
||||||
|
$notification_topics = $::os_service_default
|
||||||
|
}
|
||||||
|
'RedHat': {
|
||||||
|
$ipv6 = true
|
||||||
|
$enable_vitrage = false
|
||||||
|
$om_rpc = 'amqp'
|
||||||
|
$om_notify = 'rabbit'
|
||||||
|
$notification_topics = ['notifications', 'vitrage_notifications']
|
||||||
|
}
|
||||||
|
default: {
|
||||||
|
fail("Unsupported osfamily (${::osfamily})")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
include openstack_integration
|
||||||
|
class { 'openstack_integration::config':
|
||||||
|
ssl => $ssl,
|
||||||
|
ipv6 => $ipv6,
|
||||||
|
rpc_backend => $om_rpc,
|
||||||
|
notify_backend => $om_notify,
|
||||||
|
}
|
||||||
|
if $ssl {
|
||||||
|
include openstack_integration::cacert
|
||||||
|
}
|
||||||
|
include openstack_integration::apache
|
||||||
|
include openstack_integration::memcached
|
||||||
|
include openstack_integration::rabbitmq
|
||||||
|
if ($om_rpc == 'amqp') {
|
||||||
|
include openstack_integration::qdr
|
||||||
|
}
|
||||||
|
include openstack_integration::mysql
|
||||||
|
class { 'openstack_integration::keystone':
|
||||||
|
# NOTE(sileht): Telemetry autoscaling tempest tests can't renew token, so we
|
||||||
|
# use a long one
|
||||||
|
token_expiration => '2400',
|
||||||
|
}
|
||||||
|
|
||||||
|
# turn off glance, nova, neutron
|
||||||
|
class { 'openstack_integration::provision':
|
||||||
|
glance => false,
|
||||||
|
nova => false,
|
||||||
|
neutron => false,
|
||||||
|
}
|
||||||
|
|
||||||
|
# Expected keystone resources logged to
|
||||||
|
# keystone-resources.txt
|
||||||
|
class { 'openstack_integration::tempest':
|
||||||
|
glance => false,
|
||||||
|
nova => false,
|
||||||
|
neutron => false,
|
||||||
|
configure_images => false,
|
||||||
|
configure_networks => false,
|
||||||
|
}
|
@ -112,6 +112,14 @@
|
|||||||
# (optional) Define if Encrypted Volumes need to be tested.
|
# (optional) Define if Encrypted Volumes need to be tested.
|
||||||
# Default to false.
|
# Default to false.
|
||||||
#
|
#
|
||||||
|
# [*configure_images*]
|
||||||
|
# (optional) Define if images are configured for tempest.
|
||||||
|
# Default to true.
|
||||||
|
#
|
||||||
|
# [*configure_networks*]
|
||||||
|
# (optional) Define if networks are configured for tempest.
|
||||||
|
# Default to true.
|
||||||
|
#
|
||||||
# [*neutron_api_extensions*]
|
# [*neutron_api_extensions*]
|
||||||
# (optional) Define list of neutron API extensions to test.
|
# (optional) Define list of neutron API extensions to test.
|
||||||
# The list is known to work with the repo; this reflects extensions enabled
|
# The list is known to work with the repo; this reflects extensions enabled
|
||||||
@ -146,6 +154,8 @@ class openstack_integration::tempest (
|
|||||||
$vitrage = false,
|
$vitrage = false,
|
||||||
$zaqar = false,
|
$zaqar = false,
|
||||||
$attach_encrypted_volume = false,
|
$attach_encrypted_volume = false,
|
||||||
|
$configure_images = true,
|
||||||
|
$configure_networks = true,
|
||||||
$neutron_api_extensions = [
|
$neutron_api_extensions = [
|
||||||
'address-scope',
|
'address-scope',
|
||||||
'agent',
|
'agent',
|
||||||
@ -211,8 +221,8 @@ class openstack_integration::tempest (
|
|||||||
tempest_clone_path => '/tmp/openstack/tempest',
|
tempest_clone_path => '/tmp/openstack/tempest',
|
||||||
lock_path => '/tmp/openstack/tempest',
|
lock_path => '/tmp/openstack/tempest',
|
||||||
tempest_config_file => '/tmp/openstack/tempest/etc/tempest.conf',
|
tempest_config_file => '/tmp/openstack/tempest/etc/tempest.conf',
|
||||||
configure_images => true,
|
configure_images => $configure_images,
|
||||||
configure_networks => true,
|
configure_networks => $configure_networks,
|
||||||
identity_uri_v3 => "${::openstack_integration::config::keystone_auth_uri}/v3",
|
identity_uri_v3 => "${::openstack_integration::config::keystone_auth_uri}/v3",
|
||||||
admin_username => 'admin',
|
admin_username => 'admin',
|
||||||
admin_project_name => 'openstack',
|
admin_project_name => 'openstack',
|
||||||
|
@ -12,3 +12,4 @@
|
|||||||
executable: /bin/bash
|
executable: /bin/bash
|
||||||
chdir: '{{ ansible_user_dir }}/workspace/puppet-openstack-integration'
|
chdir: '{{ ansible_user_dir }}/workspace/puppet-openstack-integration'
|
||||||
environment: '{{ zuul | zuul_legacy_vars }}'
|
environment: '{{ zuul | zuul_legacy_vars }}'
|
||||||
|
|
||||||
|
@ -6,6 +6,19 @@
|
|||||||
vars:
|
vars:
|
||||||
puppet: 6
|
puppet: 6
|
||||||
|
|
||||||
|
- job:
|
||||||
|
name: puppet-openstack-integration-6-scenario000
|
||||||
|
parent: puppet-openstack-integration-6
|
||||||
|
abstract: true
|
||||||
|
vars:
|
||||||
|
scenario: scenario000
|
||||||
|
|
||||||
|
- job:
|
||||||
|
name: puppet-openstack-integration-6-scenario000-tempest-centos-8-stream
|
||||||
|
parent: puppet-openstack-integration-6-scenario000
|
||||||
|
voting: false
|
||||||
|
nodeset: centos-8-stream
|
||||||
|
|
||||||
- job:
|
- job:
|
||||||
name: puppet-openstack-integration-6-scenario001
|
name: puppet-openstack-integration-6-scenario001
|
||||||
parent: puppet-openstack-integration-6
|
parent: puppet-openstack-integration-6
|
||||||
|
@ -49,6 +49,7 @@
|
|||||||
- puppet-openstack-integration-6-scenario002-tempest-ubuntu-focal
|
- puppet-openstack-integration-6-scenario002-tempest-ubuntu-focal
|
||||||
- puppet-openstack-integration-6-scenario003-tempest-ubuntu-focal
|
- puppet-openstack-integration-6-scenario003-tempest-ubuntu-focal
|
||||||
- puppet-openstack-integration-6-scenario004-tempest-ubuntu-focal
|
- puppet-openstack-integration-6-scenario004-tempest-ubuntu-focal
|
||||||
|
- puppet-openstack-integration-6-scenario000-tempest-centos-8-stream
|
||||||
- puppet-openstack-integration-6-scenario001-tempest-centos-8-stream
|
- puppet-openstack-integration-6-scenario001-tempest-centos-8-stream
|
||||||
- puppet-openstack-integration-6-scenario002-tempest-centos-8-stream
|
- puppet-openstack-integration-6-scenario002-tempest-centos-8-stream
|
||||||
- puppet-openstack-integration-6-scenario003-tempest-centos-8-stream
|
- puppet-openstack-integration-6-scenario003-tempest-centos-8-stream
|
||||||
|
Loading…
Reference in New Issue
Block a user