68 Commits

Author SHA1 Message Date
Kevin Zhao
7880ba665e openEuler 20.03 LTS SP2 support
openEuler is an open-source Linux based operating system. The current
openEuler kernel is based on Linux and supports multi arch, such as X86_64
and aarch64. It fully unleashes the potential of computing chips. As an
efficient, stable, and secure open-source OS built by global open-source
contributors, openEuler applies to database, big data, cloud computing,
and AI scenarios. openEuler is using RPM for package management.

Note:
Currently there is no available package for uwsgi-plugin-python3 and ovn, so that
openEuler needs manually install them from source.

Website: https://www.openeuler.org/en/

Change-Id: I169a0017998054604a63ac6c177d0f43f8a32ba6
Co-Authored-By: wangxiyuan <wangxiyuan1007@gmail.com>
Signed-off-by: Kevin Zhao <kevin.zhao@linaro.org>
2021-12-22 14:47:27 +08:00
Radosław Piliszek
2fb8c7a5ee Move verify-ipv6-only-deployments
from Tempest to DevStack as it tests DevStack side of things and
is useful for projects not using Tempest.

Verbatim copy except for the devstack- prefix and the /devstack/
path.

Change-Id: Ie166730843f874b9c99e37244e460d7ad33b7eeb
2021-06-07 17:44:54 +00:00
Ghanshyam Mann
580fec54c3 Make stackviz tasks not to fail jobs
Due to issue on stckviz side, job start
failing with POST_FAILURE. If we fix the
issue still we need to wait for periodic job
periodic-package-stackviz-element to publish
the latest tarball on https://tarballs.openstack.org/stackviz/dist/.

Let's not fail the job for any issue occur during
stackviz processing.

Closes-Bug: 1863161

Change-Id: Ifee04f28ecee52e74803f1623aba5cfe5ee5ec90
2021-04-08 22:17:56 +00:00
Radosław Piliszek
6f2c807bfa gzip, not xz
xz may cause POST_FAILUREs due to memory pressure [1].

[1] http://lists.openstack.org/pipermail/openstack-discuss/2021-April/021609.html

Change-Id: I2ea3175ecf2508b62640bfffdd798d7072e55550
2021-04-06 18:43:32 +00:00
Lee Yarwood
e11d367d8e orchestrate-devstack: Copy controller ceph.conf and keyrings to subnode
This change introduces a basic role to copy the contents of /etc/ceph
between the controller and subnodes during orchestrate-devstack allowing
a multinode ceph job to be introduced by
I9ffdff44a3ad42ebdf26ab72e24dfe3b12b1ef8b.

Note that this role is only used when devstack-plugin-ceph is enabled.

Change-Id: I324c0f35db34f8540ca164bf8c6e3dea67c5b1b4
2021-02-10 16:01:04 +00:00
Luigi Toscano
906d824a19 Fix: do not lose the tox_environment value in func tests
The current code always overrides tox_environment when running
functional tests, but the correct behavior is to add
the discovered environment variables to tox_environments,
while keeping the user-specified value for it.

The current behavior breaks the devstack-tox-functional children
jobs, like openstacksdk-functional-devstack-ironic, which set
tox_environment.

Change-Id: I5dc9054a1495ca0ef7745c08316441ab153956f4
2020-10-11 21:59:07 +02:00
Luigi Toscano
6fba3fdfa1 New get-devstack-os-environment role
The role reads the OS_* variables set by devstack through openrc
for the specified user and project and exports them as
the os_env_vars fact. It is meant to be used as a porting aid
for the jobs of the non-unified *clients only.

This is useful to run functional tests against the generated
environment. A slightly less generic version of this role
is currently used by python-cinderclient and python-novaclient
(get-os-environment).

In order to make this more useful, call it from
devstack-tox-functional and derived jobs. The role
execution is disabled by default and it can be enabled
by setting openrc_enable_export: true.

Change-Id: I15f5a187dbc54c82e8f4a08b4bb58d56e0d66961
2020-08-18 22:29:50 +02:00
Ghanshyam Mann
264d2a2e5f Move process-stackviz role from Tempest to Devstack
process-stackviz role currently defined in Tempest repo[1] and used
in tempest jobs. Issue with having it in branchless Tempest is that any
fix in that role cannot be backported to older Tempest. Also stackviz is
not Tempest things it is only used by Tempest jobs.

Stackviz can be considered as a service similar to Tempest so inatlling it in
Devstack side make sense. Also that will give us advantage to handle the
branch specific fixes or backpoting the fixes.

This can solve the current issues we are facing on rocky branch
- https://zuul.opendev.org/t/openstack/build/c1e2da80537448bfb24331fb4198a931/console#4/0/29/controller

[1] https://opendev.org/openstack/tempest/src/branch/master/roles/process-stackviz

Change-Id: I0ba1fd05c6391cd8bb978119ecfbb891def2d497
2020-06-19 20:32:09 +00:00
Mohammed Naser
332992ace2 setup-devstack-source-dirs: add var for paths
The paths for the devstack source directories are currently hardcoded,
this patch allows overriding that list.

Change-Id: I2b673b0d110d84658b89bb14663584330deaf3aa
2020-04-26 12:39:05 -04:00
Sean Mooney
d02fa6f856 do not gzip legacy service logs
This change removes the .gz extension from the
service and syslog logs exported via journalctl.
This change nolonger gzip compresses the exported
logs so that they can be rendered in the browser
directly when served from swift.

Change-Id: I4557a737cb13b9c2406056be08ab8a32ddd45162
2020-01-14 15:52:23 +00:00
Eyal
56b2e7fe8b fix a command typo
Change-Id: I01787641c887bfc0f4620b90b4ff488958dac53e
2019-12-19 13:32:55 +02:00
Andreas Jaeger
d3a2fcf485 Use list tables
Reformat overlong table into a list-table to make it easier to edit.
The change contains no wording changes besides giving titles to the
list-tables.

Fix formatting for setup-devstack-source-dirs so that the variable does
not get displayed with a grey bar at
https://docs.openstack.org/devstack/latest/zuul_roles.html#role-setup-devstack-source-dirs

Change-Id: I7378d46c507b1d86f1d5319655a55f2a8c5a8f60
2019-08-14 14:45:02 +02: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
45c1aa2f7d Merge "sync-devstack-data: new argument devstack_data_base_dir" 2019-05-20 07:46:21 +00:00
Monty Taylor
dc9ba8b8ae Add opendev to repo search list
glean is in opendev and is used by nodepool devstack jobs.

Change-Id: I38dfd7cc531b20b26862193be14f4ebb53352efa
2019-04-23 13:02:54 +00:00
Dean Troyer
e7f3d91a7d Update repo namespace search list
With the new namespaces we have to look around a bit more to find
repos top copy into the DevStack working directory. Add:

* starlingx/
* x/
* zuul/

Depends-On: https://review.opendev.org/653988
Change-Id: I8a55522a5fee46f415f0c0ce580ded3476133460
Signed-off-by: Dean Troyer <dtroyer@gmail.com>
2019-04-20 09:58:34 -05:00
OpenDev Sysadmins
666f5491b6 OpenDev Migration Patch
This commit was bulk generated and pushed by the OpenDev sysadmins
as a part of the Git hosting and code review systems migration
detailed in these mailing list posts:

http://lists.openstack.org/pipermail/openstack-discuss/2019-March/003603.html
http://lists.openstack.org/pipermail/openstack-discuss/2019-April/004920.html

Attempts have been made to correct repository namespaces and
hostnames based on simple pattern matching, but it's possible some
were updated incorrectly or missed entirely. Please reach out to us
via the contact information listed at https://opendev.org/ with any
questions you may have.
2019-04-19 19:43:10 +00:00
Luigi Toscano
3ffc00940f sync-devstack-data: new argument devstack_data_base_dir
When the role is used by grenade, the data directory is shared among
different devstack executions, and the base directory is different,
for example: /opt/stack/data vs /opt/stack/{old,new}.
The new devstack_data_base_dir parameter allows user to specify
a base directory for the data/ directory which is unrelated
to the devstack directory. The default value is devstack_base_dir,
so the default behavior is unchanged.

Change-Id: Ie69b7b51947cbf1a8b31d2701783de2fb56a2d33
2019-04-02 12:28:31 +02:00
Jens Harbott
7f0b4f3001 Fix double quoting issue when writing localconf
When [0] introduced quoting all arguments, it broke existing consumers
that already quote their value themselves. Fix this by avoiding to add
additional quotes to the value when it already starts with a double
quote.

[0] https://review.openstack.org/636078

Change-Id: I92146e04731efc6dcc632ae6c3a7c374e783cdba
Closes-Bug: 1822453
2019-04-01 11:43:28 +00:00
Ian Wienand
59ce1d902e Export all journal logs
Currently we only export the devstack@ services, and then separately
export the kernel & sudo logs to syslog.txt.

This leaves a lot of logs potentially behind in the journal for
various daemons.  Just export the whole lot.

Using this output is currently very opaque and makes use of systemd
export tools that are very un-discoverable.  Add a README that will
appear alongside the journal explaining how to actually use it.  This
is a template as it would be nice to put into things like the list of
services that are in the journal, or maybe other magic.

Also make sure we export the logs since the start timestamp; currently
during a full run we drop the initial logs.

Change-Id: Id2626f9113d82c6d524039acda8a8ec74afb2081
2019-03-29 11:20:19 -07:00
Ian Wienand
e769348882 Quote devstack_localrc arguments
If you have

 devstack_localrc:
   ARGUMENT: "argument with spaces"

The quotes get lost during YAML processing and the resulting file has

  ARGUMENT=argument with spaces

which is a shell error.

Quote all arguments to avoid this sort of thing.

Change-Id: Ia63a53d745dfea7262bcdb5d46425f431c3ccfe5
2019-03-29 11:20:14 -07:00
Zuul
18d1dc99b7 Merge "zuul: new variable to easily populate TEMPEST_PLUGINS" 2019-03-22 13:04:58 +00:00
Zuul
5ad2f21233 Merge "Switch GIT_BASE to https://" 2019-03-12 21:35:30 +00:00
Luigi Toscano
70d043dd60 zuul: new variable to easily populate TEMPEST_PLUGINS
TEMPEST_PLUGINS contains the list of the tempest plugins installed
alongside tempest by lib/tempest.
If TEMPEST_PLUGINS is not explicitly set, the new tempest_plugins
variable is used to fill it by combining its items with
the base devstack path.

Change-Id: I9f1fa2755e16871ff9d6ba33fdeaf3023eedf8d4
2019-03-12 22:25:44 +01:00
Zuul
ca0f292016 Merge "Capture the content of 'audit.log' file" 2019-03-12 20:51:16 +00:00
Luigi Toscano
610927f425 zuul job: write the enable_plugin lines last
Plugins must be the last items in the local.conf file
otherwise the configuration set in the rest of the file
is not applied to them (for example a different value of DEST.)

Change-Id: Ia001badca179c3f3436d5ecd26b0755a3f3a3078
2019-03-12 12:29:40 +01:00
Kashyap Chamarthy
4eb455aa28 Capture the content of 'audit.log' file
On CentOS/ Fedora machines, this can be useful when QEMU silently fails
to start up due to SELinux denials.  For Debian-based machines, which
use AppAromor, DevStack already captures the output of 'kern.log' (via
`journalctl -t kernel` redirected into 'syslog.txt.gz').

Change-Id: I231b22664f0944b905e00568759785615a1d47c3
Acked-by: Clark Bolyan <clark.boylan@gmail.com>
Signed-off-by: Kashyap Chamarthy <kchamart@redhat.com>
2019-03-08 13:49:25 +01:00
Ian Wienand
8b003e0ed2 Switch GIT_BASE to https://
Infra are looking at implementing gitea for serving git, but this does
not have a git protocol handler ATM.  Switch GIT_BASE, and some
testing, to https:// to be in a better position to handle this.

Change-Id: I97a7b0de7b1ec2dd15d15c58699a631b09273df1
Story: #2004627
Task: #29701
2019-03-04 16:50:42 +11:00
Sean Mooney
ee4b6a0128 set owner and group to no for fetch-devstack-log-dir
As the user on the node under test may not exist on
the zuul executor node we do not copy the log owner
or group to avoid the rsync task failing when it
tries to chown the files.

Change-Id: I500cf3692a4d27b0c2a0a4f5586580d180a8778e
2019-01-29 18:21:44 +00:00
Zuul
cc391e49d9 Merge "setup-devstack-source-dirs: also copy github libraries" 2019-01-16 10:35:23 +00:00
Jens Harbott
0b855007f8 Allow plugin names to contain non-letter characters
There are already devstack plugins that contain a hyphen in the name,
like `networking-baremetal`. In order to allow ordering for these to
work properly, amend the regexes we are using to match any
non-whitespace characters instead of only alphanumerics.

Amend the test to cover this use case.

Change-Id: I91093a424f8d5e8007f140083e1ea36a81fe849f
Closes-Bug: 1809016
2019-01-09 14:02:13 +00:00
Jens Harbott
6d103a7ff8 Fix testing for the write-devstack-local-conf role
The test_plugin_deps function in the test code for the
write-devstack-local-conf role was missing the import part of actually
executing the code under test and asserting the expected result.

Change-Id: I125870b13d2581cdec0dede11157b19b702565cd
2019-01-09 14:01:56 +00:00
Ian Wienand
7bb5fff85c setup-devstack-source-dirs: also copy github libraries
This will help us use standard mechanisms to install libraries that
Zuul has cloned from github

Change-Id: I8ecfeeba9133ce175fb72fc59be696879013d927
2018-12-19 18:44:47 +11:00
ghanshyam
14a22dff34 Fix README for rolevar name 'devstack_sources_branch'
This commit fixes the name of role in README file
- https://review.openstack.org/#/c/549517

Change-Id: I0b7ada56339e5e3ff461c2b62e27f226720bb52f
2018-12-06 10:23:51 +00:00
Andrea Frittoli
147388466d Setup branch in setup-devstack-source-dirs
Allow the setup-devstack-source-dirs role to accept a target role
to be setup - when available - for the repos.

Change-Id: Iebcba0d4be6d9d71b783e10a82c35a406afbd6bf
2018-09-13 17:50:32 +02:00
James E. Blair
8e5f8c29b2 Add the project under test to LIBS_FROM_GIT
This automatically always adds the project under test to LIBS_FROM_GIT
which effectively makes the normal "tempest full" job the same as the
"forward testing" job when it is applied to a library repo.

Change-Id: Ibbdd8a86e0ff55f67bef73e08e693b34a61b24df
2018-06-15 16:11:29 -04:00
Andrea Frittoli
afe1414019 Ensure passwordless ssh with stack between nodes
For compute migration to work, the stack user needs to be configured
with passwordless ssh between all hosts involved in the migration.

Reuse the build ssh-key for this, which is already distributed for
user root.

Depends-on: https://review.openstack.org/563584

Change-Id: Id07f55fea06509466add35315c135dbfba6aa714
2018-04-23 11:44:33 +00:00
Zuul
a0f319fc6d Merge "Automatically set LIBS_FROM_GIT based on required projects" 2018-04-19 12:44:31 +00:00
James E. Blair
e1edde38ed Automatically set LIBS_FROM_GIT based on required projects
If a project shows up in zuul's required-projects list, add it
to LIBS_FROM_GIT automatically.  This way, when a user specifies
that a job requires a zuul-project, it gets used in testing, but
otherwise, it doesn't (pypi is used instead).

Also add information about what happens behind the scenes for both
LIBS_FROM_GIT and plugin dependencies.

This moves the check performed in check_libs_from_git to
a helper function which is installed for most kinds of
installations.  This means that if someone sets LIBS_FROM_GIT to
"foobar", devstack won't error anymore, as nothing is going to
try to install foobar, therefore the check won't run on that.
However, as we move to automated generation of the local config,
that error is not likely to happen.  This check was originally
added due to an error in the upper-constraints file (where a
constraint name did not match a package name).  This location of
the check would still catch that type of error.

Change-Id: Ifcf3ad008cf42d3d4762cfb3b6c31c93cfeb40db
2018-04-17 13:48:37 -07:00
Zuul
9cc3e636fc Merge "Zuul: support plugin dependencies" 2018-03-23 05:56:30 +00:00
James E. Blair
6f27fca4a7 Zuul: support plugin dependencies
Change-Id: I81302e8988fe6498fea9f08ed66f5d0cc1fce161
2018-03-22 11:50:49 -07:00
Zuul
780c4f4092 Merge "Save rc from stack.sh in run-devstack role" 2018-03-13 12:14:41 +00:00
Jens Harbott
dc78ef8880 Save rc from stack.sh in run-devstack role
Avoid overriding the failure state of stack.sh by the trailing echo
command.

Change-Id: I74820709edc98f67ff1a0c620ce5db3a3571b7f5
2018-03-12 14:48:53 +00:00
Andrea Frittoli
02bb57bfef Enforce linear strategy for orchestrate-devstack
Document that orchestrate-devstack requires a linear strategy in the
invoking play. Also enforce the strategy in devstack.yaml.

Change-Id: Ia081225ec2be959fc5a4ddfd491f526296a8ca10
2018-03-11 11:17:42 +00:00
Zuul
5a6683dba1 Merge "Fix multinode mode for devstack" 2018-03-11 10:57:01 +00:00
Andrea Frittoli
5e714d3308 Fix multinode mode for devstack
Extend the devstack job so that it can support both single and multinode
cases.  Multinode mode require extra settings in devstack configuration,
some of which as subnode specific, some controller specific.

Also keep a simple devstack-multinode job defined for now so we can run
a multinode job in devstack gate, until the full tempest multinode job
is ready to match the old
gate-tempest-dsvm-neutron-multinode-full-ubuntu-xenial-nv.

Fixing multinode also requires sharing the CA configuration between
controller and peers, overlay network configuration for communication
between virtual machines and running discover_hosts for nova after the
subnode has been setup.

The extra orchestration required for multinode is encoded in a
dedicated role to allow for jobs in other repos to re-use it.

Change-Id: I2dcbd9bdb401860820e655d97aa3c4775af2827f
2018-03-07 12:47:55 +00:00
Zuul
52de6ee247 Merge "Ensure that stack home is owned by stack" 2018-03-06 11:11:46 +00:00
Zuul
edd4c8f6c1 Merge "Move platform jobs to zuulv3 native" 2018-03-05 12:47:59 +00:00
Andrea Frittoli
acca80414f Ensure that stack home is owned by stack
The role that sets up the user and its home folder must ensure that
the home folder is owned by stack as well.

Change-Id: I2e72d7b9d68a2a14f8a148ef82cbb3f569bd1cea
2018-03-03 22:16:50 +00:00
Pavlo Shchelokovskyy
b59c93cc44 Actually generate pip freeze outputs
the shell script used is actually being run thru 'sh', not bash,
which does not understand "[[" test operators.

Explicitly run this script with /bin/bash instead.

Change-Id: I551d2631bcb6aef49550d69b3830ffcb509abfb7
2018-02-28 10:45:54 +00:00