Browse code

Merge "Add an openSUSE Tumbleweed devstack non-voting check job"

Zuul authored on 2018/03/13 11:07:02
Showing 6 changed files
... ...
@@ -29,6 +29,16 @@
29 29
           - controller
30 30
 
31 31
 - nodeset:
32
+    name: devstack-single-node-opensuse-tumbleweed
33
+    nodes:
34
+      - name: controller
35
+        label: opensuse-tumbleweed
36
+    groups:
37
+      - name: tempest
38
+        nodes:
39
+          - controller
40
+
41
+- nodeset:
32 42
     name: devstack-single-node-fedora-27
33 43
     nodes:
34 44
       - name: controller
... ...
@@ -354,11 +364,18 @@
354 354
 - job:
355 355
     name: devstack-platform-opensuse-423
356 356
     parent: tempest-full
357
-    description: OpenSuSE 43.2 platform test
357
+    description: openSUSE 43.2 platform test
358 358
     nodeset: devstack-single-node-opensuse-423
359 359
     voting: false
360 360
 
361 361
 - job:
362
+    name: devstack-platform-opensuse-tumbleweed
363
+    parent: tempest-full
364
+    description: openSUSE Tumbleweed platform test
365
+    nodeset: devstack-single-node-opensuse-tumbleweed
366
+    voting: false
367
+
368
+- job:
362 369
     name: devstack-platform-fedora-27
363 370
     parent: tempest-full
364 371
     description: Fedora 27 platform test
... ...
@@ -434,6 +451,7 @@
434 434
         - devstack
435 435
         - devstack-platform-centos-7
436 436
         - devstack-platform-opensuse-423
437
+        - devstack-platform-opensuse-tumbleweed
437 438
         - devstack-platform-fedora-27
438 439
         - devstack-multinode
439 440
         - devstack-unit-tests
... ...
@@ -373,6 +373,9 @@ function GetDistro {
373 373
         DISTRO="f$os_RELEASE"
374 374
     elif [[ "$os_VENDOR" =~ (openSUSE) ]]; then
375 375
         DISTRO="opensuse-$os_RELEASE"
376
+        # Tumbleweed uses "n/a" as a codename, and the release is a datestring
377
+        # like 20180218, so not very useful.
378
+        [ "$os_CODENAME" = "n/a" ] && DISTRO="opensuse-tumbleweed"
376 379
     elif [[ "$os_VENDOR" =~ (SUSE LINUX) ]]; then
377 380
         # just use major release
378 381
         DISTRO="sle${os_RELEASE%.*}"
... ...
@@ -52,7 +52,20 @@ function install_rpc_backend {
52 52
     if is_service_enabled rabbit; then
53 53
         # Install rabbitmq-server
54 54
         install_package rabbitmq-server
55
-        if is_fedora; then
55
+        if is_suse; then
56
+            install_package rabbitmq-server-plugins
57
+            # the default systemd socket activation only listens on the loopback interface
58
+            # which causes rabbitmq to try to start its own epmd
59
+            sudo mkdir -p /etc/systemd/system/epmd.socket.d
60
+            cat <<EOF | sudo tee /etc/systemd/system/epmd.socket.d/ports.conf >/dev/null
61
+[Socket]
62
+ListenStream=
63
+ListenStream=[::]:4369
64
+EOF
65
+            sudo systemctl daemon-reload
66
+            sudo systemctl restart epmd.socket epmd.service
67
+        fi
68
+        if is_fedora || is_suse; then
56 69
             sudo systemctl enable rabbitmq-server
57 70
         fi
58 71
     fi
... ...
@@ -557,7 +557,11 @@ EOF
557 557
 
558 558
     local swift_log_dir=${SWIFT_DATA_DIR}/logs
559 559
     sudo rm -rf ${swift_log_dir}
560
-    sudo install -d -o ${STACK_USER} -g adm ${swift_log_dir}/hourly
560
+    local swift_log_group=adm
561
+    if is_suse; then
562
+        swift_log_group=root
563
+    fi
564
+    sudo install -d -o ${STACK_USER} -g ${swift_log_group} ${swift_log_dir}/hourly
561 565
 
562 566
     if [[ $SYSLOG != "False" ]]; then
563 567
         sed "s,%SWIFT_LOGDIR%,${swift_log_dir}," $FILES/swift/rsyslog.conf | sudo \
... ...
@@ -221,7 +221,7 @@ write_devstack_version
221 221
 
222 222
 # Warn users who aren't on an explicitly supported distro, but allow them to
223 223
 # override check and attempt installation with ``FORCE=yes ./stack``
224
-if [[ ! ${DISTRO} =~ (xenial|zesty|artful|stretch|jessie|f25|f26|f27|opensuse-42.2|opensuse-42.3|rhel7) ]]; then
224
+if [[ ! ${DISTRO} =~ (xenial|zesty|artful|stretch|jessie|f25|f26|f27|opensuse-42.3|opensuse-tumbleweed|rhel7) ]]; then
225 225
     echo "WARNING: this script has not been tested on $DISTRO"
226 226
     if [[ "$FORCE" != "yes" ]]; then
227 227
         die $LINENO "If you wish to run this script anyway run with FORCE=yes"
... ...
@@ -129,10 +129,10 @@ get_versions
129 129
 
130 130
 # Eradicate any and all system packages
131 131
 
132
-# Python in fedora depends on the python-pip package so removing it
132
+# Python in fedora/suse depends on the python-pip package so removing it
133 133
 # results in a nonfunctional system. pip on fedora installs to /usr so pip
134 134
 # can safely override the system pip for all versions of fedora
135
-if ! is_fedora ; then
135
+if ! is_fedora  && ! is_suse; then
136 136
     uninstall_package python-pip
137 137
     uninstall_package python3-pip
138 138
 fi