Browse Source

Merge "Add jobs for CentOS 8" into stable/train

stable/train
Zuul 3 months ago
committed by Gerrit Code Review
parent
commit
12c99860b3
6 changed files with 292 additions and 8 deletions
  1. +64
    -0
      .zuul.yaml
  2. +0
    -0
      Puppetfile-centos7
  3. +170
    -0
      Puppetfile-centos8
  4. +28
    -0
      playbooks/packstack-centos8-pre.yaml
  5. +22
    -4
      playbooks/packstack-multinode.yaml
  6. +8
    -4
      run_tests.sh

+ 64
- 0
.zuul.yaml View File

@@ -43,6 +43,20 @@
label: centos-7
run: playbooks/packstack-integration-tempest.yaml

- job:
name: packstack-centos8
parent: packstack-base
vars:
selinux_enforcing: "false"
delorean: "https://trunk.rdoproject.org/centos8-train/consistent/delorean.repo"
delorean_deps: "https://trunk.rdoproject.org/centos8-train/delorean-deps.repo"
pre-run: playbooks/packstack-centos8-pre.yaml
nodeset:
nodes:
- name: centos8
label: centos-8
run: playbooks/packstack-integration-tempest.yaml

- job:
name: packstack-multinode
parent: packstack-base
@@ -55,6 +69,22 @@
label: centos-7
run: playbooks/packstack-multinode.yaml

- job:
name: packstack-multinode-centos8
parent: packstack-base
vars:
selinux_enforcing: "false"
delorean: "https://trunk.rdoproject.org/centos8-train/consistent/delorean.repo"
delorean_deps: "https://trunk.rdoproject.org/centos8-train/delorean-deps.repo"
pre-run: playbooks/packstack-centos8-pre.yaml
nodeset:
nodes:
- name: controller
label: centos-8
- name: compute
label: centos-8
run: playbooks/packstack-multinode.yaml

- job:
name: packstack-integration-scenario001-tempest
parent: packstack-allinone
@@ -73,6 +103,24 @@
vars:
scenario: scenario003

- job:
name: packstack-centos8-integration-scenario001
parent: packstack-centos8
vars:
scenario: scenario001

- job:
name: packstack-centos8-integration-scenario002
parent: packstack-centos8
vars:
scenario: scenario002

- job:
name: packstack-centos8-integration-scenario003
parent: packstack-centos8
vars:
scenario: scenario003

# We should have nested post-run jobs, according to
# https://docs.openstack.org/infra/zuul/user/config.html#job
- job:
@@ -82,6 +130,13 @@
vars:
scenario: scenario002

- job:
name: packstack-centos8-multinode-scenario002-tempest
parent: packstack-multinode-centos8
post-run: playbooks/packstack-post-compute.yaml
vars:
scenario: scenario002

- secret:
name: packstack_git_mirror_credentials
data:
@@ -174,6 +229,15 @@
- packstack-integration-scenario002-tempest
- packstack-integration-scenario003-tempest
- packstack-multinode-scenario002-tempest
# We can't make centos8 jobs voting until we have promotion pipeline
- packstack-centos8-integration-scenario001:
voting: false
- packstack-centos8-integration-scenario002:
voting: false
- packstack-centos8-integration-scenario003:
voting: false
- packstack-centos8-multinode-scenario002-tempest:
voting: false
- openstack-tox-py36:
voting: false
gate:


Puppetfile → Puppetfile-centos7 View File


+ 170
- 0
Puppetfile-centos8 View File

@@ -0,0 +1,170 @@
moduledir '/usr/share/openstack-puppet/modules'

## OpenStack modules

mod 'aodh',
:git => 'https://github.com/openstack/puppet-aodh',
:ref => 'stable/train'

mod 'ceilometer',
:git => 'https://github.com/openstack/puppet-ceilometer',
:ref => 'stable/train'

mod 'cinder',
:git => 'https://github.com/openstack/puppet-cinder',
:ref => 'stable/train'

mod 'glance',
:git => 'https://github.com/openstack/puppet-glance',
:ref => 'stable/train'

mod 'gnocchi',
:git => 'https://github.com/openstack/puppet-gnocchi',
:ref => 'stable/train'

mod 'heat',
:git => 'https://github.com/openstack/puppet-heat',
:ref => 'stable/train'

mod 'magnum',
:git => 'https://github.com/openstack/puppet-magnum',
:ref => 'stable/train'

mod 'horizon',
:git => 'https://github.com/openstack/puppet-horizon',
:ref => 'stable/train'

mod 'ironic',
:git => 'https://github.com/openstack/puppet-ironic',
:ref => 'stable/train'

mod 'keystone',
:git => 'https://github.com/openstack/puppet-keystone',
:ref => 'stable/train'

mod 'manila',
:git => 'https://github.com/openstack/puppet-manila',
:ref => 'stable/train'

mod 'neutron',
:git => 'https://github.com/openstack/puppet-neutron',
:ref => 'stable/train'

mod 'nova',
:git => 'https://github.com/openstack/puppet-nova',
:ref => 'stable/train'

mod 'openstack_extras',
:git => 'https://github.com/openstack/puppet-openstack_extras',
:ref => 'stable/train'

mod 'openstacklib',
:git => 'https://github.com/openstack/puppet-openstacklib',
:ref => 'stable/train'

mod 'oslo',
:git => 'https://github.com/openstack/puppet-oslo',
:ref => 'stable/train'

mod 'ovn',
:git => 'https://github.com/openstack/puppet-ovn',
:ref => 'stable/train'

mod 'panko',
:git => 'https://github.com/openstack/puppet-panko',
:ref => 'stable/train'

mod 'placement',
:git => 'https://github.com/openstack/puppet-placement',
:ref => 'stable/train'

mod 'sahara',
:git => 'https://github.com/openstack/puppet-sahara',
:ref => 'stable/train'

mod 'swift',
:git => 'https://github.com/openstack/puppet-swift',
:ref => 'stable/train'

mod 'tempest',
:git => 'https://github.com/openstack/puppet-tempest',
:ref => 'stable/train'

mod 'trove',
:git => 'https://github.com/openstack/puppet-trove',
:ref => 'stable/train'

mod 'vswitch',
:git => 'https://github.com/openstack/puppet-vswitch',
:ref => 'stable/train'

## Non-OpenStack modules

mod 'apache',
:git => 'https://github.com/puppetlabs/puppetlabs-apache',
:ref => '1fa9b1cdece0044186465883ecc940dd3b69827c'

mod 'certmonger',
:git => 'https://github.com/rcritten/puppet-certmonger',
:ref => 'master'

mod 'concat',
:git => 'https://github.com/puppetlabs/puppetlabs-concat',
:ref => '9baa8fcbd1ab68cd32916bd5d90255f816bb9519'

mod 'firewall',
:git => 'https://github.com/puppetlabs/puppetlabs-firewall',
:ref => '4f4437ad800d5697bafc8346c1627e1c4b5b607f'

mod 'inifile',
:git => 'https://github.com/puppetlabs/puppetlabs-inifile',
:ref => '91efced79bb9011e162eea35e4a0d9ad12e267a1'

mod 'memcached',
:git => 'https://github.com/saz/puppet-memcached',
:ref => '66d3a667d4e7e0253949f9d83c230b5f8ccca596'

mod 'mysql',
:git => 'https://github.com/puppetlabs/puppetlabs-mysql',
:ref => 'v10.3.0'

mod 'nssdb',
:git => 'https://github.com/rcritten/puppet-nssdb',
:ref => 'master'

mod 'rabbitmq',
:git => 'https://github.com/voxpupuli/puppet-rabbitmq',
:ref => '75574b8f4a921cacda86ff30d378308084afa0d4'

mod 'redis',
:git => 'https://github.com/arioch/puppet-redis',
:ref => 'be8d097f849afaca6c381d105a4bf80bbd691a40'

mod 'remote',
:git => 'https://github.com/paramite/puppet-remote',
:ref => '7420908328b832f4b20e1eba44bcccd926da8faa'

mod 'rsync',
:git => 'https://github.com/puppetlabs/puppetlabs-rsync',
:ref => 'a7d4f8487cf9492106690637d3e7d484876943e6'

mod 'ssh',
:git => 'https://github.com/saz/puppet-ssh',
:ref => '65570a311e1303d8084d12ee82868e6d0f411e8a'

mod 'stdlib',
:git => 'https://github.com/puppetlabs/puppetlabs-stdlib',
:ref => '5aa891c2ef8efce6eb6d1ff12e976b4753b3c4d9'

mod 'sysctl',
:git => 'https://github.com/duritong/puppet-sysctl',
:ref => 'a3d160d7c79cc905fc1d10a4fd8b4c1488e017b4'

mod 'vcsrepo',
:git => 'https://github.com/puppetlabs/puppetlabs-vcsrepo',
:ref => 'b06d5d378e80d03c5dea40a89e83449191064ddc'

mod 'xinetd',
:git => 'https://github.com/puppetlabs/puppetlabs-xinetd',
:ref => 'd768da2f645001395ef1c796bb03d0b9bcc733f5'


+ 28
- 0
playbooks/packstack-centos8-pre.yaml View File

@@ -0,0 +1,28 @@
- hosts: all
name: packstack-centos8-pre
tasks:
- name: Ensure legacy workspace directory
file:
path: '{{ ansible_user_dir }}/workspace'
state: directory

- shell:
cmd: |
cp -pr /home/zuul/src/opendev.org/x/packstack {{ ansible_user_dir }}/workspace

- shell:
cmd: |
set -e
set -x
rm -rf /etc/yum.repos.d/delorean*
# Remove epel repos
rm -rf /etc/yum.repos.d/epel*
dnf clean all
sudo sed -i '/^exclude.*/d' /etc/dnf/dnf.conf
dnf -y install libxml2-devel libxslt-devel ruby-devel zlib-devel
dnf -y install gcc gettext diffstat doxygen patch patchutils subversion systemtap git python3-setuptools wget redhat-lsb-core python3-libselinux virt-what yum
pip uninstall requests -y || true
executable: /bin/bash
chdir: '{{ ansible_user_dir }}/workspace'
become: true
environment: '{{ zuul }}'

+ 22
- 4
playbooks/packstack-multinode.yaml View File

@@ -1,22 +1,37 @@
- hosts: compute
name: setup RDO Trunk repositories
vars:
delorean: "https://trunk.rdoproject.org/centos7-train/current-tripleo/delorean.repo"
delorean_deps: "https://trunk.rdoproject.org/centos7-train/delorean-deps.repo"
delorean_default: "https://trunk.rdoproject.org/centos7-train/current-tripleo/delorean.repo"
delorean_deps_default: "https://trunk.rdoproject.org/centos7-train/delorean-deps.repo"
tasks:
- name: Fetch DLRN repo
get_url:
url: "{{ delorean }}"
url: "{{ delorean | default(delorean_default) }}"
dest: /etc/yum.repos.d/delorean.repo
mode: 0640
become: true

- name: Fetch DLRN dependency repo
get_url:
url: "{{ delorean_deps }}"
url: "{{ delorean_deps | default(delorean_deps_default) }}"
dest: /etc/yum.repos.d/delorean-deps.repo
mode: 0640
become: true

- name: Update installed packages from RDO repos
package:
name: '*'
state: latest
become: true

- name: Disable selinux in Compute node
shell:
cmd: |
setenforce 0
become: true
when: not selinux_enforcing|default("true")|bool


- hosts: controller
name: packstack-ssh-preparation-1
tasks:
@@ -61,8 +76,11 @@
set -e
set -x
export SCENARIO='{{ scenario }}'
export DELOREAN='{{ delorean | default('') }}'
export DELOREAN_DEPS='{{ delorean_deps | default('') }}'
export CONTROLLER_NODE="{{ hostvars['controller'].nodepool.public_ipv4 }}"
export COMPUTE_NODE="{{ hostvars['compute'].nodepool.public_ipv4 }}"
export SELINUX_ENFORCING='{{ selinux_enforcing | default('true') }}'
./run_tests.sh
executable: /bin/bash
chdir: '{{ ansible_user_dir }}/workspace/packstack'

+ 8
- 4
run_tests.sh View File

@@ -19,11 +19,15 @@ SCENARIO=${SCENARIO:-scenario001}

BRANCH=stable/train

# Find OS version and release
source /etc/os-release
OS_NAME_VERS=${REDHAT_SUPPORT_PRODUCT}${REDHAT_SUPPORT_PRODUCT_VERSION}

# We could want to override the default repositories or install behavior
INSTALL_FROM_SOURCE=${INSTALL_FROM_SOURCE:-true}
MANAGE_REPOS=${MANAGE_REPOS:-true}
DELOREAN=${DELOREAN:-https://trunk.rdoproject.org/centos7-train/current-tripleo/delorean.repo}
DELOREAN_DEPS=${DELOREAN_DEPS:-https://trunk.rdoproject.org/centos7-train/delorean-deps.repo}
DELOREAN=${DELOREAN:-https://trunk.rdoproject.org/${OS_NAME_VERS}-train/current-passed-ci/delorean.repo}
DELOREAN_DEPS=${DELOREAN_DEPS:-https://trunk.rdoproject.org/${OS_NAME_VERS}-train/delorean-deps.repo}
GIT_BASE_URL=${GIT_BASE_URL:-https://git.openstack.org}
ADDITIONAL_ARGS=${ADDITIONAL_ARGS:-}
SELINUX_ENFORCING=${SELINUX_ENFORCING:-true}
@@ -79,7 +83,7 @@ EOF
#
# - ``GEM_BIN_DIR`` must be set to Gem bin directory
install_all() {
$SUDO ${GEM_BIN_DIR}r10k puppetfile install -v --puppetfile Puppetfile
$SUDO ${GEM_BIN_DIR}r10k puppetfile install -v --puppetfile Puppetfile-${OS_NAME_VERS}
}

# Install Puppet OpenStack modules and dependencies by using
@@ -92,7 +96,7 @@ install_all() {
install_modules() {
# If zuul-cloner is there, have it install modules using zuul refs
if [ -e /usr/zuul-env/bin/zuul-cloner ] ; then
csplit Puppetfile /'Non-OpenStack modules'/ \
csplit Puppetfile-%{OS_NAME_VERS} /'Non-OpenStack modules'/ \
--prefix Puppetfile \
--suffix '%d'
install_external


Loading…
Cancel
Save