1042 Commits

Author SHA1 Message Date
Zuul
01826e1c5b Merge "Remove fixup_virtualenv" 2020-04-09 16:00:35 +00:00
Colleen Murphy
497caf0157 Fix opensuse trusted certificates
There's a bug[1] with the combination of the p11-kit and
ca-certificates-mozilla packages available on the latest built
opensuse-15 node in nodepool (which has not been rebuilt for weeks due
to a separate issue[2]) which causes the standard CA bundle to not be
installed correctly and causes jobs that call to external HTTPS services
to fail. Upgrading both packages in sync fixes the issue.

[1] https://bugzilla.suse.com/show_bug.cgi?id=1154871
[2] http://bugzilla.suse.com/show_bug.cgi?id=1166139

Change-Id: Ia8fdfe12fd9089e178adcb2b5eec997eebada262
Needed-by: https://review.opendev.org/713566
2020-04-03 10:14:07 -07:00
Ian Wienand
1587ba1bd5 Remove fixup_virtualenv
This first came in with Id749c37ab7fefa96b35f11816b56b9def5ef4b08.  It
talks about ancient versions of pip; can't see we need it any more.

Change-Id: I9d4831955070990a81a809d988612d9d5b1aa672
2020-04-03 09:36:01 +11:00
LuyaoZhong
8d4ae4ffc4 bug-fix: 'bytes' type in python3 cause command fail
'str' type in python2 is 'bytes' type in python3,
when use python3, we will get a prefix 'b':

sudo ip netns exec b'qrouter-39cc2b45-a27c-49c5-94a6-26443a49ac63' ip
neigh
--------------------------------------------------------------------------
*** Failed to run 'sudo ip netns exec
b'qrouter-39cc2b45-a27c-49c5-94a6-26443a49ac63' ip neigh': Command 'sudo
ip netns exec b'qrouter-39cc2b45-a27c-49c5-94a6-26443a49ac63' ip neigh'
returned non-zero exit status 1.

The message above is raised by running tools/worlddump.py with python3.

Change-Id: Ic254af86fa27729839f00c0ad4a5bbbc9e545a09
2020-02-19 08:37:45 +00:00
Federico Ressi
21a10d3499 Use python3 as default python command
After Python 2 is getting unsupported, new distros
like CentOS 8 and RHEL8 have stopped providing 'python'
package forcing user to decide which alternative to
use by installing 'python2' or 'python3.x' package
and then setting python alternative.

This change is intended to make using python3 command as
much as possible and use it as default 'python' alternative
where needed.

The final goals motivating this change are:
 - stop using python2 as much as possible
 - help adding support for CentOS 8 and RHEL8

Change-Id: I1e90db987c0bfa6206c211e066be03ea8738ad3f
2020-02-17 17:03:47 +00:00
Zuul
fdd631d27a Merge "Switch to python3 for memory_peak service" 2020-01-31 05:57:23 +00:00
Carlos Camacho
7611d3dfd2 Add -r option when removing egg-info files/folders
We are hitting this error:
+ tools/fixup_stuff.sh:fixup_ubuntu:82 :
    sudo rm -f /usr/lib/python3/dist-packages/httplib2-0.11.3.egg-info
rm: cannot remove
    '/usr/lib/python3/dist-packages/httplib2-0.11.3.egg-info': Is a directory

This patch adds the -r option to allow removing folders.

Change-Id: Ib7bb8b0a3dcf747bcc06da1a2fb17fa9d8808484
2020-01-30 14:41:14 +01:00
Federico Ressi
3555b48ff4 Switch to python3 for memory_peak service
When starting 'memory_peak' service is using python command instead of
python3, while psutil (required package) is most probably being
installed into the python3 environment (as we are dropping python2.7
support).

Closes-Bug: #1860753
Change-Id: Ia2b7e2e33d784560443131e2965f520b361a54e3
2020-01-30 12:35:34 +00:00
Witek Bedyk
e727dd5682 Remove conflicting packages in Ubuntu
Following packages conflict with pip installed versions:
* httplib2
* pyasn1-modules

Change-Id: Ic4f70f839765e67394509cc543560aac7f50e287
2020-01-27 17:11:23 +01:00
Witek Bedyk
4dc02f97e7 Remove fixup_python_packages
The hack has be around for pip 1.4.1 and older. It should be safe to
remove it by now. In fact it causes problems in my Ubutu Bionic VM when
trying to overwrite httplib2 library installed from the distro package.

Change-Id: I34b826f4e8f10f8d44b888120f19fcc7ba501b3d
2020-01-26 09:41:57 +00:00
Zuul
6a4c74dda8 Merge "devstack-plugins-list: skip openstack/openstack" 2020-01-23 13:56:04 +00:00
Ian Wienand
afd346a0a1 devstack-plugins-list: skip openstack/openstack
The proposal job to update the plugin list has been failing for a long
time as it gets a 500 error from gitea on the openstack/openstack
repo.  This is an odd "superrepo" with all projects as submodules;
thus openstack/openstack/devstack is actually a project, not the
directory with a plugin in it.

Skip this repo (gitea shouldn't return a 500, but that's another
thing...)

Regenerate the list manually for this run.

Change-Id: I6ed65bcb720d4cb10702cbf66106120e001ec35f
2020-01-23 13:13:05 +11:00
Dr. Jens Harbott
e18325ca67 Fix pip uncap fallout for nova and barbican
Need to make PyYAML overridable on Ubuntu, it is a dependency for e.g.
cloud-init, so we cannot remove it.

Depends-On: https://review.opendev.org/703792
Change-Id: I4423dfb2c30299903b52a2bb06d846dd487f5b8b
2020-01-22 13:37:11 +00:00
Zuul
5ae6f5ec37 Merge "Revert "Do not use pip 10 or higher"" 2020-01-21 18:36:06 +00:00
Ian Wienand
2e66778699 Drop Xenial support
With the goals of Ussuri being Python 3.6 [1], the python 3.5
environment on Xenial is too old.  Remove testing and the most obvious
bits of support from devstack.

Also drop claimed support for artful, which is long EOL.

[1] https://governance.openstack.org/tc/reference/runtimes/ussuri.html

Change-Id: Iefcca99904dde76b34efbbfc0e04515dfa5a09e5
2019-11-21 18:38:32 +00:00
Jens Harbott (frickler)
279a7589b0 Revert "Do not use pip 10 or higher"
This reverts commit f99d1771ba1882dfbb69186212a197edae3ef02c.

Added workarounds that might want to get split into their own patch
before merging:

- Don't install python-psutil
- Don't run peakmem_tracker

Change-Id: If4fb16555e15082a4d97cffdf3cfa608a682997d
2019-11-20 21:02:39 +00:00
Brian Haley
da18895162 Fix brctl calls
Some distros no longer ship brctl, iproute2 should be used
in its place. The linuxbridge agent plugin script was still
using it, as was worlddump, which generates this warning on
a failure:

    Running devstack worlddump.py
    /bin/sh: 1: brctl: not found

Conditionalizing worlddump based on whether brctl is installed
to make this go away.

Change-Id: Iafbf4038bab08c261d45d117b12d4629ba32d65e
2019-11-06 09:55:47 +08:00
Zuul
e6f495e2dd Merge "generate-devstack-plugins-list: Retry on opendev.org 500" 2019-10-07 10:55:13 +00:00
Colleen Murphy
6eb2c5990d Fix six package on opensuse for pip 10
openSUE Leap 15.0 and 15.1 both provide python3-six version 1.11.0.
Since version 1.12.0 was released, pip>=10 recognizes the version
difference and tries to uninstall the distro-provided version and fails.
This change adds another hack to remove the egg-info file for the six
library so that pip can manage it directly. We also have to wait to
install os-testr until after the fixup has happened since trying to
install it triggers the issue.

Change-Id: I4649abe06b5893a5251bfcdd4234abccde6ceda2
2019-09-26 07:26:27 +00:00
Ian Wienand
893817d30a generate-devstack-plugins-list: Retry on opendev.org 500
A 500 error from gitea can occasionally show up as a project dropping
their devstack plugin (I543faced83a685d48706d004ae49800abfb89dc5).

To avoid noise in the proposal jobs, implement a small retry loop for
500 errors.

Change-Id: Ide23e4de819a2c751d887eeaa7f0b9d0437f8e2c
2019-09-25 08:30:07 +10:00
Zuul
bfb176579b Merge "Fix worlddump log collection" 2019-09-13 15:17:18 +00:00
Zuul
916659374a Merge "Make stop/disable of apparmor work on all SLE systems" 2019-09-13 08:08:26 +00:00
Jens Harbott
ce396d374b Fix worlddump log collection
All credit for figuring this out goes to frickler (and that was the hard
bit so thank you!). The worlddump files were not being collected because
they weren't in our log collection list. Add worlddump to this list
so that we collect these files.

One thing that makes this slightly complicated is the worlddump files
are named with a timestamp and we can't have globs in our collection
list. To address this we create a copy of the file with a -latest.txt
suffix. This gives us a deterministic file name for log collection
without using globs.

Note we do not use a symlink here because some jobs gzip their log files
(breaking symlinks) and others do not. This makes it painful to always
have a valid link. Not having a valid link can break log collection.

Hardlinks may be another option but simply making a copy is easier to
manage as you don't have to worry about links preexisting and the
dumpfiles are not that large.

Change-Id: I96ae5f5290546ad25ca434c1106c01354d2d053c
2019-09-12 10:21:17 +00:00
Zuul
5406b6f3cc Merge "Permit use of sudo-ldap instead of sudo package" 2019-08-20 10:41:05 +00:00
Andreas Jaeger
8dd89e52d0 Update docs building
Switch to "modern" way of building docs using sphinx-build directly,
remove now unsed parts from setup.cfg.

Upgrade to openstackdocstheme 1.20 and remove obsolete variables from
conf.py.

Convert external links to internal RST links so that Sphinx can verify
that they are correct.

Replace redirected links with new targets.

Use opendev.org instead of github.com where appropriate.

Change-Id: Iedcc008b170821aa74acefc02ec6a243a0dc307c
2019-08-11 16:15:34 +02:00
Adam Spiers
6c7337e80e Make stop/disable of apparmor work on all SLE systems
The existing code to disable apparmor on SUSE systems only worked for
recent openSUSE / SLE releases.  On SLE12 (at least), aa-enabled and
aa-teardown are not available, so instead use systemd's interface for
stop/disable.  However on newer releases, systemctl stop apparmor is a
no-op:

    https://www.suse.com/releasenotes/x86_64/SUSE-SLES/15/#fate-325343
    https://gitlab.com/apparmor/apparmor/merge_requests/81
    https://build.opensuse.org/package/view_file/openSUSE:Leap:15.2/apparmor/apparmor.service?expand=1

So we still need to call aa-teardown if it's available.

Change-Id: I8d99c8d743cc1935324e2e4fcb67efaa5241199e
2019-08-08 12:52:07 +01:00
Zuul
9ee5347e69 Merge "Enable universe repository on Ubuntu" 2019-07-03 16:38:21 +00:00
Matt Riedemann
9b6d2f20b4 Update (git|review).openstack.org links to opendev
This updates links going to git.openstack.org and review.openstack.org
to go to their respective opendev locations to avoid redirects.

Change-Id: I78e3bb5303718962f591117f9c0ee11f2314b128
Closes-Bug: #1833256
2019-06-21 14:35:16 +10:00
Ian Wienand
d5634c4723 Fix plugin doc generation for opendev transition
Update the server to opendev and update paths for gitea, along with
any other references.

Switch to a blacklist where we just remove stackforge; this leaves all
the new namespaces like x/ and starlingx/ being checked.

Use a common session for checking for the plugin file which makes it a
*lot* faster.

Remove unsed "plugins" array variable

Regenerate the file

Change-Id: Ie3e615ba352a389da22e129c5c67cf6abd8cfdc8
2019-06-21 14:33:29 +10:00
Alex Monk
5e2d0e0bb5 Permit use of sudo-ldap instead of sudo package
If the sudo-ldap package is providing the sudo command instead of the plain
sudo package, accept that instead of breaking the system and requiring direct
root login intervention to fix things.

Change-Id: I45d7e4617bd59e72b4f0bf2e91750a6830e2a010
2019-06-04 01:23:37 +01:00
Colleen Murphy
10f4409882 Add hack to fix ply installation on opensuse
The python3-ply package is indirectly a dependency of dhcp-client, which
is not exactly an optional package. Pip >=10 refuses to install ply from
global-requirements with this distro package is installed, so our only
option is to remove it manually.

Change-Id: I377fdd4a581eb4b6275584d92cafc0b783fe3b84
2019-04-15 19:03:57 +00:00
Zuul
2b51c29121 Merge "Workaround pip10 uninstall of packages" 2019-04-01 14:50:52 +00:00
Ian Wienand
1124a05571 Handle pcp-dstat transition
dstat is Python 2, never going to be updated and effectively
abandonded.  The replacement is pcp-dstat [1] which is mostly
compatible, with a few differences.  As distro start transitioning
(Fedora has), just drop the unsupported args for now.

[1] https://pcp.io/man/man1/pcp-dstat.1.html

Change-Id: Ibec8a37cb18a14656d97e2096c66bc8b21406068
2019-03-29 11:20:19 -07:00
Zuul
e86a6aa924 Merge "Replace deprecated brctl with ip commands" 2019-03-12 22:22:05 +00:00
Ian Wienand
6509fd334e Remove git:// openstack references
This updates various parts of documentation to use https, rather than
git, which is not implemented by gitea

Change-Id: I8d2a93128dcdaba0a00b43d18652781733f90cf0
Story: #2004627
Task: #29701
2019-03-04 17:26:20 +11:00
Nate Johnston
56946cfc5f Replace deprecated brctl with ip commands
The bridge-utils package has been deprecated for some time now [1] and
'brctl' does not exist on some more recent distros like Fedora 28.
Replace references to brctl with the proper ip commands.

Calls to "brctl show" are not being replaced with calls to "bridge link"
because the output format is very different and in testing some bridges
were not listed.  So the simpler method of consulting /sys/class/net is
used.

In worlddump.py we try running both because failures are handled
gracefully by _dump_cmd(), as well as "ip link show type bridge" for
additional info.

[1] https://lwn.net/Articles/703776/ for example

Change-Id: Ie4c8ad6ce4a09c38023c9e4ec7834c249403145f
Partial-Bug: #1801919
2019-03-01 14:36:38 -05:00
Ian Wienand
f0dc93dcb4 Workaround pip10 uninstall of packages
As noted in comments, this is a hack to get pip10 to overwrite some
package installed libraries.

Change-Id: Iea24a3ea915e13f7e0882144028ec5ff5bfdfae1
2019-02-20 14:27:47 +00:00
Monty Taylor
5690582073
Add devstack-system-admin for system scoped actions
Keystone is moving more things to require a system scoped token to
work. Getting one of those requires that domain and project information
are not set.

Change-Id: I2e1640e9f9ef6cdf56bef49d1ae8f0591570c3e6
2019-01-08 23:25:57 +00:00
Akihiro Motoki
e0b375c8ce Use volume v3 API in clouds.yaml by default
Volume API v2 has been deprecated for a long time.
There is no reason to use volume v2 in clouds.yaml by default.

This commit also drops "--os-identity-api-version 3" from
write_clouds_yaml in functions -common as "3" is the default value
of tools/update_clouds_yaml.py. They are hardcoded in DevStack
so there is no reason to pass it.

Change-Id: Ie84026a3d19f7711fc781b7012355096c7ff6b5a
2018-12-14 17:29:27 +09:00
Jens Harbott
8d1b20b4c2 Enable universe repository on Ubuntu
The universe repository is not enabled when installing Ubuntu from an
ISO (at least for Bionic). This leads to some errors during the devstack
run that are not seen when running based on a cloud image which has that
repo enabled by default. Enable that repository unconditionally, the
operation is idempotent.

Change-Id: Ifcb7ecd78fb25ca2136f5848c19b74500e520873
Closes-Bug: 1792936
2018-11-22 13:17:01 +00:00
aojeagarcia
eb7d1ad198 Disable apparmor for openSUSE distros
Dnsmasq and haproxy are used frequently by neutron and nova, apparmor
profiles can block some operations and the deployed cloud can't
work properly so some tests are going to fail.

Some openSUSE distros has apparmor enabled by default so we need to
disable it.

Change-Id: I30fda684effb09810643e58bf0b31a73d7d9b378
Signed-off-by: aojeagarcia <aojeagarcia@suse.com>
2018-10-08 07:08:47 +00:00
Hongbin Lu
f99d1771ba Do not use pip 10 or higher
It looks pip 10 failed the uninstallation of distutils installed
packages. This patch temporarily cap the version of pip to work-around. 

Closes-Bug: #1763966
Change-Id: I8bf80efc04883cd754c19bea0303064080112c6e
2018-04-14 20:58:31 +00:00
Matt Riedemann
23df4da0d4 Use Queens UCA
This updates the UCA usage from Pike to Queens. As a result,
the various volume multiattach checks can also be removed
because the Queens UCA has libvirt 4.0.0.

Change-Id: Icb971831c8d4fe5f940d9e7993d53f1c3765e30f
2018-03-19 14:27:01 -04:00
Zuul
cc4f6717fb Merge "Break up fixup_stuff" 2018-03-13 07:35:05 +00:00
Dirk Mueller
4404f680f2 Add an openSUSE Tumbleweed devstack non-voting check job
This adds the necessary fixes to pass a devstack run
on openSUSE Tumbleweed. Also removes opensuse 42.2 as it
is EOL for some time already and no longer actively tested
in the OpenStack infra.

Depends-On: I1b68c08c07cf6653ea58506f738cbe0054b38f3a
Change-Id: I2894482deef063fd02b0818c695a2ddbf6767039
2018-03-11 14:04:36 +01:00
Zuul
8408edbdfd Merge "XenAPI: remove xen tools" 2018-02-25 15:29:39 +00:00
Jianghua Wang
e619603bda XenAPI: remove xen tools
The xen tools have been moved to the project of *os-xenapi* since
os-xenapi 0.3.0. We also did some refact work on these tools in
os-xenapi. This commit is to remove these tools from devstack. So
that os-xenapi will be the single place for xen tools.

Change-Id: I4fdbe6bce12dfedd0d1e975ab8dd624ee3740c11
2018-02-23 03:58:56 +00:00
Ian Wienand
83ecb97fec Add VERBOSE_NO_TIMESTAMP flag
As described in the documentation, this flag is intended for the case
where the console output is being captured by a tool that appends its
own timestamps.

In the gate this is the job-output.txt.  We want the console output as
people like to watch that scrolling by as part of the live console
log.  Although this gets saved to job-output.txt, we still want to
keep logging to the individual log files even though it's technically
a duplicate -- in the multinode case the job-output.txt gets
interleaved by all the running nodes; it's much easier to just look at
the individual log files.  Also, people are used to it where it is :)

Change-Id: I3486636f1c76139581f6cd9668426f507b7c621d
2018-02-23 08:26:34 +11:00
Ian Wienand
e033e1b80f py3 changes for outfilter.py
I started running this with dib where we have pure python3
environments and it failed.

You can't have unbuffered text i/o in python3 for ... reasons? [1]
Changing the file to binary mode works around this.  Python3 opens
sys.stdin in text mode, so we need to manually convert the unicode
strings to bytes before we write them to the binary file.

[1] http://bugs.python.org/issue17404

Change-Id: Iebb26f0d3c2347d262cbc10dfd0912840cd05878
2018-02-23 08:26:34 +11:00
IWAMOTO Toshihiro
4d835e33b6 Break up fixup_stuff
Neutron functional tests want to use ubuntu cloud archive but it's
not possible to source the fixup_stuff.sh from a neutron CI setup
script. Break it up so that only the UCA portion can be executed
from neutron.

Change-Id: Ie18833bfa30f1789e63cbe9c86f5ece3453f43fb
2018-02-16 05:04:16 +00:00