1428 Commits

Author SHA1 Message Date
Jenkins
23fc4e0342 Merge "Revert "stackrc set the LC_ALL to C"" 2016-08-30 06:10:58 +00:00
Jim Rollenhagen
9301e8875b Revert "Setup cellsv2 for Nova"
This reverts commit b1a4f34bfc6adb9ab4577520601c44e8ccff277d, which
breaks Ironic's jobs. For example:
http://logs.openstack.org/90/355390/1/check/gate-tempest-dsvm-ironic-ipa-wholedisk-agent_ssh-tinyipa/b9e264a/logs/devstacklog.txt.gz#_2016-08-15_17_31_13_358

Change-Id: Iafc579f73fe4a97056944872e2f2c8cd1a62c21c
2016-08-15 14:58:43 -04:00
Jenkins
8cf4a81bfc Merge "Setup cellsv2 for Nova" 2016-08-15 16:40:59 +00:00
Andrew Laski
b1a4f34bfc Setup cellsv2 for Nova
Run "nova-manage cell_v2 simple_cell_setup --transport_url ..." after
Nova is started. This will add all compute hosts into a new cell, and
setup a db for cell0.

Change-Id: I50a955b97d0e18426406c15397bdfbc9e807d908
Depends-On: I559f9c87e89926414b368cac9442dec4eadcb89b
2016-08-12 06:48:45 -07:00
Ian Wienand
9162608d6e Revert "stackrc set the LC_ALL to C"
This reverts commit f327b1e1196eacf25e7c4c9e3a7ad30c53bb961c.

The problem being addressed in the original commit was that
rejoin-stack.sh would run with the user's locale, instead of C that
was set in stack.sh

We overlooked that this gets pulled in by openrc, so it is overriding
the user's locale when using clients, etc.

rejoin-stack.sh was removed in
I2f61bb69cc110468a91dcaa4ee7653ede7048467 so we don't have to worry
about that part.  A revert to not touch the user's locale seems
appropriate.

Change-Id: I7c858bb92ce7ba5b5d323bf3ad6776100026c7a2
Closes-Bug: #1608687
2016-08-04 15:21:31 +10:00
Sean Dague
b8286a3a06 remove neutron 3rd party infrastructure
This was used solely by bigswitch, and everyone else has moved over to
devstack plugins. Cleaning this out makes the core logic much simpler.

Depends-On: I8fd2ec6e651f858d0ce109fc335189796c3264b8
(grenade removal)

Change-Id: I47769fc7faae22d263ffd923165abd48f0791a2c
2016-08-03 19:25:45 +00:00
Kashyap Chamarthy
eecb983529 Remove support for End Of Life (EOL) Fedora 22
Fedora 22 reaches its EOL on 19-JUL-2016[1].  Remove it as
officially supported distribution.

The current two supported Fedora distributions are Fedora 23 and Fedora
24.  (Change Ia4a58de4973ef228735c48b33453a0562dc65258 already added
support for Fedora 24.)

[1] https://fedoramagazine.org/fedora-22-end-of-life-2016-july/

Change-Id: I5b4e1ddb6165a9065e80e84175246678a7356f18
2016-07-13 12:36:13 +02:00
Patrick East
657cdcdbd1 Allow for Nova to use os-brick from git
This option to install os-brick from git was only added
into lib/cinder previously. When testing all-in-one nodes
this worked fine, but if you have multi-node setups with
compute nodes that don't install any c-* services we
only get packaged os-brick. With this change non-cinder
nodes can now test against unreleased os-bricks.

Change-Id: Ibb7423d243d57852dada0b6298463bbdfc6dc63c
2016-07-12 09:01:00 -07:00
Jenkins
aeb8d81897 Merge "Add an explicit test-config phase to devstack plugins" 2016-06-14 20:53:12 +00:00
Attila Fazekas
72b233c1e0 Allow to use Fedora 24 with devstack
Looks like f24 does not have any special change compared to the
previous release, we just need to add f24 where f23 present.

Change-Id: Ia4a58de4973ef228735c48b33453a0562dc65258
2016-06-01 16:52:41 +02:00
Jenkins
bc4b96b794 Merge "Neutron: stop creating neutron debug probes" 2016-05-26 04:10:51 +00:00
Sean M. Collins
5e01c47e4d Neutron: stop creating neutron debug probes
They seem to be more trouble than they are worth.

http://lists.openstack.org/pipermail/openstack-dev/2016-May/095476.html

Neutron has already deprecated the utility in
https://review.openstack.org/#/c/318786/

Change-Id: I470ed5bc1cbe754c4bfae41f411150331bc4335d
2016-05-25 09:38:41 -07:00
Ian Wienand
bda194adb9 Skip EPEL & RDO install for CI nodes
If the nodepool info file is around, assume we're on a OpenStack CI
node and skip re-installing EPEL & RDO

Change-Id: Ife80af015b26514098e0633f568e3da35b9eea8c
2016-05-18 10:42:56 +10:00
Jenkins
8bbeb9db0a Merge "Nova conf:don't use deprecated option "fixed_key" from group "keymgr"" 2016-05-17 10:08:12 +00:00
Jenkins
b1bb5380dc Merge "Begin new lib/neutron" 2016-05-11 16:59:17 +00:00
Jordan Pittier
50f22da895 Nova conf:don't use deprecated option "fixed_key" from group "keymgr"
That option now lives in the "key_manager" group.

Change-Id: I35c2914eaf2a190d6494107260483a6835de3e47
2016-05-10 15:04:44 +02:00
Sean M. Collins
2a242519f7 Begin new lib/neutron
Background for this work can be read on the mailing list:

http://lists.openstack.org/pipermail/openstack-dev/2016-May/094063.html

Usage of the new Neutron is by setting the following in
ENABLED_SERVICES:

* neutron-api
* neutron-l3
* neutron-agent
* neutron-dhcp
* neutron-metadata-agent

For now, the new neutron library supports just the ML2 plugin, with the
Open vSwitch and Linux Bridge agents supported. All other Neutron
plugins should be creating their own DevStack plugin if they wish for
DevStack to support them. Many of them already do.

Other notable changes compared to neutron-legacy:

* Rely on the Neutron defaults, and force Neutron to make
  sane defaults instead of all kinds of knobs in DevStack.

* Default to rootwrap daemon support

* Use the security group driver by default

* interface_driver can now use NEUTRON_AGENT (linuxbridge, openvswitch), since
  they are entrypoints in neutron's setup.cfg

* Use NEUTRON_AGENT variable to determine which agent to run
  Works with NEUTRON_AGENT set to either "linuxbridge" or "openvswitch"
  Default is openvswitch for the time being.

* Set ML2 configuration for VXLAN support

* Remove Xen hypervisor stuff - it should be a plugin

* Move L3 crud into separate service file:

  There's a lot of L3 configuration that was in the main neutron file, but
  a lot of it is self contained and can be moved into its own file.

  The new l3 service file will contain all the previous L3 plumbing and
  configuration that the OpenStack Gate expects, while also eventually
  moving the whole l3 network creation step into a single hook that can be
  overridden by plugins.

* Introduce a check for a function "neutron_plugin_create_initial_networks" which
  will become the mechanism through which different topologies, and
  networking plugins can create and wire the initial networks that are
  created during a stack.sh run.

The new lib/neutron is considered experimental, and followup patches
will build upon this one. Existing users of lib/neutron-legacy should
remain unharmed.

Co-Authored-By: Hirofumi Ichihara <ichihara.hirofumi@lab.ntt.co.jp>
Co-Authored-By: Dean Troyer <dtroyer@gmail.com>
Change-Id: I31b6362c6d9992f425f2dedbbeff2568390a93da
2016-05-09 14:26:08 -04:00
John L. Villalovos
daa7a41e21 Export the 'short_source' function & don't keep PS4 in sudo
Export the 'short_source' function so that it will be present in the
environment for child shell scripts. Do this because we are passing PS4
to the child shell scripts and it is using 'short_source'

Don't do an 'env_keep' in the sudoers file for PS4, since it is
difficult to also pass along the 'short_source' function.

Change-Id: I9781010d6eb336d02939c7fd47f18bedeae5ccc6
Closes-Bug: #1563443
2016-05-06 10:50:58 -07:00
Matthew Treinish
655c22c77f
Add an explicit test-config phase to devstack plugins
This commit adds a new phase to the devstack plugin interface for
configuring test environments. It runs after everything in devstack
(except for the final output commands) to ensure that tempest or
any other dependency is installed prior to running it.

Change-Id: I52128756f18d3857963a0687de77f7cdfd11fb3e
2016-05-04 17:31:45 -04:00
zhiyuan_cai
6f1781f968 Fix DevStack failure in multi-region setting
In stack.sh, REGION_NAME is used to set environment variable
OS_REGION_NAME before using OpenStack client to configure accounts
for services. OpenStack client will try to find Keystone endpoint
in REGION_NAME to send the requests.

However, in the case of deploying multiple DevStack instances in
different regions with shared Keystone, Keystone is only running
in one the of region. When installing DevStack for the region that
does not host Keystone, OpenStack client will fail to find the
Keystone endpoint and thus DevStack fails to start.

This patch fixes this bug by introducing KEYSTONE_REGION_NAME for
user to specify which region Keystone is running in. Document of
multi-region setup is also updated.

Change-Id: I3e82c7ff69326d4171623299ffecea103d40c80d
Closes-Bug: #1540802
2016-04-12 14:54:11 +08:00
Paul Belanger
cdf9c0f73b Replace vivid support with xenial
Ubuntu vivid support is EOL lets make room for xenial.

Change-Id: I21c4966c80e0b5fc2b1a7448020dd1c75e0070ad
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2016-04-08 14:54:18 -04:00
Dan Smith
4b205db45b Create default flavors in nova
This makes devstack create default flavors in nova, like cinder, now
that nova no longer hard-codes them into its database.

The flavors created here match the legacy default flavors that nova
kept for so long, and also creates a new devstack-namespaces set of
flavors which are likely more useful for people.

Change-Id: Ic275887e97221d9ce5ce6f12cdcfb5ac94e300b0
2016-04-05 12:50:04 +00:00
Jenkins
677e14a4d1 Merge "Add OS_CACERT to userrc_early and ensure SERVICE_HOST is SAN" 2016-03-30 23:40:13 +00:00
Rob Crittenden
be00e95da5 Add OS_CACERT to userrc_early and ensure SERVICE_HOST is SAN
OS_CACERT was being added directly to the environment rather
than usercc_early. This caused an untrusted CA error to be
thrown.

Ensure that SERVICE_HOST is in the Subject Alt. Names of the
issued TLS server cert. The gate sets it to 127.0.0.1 which
wasn't being handled. Only the FQDN of the host and actual
IP address of the machine were being added.

Change-Id: I8a91dffe1a5263d2bcc99ea406a8556045b52be2
2016-03-28 10:00:52 -04:00
Sean Dague
8b416ae821 run swift blocks if any services are enabled
Previously the swift blocks only ran if s-proxy is enabled, which
prevents a multinode configuration. We should run these blocks if any
swift services are enabled, and push proxy specific conditionals one
step lower.

Change-Id: I540a97615b3c19f882c8673b1a4a29cd47e36aa8
2016-03-25 08:58:54 -04:00
Ian Wienand
3bf69e835a Remove EC2 API from devstack
This all started with an investigation into Fedora's use of ecua2ools
package.  This package is a bit of a nightmare because it pulls in a
lot of other system-python packages.

For Ubuntu, this package was removed in
I47b7e787771683c2fc4404e586f11c1a19aac15c.  However, it is not
actually a "pure python" package as described in that change, in that
it is not installable from pypi.  I can't see how you could actually
run exercises/euca.sh on Ubuntu unless you installed euca2ools by hand
-- ergo I suggest it is totally unused, because nobody seems to have
reported problems.

In the mean time, ec2 api has moved to a plugin [1] anyway where the
recommendation in their README is to use the aws cli from amazon.

Thus remove all the parts related to EC2 and ecua2ools from base
devstack.

[1] https://git.openstack.org/cgit/openstack/ec2-api

Change-Id: I8a07320b59ea6cd7d1fe8bce61af84b5a28fb39e
2016-03-15 13:32:23 +11:00
Sean Dague
7580a0c3e3 Replace TENANT => PROJECT phase 1
This replaces the use of TENANT variables with PROJECT ones during the
initial setup. The openrc will still export a OS_TENANT_NAME because
many tools (cinderclient, glanceclient amoung them) will not function
without it. We warn when we do that.

Change-Id: I824b1121842eb5821034071874bf1bb2d7c3631e
2016-02-22 11:55:17 +11:00
Jenkins
5073896cc9 Merge "Only use lsb_release for distro tags" 2016-02-14 14:42:43 +00:00
Sean Dague
e73f88e70b tweak ps4 for readability
After staring at a bunch of logs, try to crisp up the ps4 output for
maximum readability.

This also adds PS4 to all calling scripts by having a common PS4 in
stackrc. It should make understanding when clean fails a bit more
straight forward.

Change-Id: Ia1f8dff5c1102c32c146a020a9f033c65d2c50de
2016-02-04 07:47:45 -05:00
Jenkins
5601dff54d Merge "Set PS4 in stack.sh to provide additional debug info" 2016-02-03 00:26:04 +00:00
John L. Villalovos
09883c0a18 Set PS4 in stack.sh to provide additional debug info
Add:
export PS4='+(${BASH_SOURCE}:${LINENO}): ${FUNCNAME[0]:+${FUNCNAME[0]}(): }'

To stack.sh to provide additional debug info. This will show the
filename, line number, function name, and the content of the line.

An example output line:
+++(/opt/stack/old/devstack/functions-common:675): get_field(): local data field

Info on this PS4 variable found at:
http://wiki.bash-hackers.org/scripting/debuggingtips

Change-Id: I272df6c79f6ff7afa8f102da24706558d9169eda
2016-01-28 18:06:49 -08:00
Jenkins
b86f665d95 Merge "Rdo-release install failure under proxy" 2016-01-28 00:21:56 +00:00
Jenkins
a7b21cd858 Merge "Create LOGDIR earlier in the process" 2016-01-25 15:41:25 +00:00
Yusuke Hayashi
6e18721882 Rdo-release install failure under proxy
In RHEL under proxy, installation by stack.sh failed
because of rdo-release.rpm install failure.

This patch fixes install command for rdo-release.rpm
because it is caused by lack of http(s)_proxy.

Change-Id: I176d1e140f52e1bb0343170ba4d90c06b98d5a99
Closes-Bug: #1536478
2016-01-22 07:12:38 +09:00
Matthew Treinish
4af2afcd52
Add subunit output for total elapsed time
This commit adds a success output for the entire devstack run to the
subunit output. Ideally we wouldn't need this, but because we don't
have timing data for every single operation performed by devstack we
need to do this to track the total duration of the devstack run.

To capture failures this commit adds saving a devstack event when we
trip the exit_trap. This will save a similar result to the stream in
the successful case, but instead mark it as a failure.

Depends-On: Icc7df33e4d73ba6322af38fbdf3aea230f2fcf4d
Change-Id: I07112dde996c3e2c73f5aafc9b73d33d26374633
2016-01-19 17:22:55 -05:00
Ihar Hrachyshka
09a3e715ec Create LOGDIR earlier in the process
Specifically, before _install_epel_and_rdo is called, that may need to log an
error.

Change-Id: I4979eb9530e6ea366c99d168587b87ea358dc908
2016-01-13 11:35:35 +01:00
Ian Wienand
7710e7fc27 Only use lsb_release for distro tags
The existing GetOSVersion has a lot of unused code which is wrong in
several ways

 - the only path tested in upstream CI is with lsb_release, because
   it's pre-installed on all nodes

 - the /etc/redhat-release checking probably still works, but is
   unnecessary

 - If using lsb_release, os_UPDATE has never actually been set.

 - the /etc/SuSE-release branch checking is broken if the lsb package
   is actually installed.  lsb checking does not set os_UPDATE but yet
   the SuSE DISTRO setting relies on this to set a patch level (and so
   does some of the rpm tags).  SuSE 11 is up to update 3, but the rpm
   matching is stuck hard-coded to update 2.  I'm guessing
   installation is actually broken there.

 - the debian checking branch is broken.  The VERSION tags have been
   removed and were not supposed to be relied on anyway (see notes in
   [1])

This simplifies things:

 - remove OSX checking (moved here after discussions in
   I31d0fdd30928ecc8d959a95838b1d3affd28ac6f)

 - only use the output of lsb_release.

 - A small best-effort check to pre-install lsb packages if not
   detected (that avoids chicken-egg-problem of package-install
   wrappers relying on os_* flags).

 - The unset os_UPDATE is removed.  It's only previous use was for
   setting separate suse versions in the DISTRO element for matching
   during package installs (since removed)

 - DISTRO setting is modified to use the parts of os_RELEASE it wants.
   Per-above, this is the correct place to parse out specifics.

 - Call out the is_* functions, which are a better way to detect
   platforms

 - Export the variables as read-only, since they shouldn't be reset

[1] http://sources.debian.net/src/base-files/7.5/debian/changelog/

Change-Id: I46a2c36d95327087085df07cb797eb91249a893c
2016-01-12 09:23:35 +11:00
Steve Martinelli
923be5f791 bootstrap keystone using new bootstrap command
Be gone ADMIN_TOKEN, long live keystone-manage bootstrap.

This patch reworks the initial setup for keystone by using
the new bootstrap command. After a minimal service catalog
has been created, using this process, we simply authenticate
as usual.

implements bp: bootstrap
Depends-On: I113c6934b6b83ceff23a94101967a6df1126873f
Change-Id: Ia1475d461eab60b68c6a0356714b21c7f92e0194
2016-01-09 20:26:48 -05:00
Jenkins
6f002b169c Merge "Move horizon config and start to appropriate phase in stack.sh" 2016-01-08 15:56:05 +00:00
Alexander Schmidt
a5ea08b752 Add distro support for KVM for IBM z Systems
Add "KVM for IBM z Systems" to the list of Fedora-like distros.

As the distribution does not have a dedicated kvm package,
prevent the installation of the kvm package during the libvirt
setup.

Change-Id: Ibb5c60797d6867264f9dea7fea85cdf1d7c72ded
2016-01-07 10:14:39 +01:00
Jenkins
b615691576 Merge "XenAPI: add support to use local.conf" 2016-01-07 04:51:19 +00:00
Kashyap Chamarthy
90bc586772 Remove support for Fedora 21 (EOL); add F22 where appropriate
Fedora 21 reached its End Of Life (EOL) on 1-DEC-2015[1]; remove it as
supported distribution.

    - stack.sh: Remove Fedora 21 from list of supported distributions.
    - tools/fixup_stuff.sh: Make the minimum Fedora version to be F22 in
      from a conditional check in 'Python packages' section
    - files/rpms/general: Remove 'f21' from NOPRIME.
    - lib/ceph: Remove 'f21' from the check_os_support_ceph() function.
    - doc/source/index.rst: s/Fedora 21/Fedora 22/
    - pkg/elasticsearch.sh: Remove the 'if' conditional in the
      install_elasticsearch() function.

[1] https://fedoramagazine.org/fedora-21-end-life-december-1st/

Change-Id: Ifbcc3dd783ff2f362a464fbf4ca22f20cc2c658e
2016-01-05 13:07:43 +01:00
Jenkins
13579a3161 Merge "Add option to skip EPEL & other repo installs" 2016-01-04 13:02:00 +00:00
Huan Xie
cc6af3fc94 XenAPI: add support to use local.conf
XenServer install with devstack doesn't support local.conf, this fix
is to add support for using local.conf and backward-compatibility of
localrc

Change-Id: Ie494e01f8f1ecb8720e14392ef3f12d5a5a01dcd
Closes-Bug: #1528520
2015-12-28 08:56:14 +00:00
Jenkins
0d37572260 Merge "Turn off tracing when outputting errors" 2015-12-17 23:50:38 +00:00
Akihiro Motoki
43f62c0849 Move horizon config and start to appropriate phase in stack.sh
Previously horizon configuration and start are done too early
and as a result horizon init and start need to be run twice
after horizon plugins are enabled.
- horizon config was done before "run_phase stack install"
- horizon init and start were done before "run_phase stack post-config"

This commit rearrange horizon setup to the appropriate phases
defined in the devstack plugin interface.

- Configuration of horizon settings is moved to configure_horizon.
- horizon config is now called between run_phase stack install
  and post-config.
- horizon init and start are now called between run_phase stack
  post-config and extra.

Change-Id: I8bf2ceaf7734c4f7cec68bc05d7cdbae81ef311e
2015-12-15 16:44:41 +09:00
Ian Wienand
1afc28bf6c Turn off tracing when outputting errors
When outputting these error strings, turn off the tracing so the user
can actually read it.  Also reword the "not root" user message so it
fits into a standard terminal window length.

Change-Id: I466c60865bc1128f4edd219f831a9c6cffa67829
Parital-Bug: #1517199
2015-12-01 19:15:21 +00:00
Ian Wienand
523f488036 Namespace XTRACE commands
I noticed this when debugging some grenade issues failures.

An include of grenade/functions stores the current value of XTRACE
(on) and disables xtrace for the rest of the import.

We then include devstack's "functions" library, which now overwrites
the stored value of XTRACE the current state; i.e. disabled.

When it finishes it restores the prior state (disabled), and then
grenade restores the same value of XTRACE (disabled).

The result is that xtrace is incorrectly disabled until the next time
it just happens to be turned on.

The solution is to name-space the store of the current-value of xtrace
so when we finish sourcing a file, we always restore the tracing value
to what it was when we entered.

Some files had already discovered this.  In general there is
inconsistency around the setting of the variable, and a lot of obvious
copy-paste.  This brings consistency across all files by using
_XTRACE_* prefixes for the sotre/restore of tracing values.

Change-Id: Iba7739eada5711d9c269cb4127fa712e9f961695
2015-11-27 15:36:04 +11:00
Sean Dague
c18b4a4e5c remove precise from the supported list
We haven't been testing master on precise for a long time, and changes
are coming that won't work on precise. If people want to keep running
on precise they should realize they are on their own with it. And that
we won't block any changes that use it.

Change-Id: I3697f1c2409ad08f49793dabb37011606188e6f6
2015-11-20 12:19:18 -05:00
Attila Fazekas
e0129f3c24 Fedora 23 supported
This change allows to use f23 without the FORCE=yes option.

Make sure you have latest kernel, or you have kernel-modules
installed for the running kernel.

f21 support will be removed when the gate jobs are upgraded
to use newer fedora version.

Change-Id: I6e3e64088187a7f6da745e3cfb07524fd31782ab
2015-11-19 10:47:58 +01:00