1599 Commits

Author SHA1 Message Date
Monty Taylor
c2830fb267 Revert "Run pip check at end of devstack"
This reverts commit 79b8e79488a6268f37244188ab831e99a99648c8.

This is breaking things in various jobs, most notably because
we do not put constraints on linters - but we install
test-requirements which then can conflict with each other.

Change-Id: Ibc5603c61b38ce44db58fb27a27352f59123ad09
2020-03-27 11:12:31 -05:00
Monty Taylor
c26dfb0d6f Run pip check at end of devstack
The new pip depsolver is coming this summer. Until it's ready,
run pip check at the end of devstack to make sure we're not
somehow installing conflicting package versions. We shouldn't
be, because of constraints, but if we are, better to know and
start figuring it out.

Change-Id: Id98f0848ff5a252d93e5f8029df2d069924d603f
2020-03-26 09:44:23 +00:00
Lee Yarwood
347abd41ce Drop Fedora 29 support
With fedora-latest now using Fedora 30 images and Fedora 29 itself EOL
we can now remove support for it from devstack. This change also cleans
up references to earlier Fedora releases under files/rpms/.

Change-Id: I24332f7016ebb549ea678acf677c477b55ec4d4b
2020-02-18 11:38:34 +00:00
Lee Yarwood
f1966d7763 Add Fedora 30 as a supported distro
With Fedora 29 now officially EOL [1] we need to start the move to 30. A
later change will remove f29 support from devstack entirely once
fedora-latest moves to the based f30 image.

[1] https://lists.fedoraproject.org/archives/list/devel-announce@lists.fedoraproject.org/thread/VUK3CJ5LO4ROUH3JTCDVHYAVVYAOCU62/

Change-Id: If87fe93757129f931a3417fc6275ffad280cdf46
2020-02-18 11:38:33 +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
80758e6932 Merge "Always install python3 and its dev package" 2020-02-15 16:01:08 +00:00
Federico Ressi
19e4d97288 Install psutil required by tools/mlock_report.py script
'tools/mlock_report.py' script requires 'psutil' package to be
installed. This ensures it is done before memory_peak service is
started.

Partial-Bug: #1860753
Change-Id: I7b2b6eaf9856c6057e1a4a0054d15074150a6cb6
2020-01-27 08:08:59 +00:00
Terry Wilson
78cf6f642a Always install python3 and its dev package
Some distros do not install python3/python3-devel with the minimal
install. F29 doesn't install -devel, and neither Centos 7 or 8
install either. This patch ensures that these packages get installed.

Ideally, PYTHON3_VERSION would be set *after* ensuring that python3
was installed, but it gets a little tricky with all of the includes.
This sets it to 3.6 as nothing uses 3.5 anymore.

Change-Id: I7bdfc408b7c18273639ec26eade475856ac43593
2020-01-22 20:03:29 -06:00
Radosław Piliszek
09e860fc2c Run Glance initialization when Glance is enabled, not just registry (v2)
Per [1] Glance registry should not be required to run since Queens.

v2 improves on v1 [2] (now reverted [3]) by applying minor comments
from reviews so far and ensuring nova-live-migration job does not see
a change in behavior and hence does not break [4].
[5] tried to fix the issue but it did only partially, regarding
the database but not the image upload [6].
This patch ensures double cirros image upload does not happen as well.

[1] https://specs.openstack.org/openstack/glance-specs/specs/queens/approved/glance/deprecate-registry.html
[2] https://review.opendev.org/702707
[3] https://review.opendev.org/703131
[4] https://bugs.launchpad.net/devstack/+bug/1860021
[5] https://review.opendev.org/702960
[6] https://bugs.launchpad.net/devstack/+bug/1860021/comments/16

Change-Id: I61538acd6bd4c7b3da26c4084225b220d7d1aa2c
Closes-bug: #1859847
Related-bug: #1860021
2020-01-22 13:43:06 +00:00
Stephen Finucane
48d1f028c4 Revert "Run Glance initialization when Glance is enabled, not just registry"
This reverts commit d8dec362baa2bf7f6ffe1c47352fdbe032eaf20a. This has
knock on effects for devstack-gate, which configures g-api on subnodes
node but not mysql, resulting in failures. A longer term fix would be to
either a) stop configuring g-api on subnodes if we can determine it's
not necessary or b) only configure the database if on the main node.
However, both options are subject to debate so for now just unclog the
gate.

Change-Id: I58baa3b6c63c648836ae8152c2d6d7ceff11a388
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
Closes-bug: #1860021
2020-01-17 17:42:23 +00:00
Radosław Piliszek
d8dec362ba Run Glance initialization when Glance is enabled, not just registry
Per [1] Glance registry should not be required to run since Queens.

[1] https://specs.openstack.org/openstack/glance-specs/specs/queens/approved/glance/deprecate-registry.html

Change-Id: I5477c8769ff4ae151d4d6ccb5e5d8dd5788909b0
Closes-bug: #1859847
2020-01-15 18:34:21 +01:00
Ian Wienand
bcb2c30c31 Remove TRACK_DEPENDS
This was added in 2012 with I89677fd54635e82b10ab674ddeb9ffb3f1a755f0,
but I can not see it being used anywhere currently.

It's use of virtualenv's has become problematic in a python2
deprecated world, but since it is not used, remove it to avoid further
confusion.

Change-Id: I65d44d24f449436ca6229928eee2c5a021793055
2020-01-13 16:31:20 +11: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
Matt Riedemann
b14665f0dd Revert "Remove deprecated PostgreSQL database driver"
This reverts commit 168ca7f0a474f1207ee01dab0ca2e70f34783e9c.

Removing postgresql support from devstack was unnecessary
since it's not broken and not causing maintenance issues
as far as I know. The commit being reverted said that pg
support was deprecated in Pike but nothing in the docs or
commit message refer to official deprecation of postgres
support in devstack or openstack in general. Not to mention
that there are still postgres-based jobs that will no
longer work *and* the notification to the mailing list about
doing this happened *after* it was already done [1] leaving
stakeholders with no time to reply.

[1] http://lists.openstack.org/pipermail/openstack-discuss/2019-October/010196.html

Change-Id: Ie7036d37d79e6aba462b7c97f917e2e7aed108f9
2019-10-17 15:58:34 -04:00
Zuul
cf1c847191 Merge "Remove deprecated PostgreSQL database driver" 2019-10-17 11:39:34 +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
Zuul
c6a4c4547d Merge "Switch to fedora-29 for fedora-latest nodeset" 2019-09-13 15:17:20 +00:00
Zuul
7d2663d44c Merge "oscwrap: make a little quieter" 2019-09-13 10:00:44 +00:00
Stephen Finucane
168ca7f0a4 Remove deprecated PostgreSQL database driver
This was deprecated for removal in Pike. It's probably time to drop it.
Note that the 'postgresql-devel'/'postgresql-server-dev-all' packages
are retained since some packages still include 'psycopg2' in their
general requirements.

Change-Id: I51e8354e99972757253ce259e6c03c91da24398c
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2019-08-26 10:16:06 +01:00
Zuul
6926ed8ac5 Merge "Merge (don't overwrite) $NOVA_CPU_CONF" 2019-08-22 18:37:26 +00:00
Eric Fried
2468ceaa72 Merge (don't overwrite) $NOVA_CPU_CONF
Per the referenced bug, $NOVA_CPU_CONF was previously being initialized
by copying $NOVA_CONF, thereby trashing any values already configured in
$NOVA_CPU_CONF.

With this commit, we merge the values from $NOVA_CPU_CONF in after the
copy.

Note that this makes use of the merge_config_file function, which is
defined in inc/meta-config, which wasn't being sourced from every code
path that hit start_nova_compute; so this commit also moves that import
from stack.sh to functions (next to the other imports from inc/, which
makes sense anyway).

Change-Id: Id3e2baa2221e13f512f8dcf1248e1e15b6a7597f
Closes-Bug: #1802143
2019-08-22 13:34:17 +00:00
Zuul
5406b6f3cc Merge "Permit use of sudo-ldap instead of sudo package" 2019-08-20 10:41:05 +00:00
Brian Haley
005004eded Switch to fedora-29 for fedora-latest nodeset
F28 is EOL as of 5.29.19, so change to use fedora-29
and remove it from stack.sh.

Depends-on: https://review.opendev.org/#/c/662538/
Change-Id: I5ebdb68fcd01a1e63be4b3c0735a274783aad818
2019-08-14 17:10:20 -04:00
Ian Wienand
474f535a14 oscwrap: make a little quieter
A huge part of the logs is irrelevant bash aliases captured by the
openstack client timing wrapper from the run of "openstack complete",
which is only helpful on interactive systems where you'll interact
with the command line.  Call it directly to avoid capturing the logs.

While we're here, turn off tracing inside the oscwrap function, which
is called frequently.  It's not useful for debugging.

Change-Id: I1cb5399fe7ee6f0e547a9cfff70396aa2007632e
2019-08-08 09:15:11 +10:00
Graham Hayes
352d58a7af
Only modify folders created by devstack
running chown and chmod on files and folders not created by
devstack causes a few issues:

* On nfs mounted directories it can take an extremely
  long time to chown -R some of the git repos, especially
  if any tox commands have been ran in the host
* chown can cause the host files to get into a weird state
  if nfs is set up wrong.

If files and folders are pre-existing we should assume
they are in the correct state, and not modify them.

Fix setup-devstack-log-dir to create the logs directory with
correct permissions in the first place.

Change-Id: I5ebdaded3ffd0a5bc70c5e9ab5b18daefb358f58
Signed-off-by: Graham Hayes <gr@ham.ie>
2019-07-26 11:49:29 +01:00
Zuul
ffbab01c08 Merge "Add and switch to the newly created opensuse-15 nodeset" 2019-07-26 09:52:04 +00:00
Zuul
8072595150 Merge "Remove the usage of read_password from library files" 2019-07-15 12:15:42 +00:00
Dirk Mueller
70fca49de7 Add and switch to the newly created opensuse-15 nodeset
opensuse-150 nodeset is referring to openSUSE 15.0, which is still in
maintenance but openSUSE 15.1 has been released already. "opensuse-15"
is going to refer to the "latest openSUSE 15.x" build released and
working for OpenStack going forward, so add this nodeset and use
it by default going forward.

Change-Id: Ic3f4d6998a66da5226bc95088d7e3c83dfe737ce
2019-07-03 19:16:03 +02:00
Carlos Goncalves
8b31dce38b Fix rdo-release install
The URL for rdo-release package is version-less and redirects to latest
stable version. This becomes problematic when stacking older stable
versions as dependencies might not be met or newer and incompatibile
ones might get installed.

Closes-Bug: #1833696

Change-Id: Icb07dcb4c9a3950a3c31a3a8dcb8d0b4c713fdb1
2019-07-01 13:05:51 +02:00
Zuul
5e09df086c Merge "Install from bindep.txt in plugins" 2019-06-21 08:04:35 +00: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
Stephen Finucane
4b8cba77fe Remove n-cells, n-net and n-cauth
Remove nova cells v1 support, which also allows/necessitates removing
support for nova networks (which was only supported with cells v1) and
nova-consoleauth (which was required by cells v1 but is unnecessary
otherwise).

The Depends-On isn't really necessary, but it's here to make sure this
doesn't merge until we _really_ have killed cells v1.

I honestly expected this patch would be bigger.

Change-Id: I90316208d1af42c1659d3bee386f95e38aaf2c56
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
Depends-On: Ib0e0b708c46e4330e51f8f8fdfbb02d45aaf0f44
2019-05-31 15:10:05 +01:00
Zuul
fdbe849d95 Merge "Deprecate swift3, use s3api in Swift repo" 2019-05-20 07:46:19 +00:00
Kota Tsuyuzaki
070e4ee65e Deprecate swift3, use s3api in Swift repo
swift3 is no longer actively maintained in the upstream.
That has been moved to Swift repository as s3api so we should
use s3api middleware instead. As well as swift3, s3token is
also maintained in Swift upstream.

Change-Id: I4582d81da066ab53e6f11ad1df7af91425f2b0ca
2019-05-01 18:07:58 +00:00
Matt Riedemann
9e3b3bf524 Add nova-status upgrade check call post-deploy
Once nova is setup and n-cpu on the host is reporting
a service record and discovered (the host is mapping in
the API DB), we should run the nova-status upgrade check
to verify the deployment.

Change-Id: I9683bf94233ebacb3057ce159cb3dc53aa55a2f4
Related-Bug: #1790721
2019-04-30 18:28:36 -04:00
Zuul
53ee5230c6 Merge "stack.sh: Clear OpenStack related envvars" 2019-04-12 21:14:28 +00:00
Akihiro Motoki
1348ac990d stack.sh: Clear OpenStack related envvars
stack.sh usually fails when it is started in a shell session
where OpenStack related environment variables OS_* are set.
Most common failure scenarios are failures in keystone operations.

This commits clears OpenStack related environment variables
at the begining of stack.sh.

Change-Id: I3a924a0586dc9bb28f3bf3e151e100c24015efe5
2019-04-06 11:57:55 +00:00
Clark Boylan
cc072fd32f Run devstack CA and cert setup early
Previously apache was configured and restarted before we configured
the CA and certs. In most cases this is fine because those specific
vhosts didn't use tls. However, if you had previously run devstack
and had leftover vhosts and an unconfigured CA or certs devstack would
fail.

This is a small corner case, but its simple to address by moving CA and
cert setup up in stack.sh to before we do anything related to web
servers.

Change-Id: I31dbaf9471088b9faff26c7b790da6f6feebb2d5
2019-04-05 17:34:01 -07:00
Ian Wienand
2bbc9bbbb8 Add service to tcpdump during run
This adds a service to run a tcpdump during the run.  This can be
useful to capture various network traffic for post analysis.

There didn't seem to quite be an appropriate place to document it, so
a new debugging file is started, with some terse explaination of our
various system-wide debugging services.

Change-Id: I09aaa57611c5047d09a9bce7932d34e9d50b30e6
2019-03-29 11:20:19 -07:00
Luigi Toscano
29771c1c1e Remove the usage of read_password from library files
The read_password function is defined inside stack.sh
and it cannot be used inside the "public library interface"
provided by DevStack.

Move the calls found inside library files to stack.sh,
following the same pattern of the other calls to read_password.

Change-Id: I8adc6723b677dfac2bef735f660e056c498bf773
2019-02-21 10:37:45 +01:00
Zuul
f3302dcee3 Merge "Add options for development bindep install" 2019-02-06 16:34:57 +00:00
Ian Wienand
fa9aadfdd8 Install from bindep.txt in plugins
This allows plugins to specify their binary dependencies in bindep
format.

Some thinking on the implementation: this is in contrast to the
files/[deb|rpm] installation, which is called from the external
install_prereqs.sh script.  This script being an externally callable
entry-point is really an artifact of the days when we would build
snapshot images for CI and wanted to pre-cache downloads.  These days
we use the mirror system to keep packages close to CI nodes.  Thus
rather than expand install_prereqs.sh to also be installing
virtualenvs and python dependencies, this seems to fit better as a
separate internal phase of stack.sh.

Documentation is updated

Change-Id: Icbdfbf97c17c906a7ae86f43e80eb2c445816228
2019-01-16 11:14:09 +11:00
Ian Wienand
58243f6203 Add options for development bindep install
This adds a -bindep option to the key development library install
functions.  With this option the bindep.txt file will be referenced
and the relevant packages installed.

Change-Id: I856f1f59fca49b6020920d8f859b797f3b904300
2019-01-14 16:35:12 +11:00
Lee Yarwood
77866259e4 Update supported Fedora releases
Fedora 27 has now hit EOL [1] while Fedora 29 has been released [2].

[1] https://fedoramagazine.org/fedora-27-end-of-life/
[2] https://fedoramagazine.org/announcing-fedora-29/

Change-Id: I12e287e36f01581f1c7145545ab05be527ed15c6
2019-01-04 20:53:44 +00:00
Carlos Goncalves
d2a927264a Enable the SCL repository for CentOS
Enable the Software Collections (SCL) repository for CentOS. This
repository includes useful software (e.g. the Go Toolset) which is not
present in the main repository.

For example, Octavia uses a Go based testing tool and its CentOS-based
jobs got broken now with the update to CentOS 7.6 which no longer
provides golang.

Change-Id: Ic68a6d6cd7da41510e624b6bea7976d9a960af98
2018-12-04 21:15:56 +00:00
Chris Dent
78a564bb03 Use openstack/placement instead of placement-in-nova
We introduce and set PLACEMENT_REPO, add a placement-manage command
to sync database tables (see one of the commits on which this
depends), use /etc/placement/placement.conf for config, and put the
uwsgi config file (pointing to placement-api instead of
nova-placement-api) in /etc/placement.

openstack/placement is also added to the required-projects in
the devstack zuul job.

Change-Id: I0b217e7a8c68a637b7a3445f6c44b7574117e320
2018-11-27 10:35:04 +00:00
Dirk Mueller
297a50ac86 Convert to openSUSE Leap 15.0 platform testing
Leap 15.0 has been released May 25th, 2018 (see
https://en.opensuse.org/Portal:15.0 ) and we'd like to
transition devstack against it and remove Leap 42.3 from
the testing matrix. Leap 15.0 is newer than Leap 42.3 as
the numbering schema of openSUSE was changed.

Co-Authored-By: Antonio Ojea <itsuugo@gmail.com>

Change-Id: I078f9a2580160c564c33e575008516f5e92239d6
2018-10-08 07:09:21 +00:00
Zuul
9106b291bd Merge "Init placement before nova" 2018-06-14 12:20:41 +00:00
Paul Belanger
bed03ea77a Switch to fedora-latest for nodeset name
To help avoid the amount zuul.yaml chrun when we bring a new version
of fedora online, switch to using fedora-latest. As of writing,
fedora-28 is the latest release which we update our testing for.

Also add fedora-28 support to stash.sh and remove fedora-25 /
fedora-26 as they are EOL.

Change-Id: I3d716554e8f270f4434cc9cac3408f8e890e0665
Depends-On: https://review.openstack.org/565758/
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2018-05-03 10:53:18 +10:00
Chris Dent
e8bad5cd6a Init placement before nova
With change I7e1e89cd66397883453935dcf7172d977bf82e84 the placement
service may optionally use its own database. In order for this to
work, however, the ordering of how both nova and placement are
configured and initialized in stack.sh requires careful control.

* nova.conf must be created first
* then placement must make some adjustments to it
* then lib/placement needs to create the placement database
* before nova does a database sync (of both databases)

Otherwise, when the placement_database/connection is defined, the nova
db_sync command will fail because the placement database does not yet
exist. If we try to do a sync before the nova_api database is created
_that_ sync will fail.

This patch adjusts the ordering and also removes a comment that will
no longer be true when I7e1e89cd66397883453935dcf7172d977bf82e84 is
merged.

Change-Id: Id5b5911c04d198fe7b94c7d827afeb5cdf43a076
2018-04-25 14:55:59 +01:00