There is confusion about where installation of new libraries should
end up, to prevent lots of little files being added make a
lib/libraries which is the old lib/oslo. Put compat functions and
includes in place to help with transition.
Change-Id: Ieeab605d187ef6aec571211ab235ea67fa95a607
This separates out the install phase early from the start phase to
make this mirror other services in devstack.
Depends-On: I4124dc7e3fd3b4d973979da85209ec991c0f8c4b
Change-Id: I76f8740448b25a48869ee80006e826baa6cafc2b
Allow cursive to be installed from git instead of pip.
The barbican-tempest-plugin, which uses cursive indirectly
through nova and glance, would benefit from the ability to
use cursive from git instead of pip.
Change-Id: Icae7d310f1ee392d080e7c8e421a26d7c0ef4727
Allow castellan to be installed from git instead of pip.
Castellan has recently been moved under the oslo framework,
and the barbican-tempest-plugin tests which use castellan
would benefit from the ability to usd castellan from git
instead of pip.
Change-Id: I96edca90c61aec84637b7b1ce842eff04c521923
This is required to install python-openstacksdk from source for testing
other projects against master.
Change-Id: Iee7b043ac7d381dadf89d26098f69e935ed81d6b
There is currently a hole in our testing that lets os-client-config,
which sits at the bottom of the dependency chain for some key pieces
like neutronclient and python-openstackclient, introduce gate breakages.
Step one in fixing this is allowing os-client-config to be optionally
installed from source so that jobs can be put into its gate to exercise
its master vs devstack installs.
Additionally, osc-lib is a new and lovely library that's going to need
the same things.
We're putting both in install_oslo, even though they're not oslo
libraries, because that'll make grenade work properly.
Co-Authored-By: Monty Taylor <mordred@inaugust.com>
Change-Id: I747480b6063a62e82ca2b030f274d3e87bf28b3b
OSprofiler is now under Oslo:
https://review.openstack.org/#/c/103825/
And we really need this patch to make proper dsvm job for
OSprofiler
Change-Id: I20f59c52c147303de01544dc975a82b4a741a1b9
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
A new project olos.privsep has been created but failes sdvm testing as
even though the library is added ro PROJECTS and LIBS_FROM_GIT it isn't
installed by devstack.
Add oslo.privsep to the install_oslo function
Change-Id: Ia4d56747d56dcfe50889ebbdf9d553df13e1b950
Now that we don't have namespace packages any more, editable installs
should be fine. This also means that we apply constraints to these
libraries during installation, which is important for future testing.
This is needed in order to be able to easily sanity check
LIBS_FROM_GIT, as then all libs installed from git will have pip urls
with git in them.
Change-Id: I46c3b8f943b97f912eccc7278e3e033ae67e7e31
Full list for liberty is as follows:
* oslo.service
* oslo.reports
* automaton
* futurist
oslo.cache was already added in the earlier review
Some of the entries are already there, though automaton was
missing in one spot. Made sure all references have all five
libraries.
Change-Id: Iffb720d46058424924469695a3ae1e4f20655f99
Ensure that the debtcollector library is pulled in
like the other oslo libraries so that devstack can
use it where appropriate.
Also fixes 'test_libs_from_pypi.sh' to not have a huge
single line of libraries; and splits it into multiple
lines so the diffs and code can be easily looked at.
Change-Id: I35ab0ed0e20b6092a41ecb3b6f1aaf0a05f5180e
As per the graduation work items, any new libraries should be
added to lib/oslo and stackrc
partially implements bp graduate-policy
Change-Id: Ief8f28715ecff5a602d6d840d736ea07b5e7ff39
With gerrit 2.8, and the new change screen, this will trigger syntax
highlighting in gerrit. Thus making reviewing code a lot nicer.
Change-Id: Id238748417ffab53e02d59413dba66f61e724383
Ensure both lists of oslo libraries are sorted and
add the missing oslo.context in install_oslo method
Change-Id: I5b849c97b681e65425304e05534a61140e4e1fda
Treat the new oslo.context library just like the other Oslo
libraries. i.e. make it possible to either test with upstream
released library, or with git versions of oslo.context.
Change-Id: I2dc498324d6c405655a8e2e249465c5b351ca960
Apparently oslo is the hardest word in the world for me to understand
that I didn't spell correctly.
Change-Id: Id1b52529001319eaf41321118ab560711c752003
This patch provides a new path for installing libraries in devstack so
that it's possible to either test with upstream released libraries, or
with git versions of individual libraries.
Libraries are added by name to 3 associative arrays GITREPO,
GITBRANCH, GITDIR. When we get to the library install phase we inspect
LIBS_FROM_GIT and look for libraries by name (i.e. "oslo.config") and
if they exist we'll clone and install those libraries from
git. Otherwise we won't, and just let pip pull them as dependencies
when it needs them.
This patch provides the conversion of the oslo libraries, including
pbr.
Devstack-gate jobs for these libraries will need to change to support
actually forward testing their content.
Change-Id: I6161fa3194dbe8fbc25b6ee0e2fe3cc722a1cea4
Install the oslo.concurrency and oslo.middleware libraries from source so
the gate tests are run against master.
Change-Id: I194fc160127ab8b4b7d0086586d8ba7f92c67076
Install the oslo.utils and oslo.serialization libraries from source so
the gate tests run against master.
Change-Id: I2cb35c9dfd18588e4caa11134e6a34d83324e136
Icehouse is for long behind our back, so let's remove that hack.
Conflicts:
lib/oslo
This reverts commit db5fadb5cb768820df54fc3d1c7428a57b511582.
Change-Id: I06d3b0a8779ba51e05c439832ef3b7dbdc97ded1
The project-specific receiver command nova-rpc-zmq-receiver
has been replaced with oslo-messaging-zmq-receiver.
We need to update devstack code accordingly.
Change-Id: I7696c649fa818ecb523b698ea4a23f70da60147d
Closes-Bug: 1279739
oslo_clean is still needed at this point, removing it was
premature, especially for upgrade testing.
Change-Id: Ic845d835f587923423f83ac698bd825f3fa5dd1f
libraries in openstack shouldn't be installed editable, as it
causes all manner of issues (especially complicated by the use
of namespace packages). Install these globally as part of the
devstack installation process.
Change-Id: I11acb169e74069be0618e57496ff342f9e788493
Check that function calls look like ^function foo {$ in bash8, and fix
all existing failures of that check. Add a note to HACKING.rst
Change-Id: Ic19eecb39e0b20273d1bcd551a42fe400d54e938
Oslo has adopted 4 libraries that were previously on
stackforge, so we can now install them from source.
Change-Id: I6b6e20a7884b47ade466fc38641a5ac1a5f3e146
oslo.rootwrap recently graduated but was not made part of the
devstack-gate. This change is part of a series of changes affecting
devstack-gate, config and devstack which will collectively fix this:
https://review.openstack.org/#/q/status:open+topic:rootwrap-gate,n,z
This should probably be merged once the config and devstack-gate changes
are in, so that it can be self-testing.
Change-Id: I7b1332c8004845a0dd76e27d871370d41d4524ac
Address miscellaneous issues with Markdown formatting in comments which
are consumed by shocco when generating the online documentation.
Change-Id: I953075cdbddbf1f119c6c7e35f039e2e54b79078
This enables commit If92073be5a431840701c952a194e63a7c452c9ca
for cleaning up potentially installed older oslo.config. Here are
its original details.
If the user had oslo.config installed prior to us setting up the
oslo.config out of git they can get themselves into this very funny
situation where pip doesn't see oslo.config 1.1.x, however some
packages might. This manifests itself as a user error trying to
start nova-api which uses DeprecatedOption, not in oslo.config 1.1.x
Because of the funny state pip is in, you can't uninstall oslo.config.
So in these situations, if we see old oslo.config in the filesystem,
pip install / uninstall it to ensure that everyone ends up using the
git version instead.
To reduce the amount of user confusion, do this on every
install_oslo for a while, which we can purge after Havana ships.
Change-Id: I7fa0b70497bf5622f4638da284afe5363a004d3c
Fixes: bug #1213089
Just search in the path where python searches for modules.
Let's use python for searching, it knows the exact rules.
Change-Id: I659f734c418ab5e56f4956f418af48dfbe054c8a