swift/tools/playbooks/multinode_setup/run.yaml
Tim Burke a290f445ef CI: make sure old swift is truly gone for rolling-upgrade jobs
While switching how some executable scripts were configured, I saw
some strange rolling-upgrade failures that seemed to indicate that
the new invocation method was trying to be used with old code. It
seems like it maybe has something to do with whether swift was
installed to /usr/local/lib/python3.9/site-packages/ or
/usr/local/lib64/python3.9/site-packages/ but I'm not entirely
sure.

At any rate, a proper package manager ought to uninstall the old
version then install the new one, so it seems reasonable to do that
with pip, too.

Change-Id: I12e84745e7601d162755bc9d0f1cda7b63e92197
2024-06-17 15:01:35 -07:00

51 lines
1.5 KiB
YAML

# 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.
- hosts: storage
tasks:
- name: remove old swift
become: true
shell:
cmd: pip uninstall -y swift
executable: /bin/bash
chdir: '{{ zuul.project.src_dir }}'
- name: checkout master swift
shell:
cmd: git checkout master
executable: /bin/bash
chdir: '{{ zuul.project.src_dir }}'
- name: install swift
become: true
shell:
cmd: python3 setup.py develop
executable: /bin/bash
chdir: '{{ zuul.project.src_dir }}'
- hosts: swift-cluster
tasks:
- name: start services
command: swift-init main start
- hosts: test-runner
tasks:
- name: Run func tests with tempauth users
include_role:
name: tox
vars:
tox_envlist: func-py3
tox_environment:
TOX_CONSTRAINTS_FILE: https://releases.openstack.org/constraints/upper/yoga
SWIFT_TEST_CONFIG_FILE: /home/{{ ansible_user }}/test.conf