Current zuul.yaml file is simply way to big to be able to navigate in it
easily. We are going to add some more acceptance jobs which bring quite
big secrets and this will make it even less maintainable.
Split .zuul.yaml into few zuul.d/* entries using Zuul capability to have
few "project" entries and get them merged.
Change-Id: I9c6a85d4d6f1cdfcb5a339bca4293d54d5cf8746
- reworked job not to use custom modules, but rather send direct API
requests (due to mess with ensuring openstacksdk availability for
Ansible).
- add exclude for pre-commit-config to stop it from complaining on
zuul.yaml
- removed too verbose logging from functests with list of images and
flavors (on real clouds this is simply too much).
Change-Id: I555127f410b696e1584dc07cafac25597ab1abeb
Implement acceptance tests. Those jobs will run in the post-review
pipeline requiring access to secrets containing credentials of friendly
public clouds to test sdk with them.
Base job is generating a token from the given credentials and writes
clouds.yaml file with the token inside instead of password. As a post
step the token is physically revoked. This is done to prevent potential
leakage of real credentials from the test jobs/logs.
Since devstack is not a real cloud we do not use zuul secrets.
Change-Id: I95af9b81e6abd51af2a7dd91cae14b56926a869c
This was cruft left over from the merge of "feature/r1" to
the "master" branch. Currently manila jobs are failing since
a bindep fix [1] that's present in the "master" branch aren't
present in the "feature/r1" branch.
[1] https://review.opendev.org/c/openstack/openstacksdk/+/863839
Change-Id: Iecd6434a8b3eb92180e463f984e7982ed97ad61f
Job bifrost-integration-openstacksdk-src installs the latest code of
openstacksdk's master branch because it has openstacksdk's repo listed
in its job.required-projects. It also has to pull the latest code of
Ansible OpenStack Collection, because Bifrost jobs pin the former to
older releases which is compatible to openstacksdk <0.99.0 only.
Change-Id: I6c674ff968088960ee68e2f6dd187f77e97d0755
We ended up in dead loop with Zuul needed to pin older SDK version due
to some found issues, nodepool not able to cope with pin on its own and
sdk not able to merge any fixes for that. Make nodepool jobs non voting
for now unless we get out of problems.
Squash increasing of swap for devstack
https://review.opendev.org/c/openstack/openstacksdk/+/844010 to get things
rolling
Change-Id: Ie8af2690f309df01022843a6fa934f0c548f32c3
The recent changes have broken nodepool's use of openstacksdk. This
job brings up a cloud environment with devstack, then a nodepool
instance that talks to it. It then builds an image with dib and
attempts to have nodepool upload, boot and talk to the instance in the
devstack cloud.
The place to see the error in this test is from the nodepool-launcher
container, that is trying to talk to the devstack cloud. This logfile
is
https://zuul.opendev.org/t/openstack/build/e60e7cd382834a679b22f419947a4c93/log/docker/nodepool_nodepool-launcher_1.txt#10470
The error is
2022-01-25 21:37:18,590 WARNING openstack.resource: The option [maxPersonalitySize] has been deprecated. Please avoid using it.
[e: cf61304adeff45358d97a1b30552125c] [node_request: 900-0000000000] Declining node request due to exception in NodeRequestHandler:
Traceback (most recent call last):
File "/usr/local/lib/python3.9/site-packages/nodepool/driver/__init__.py", line 660, in run
self._runHandler()
File "/usr/local/lib/python3.9/site-packages/nodepool/driver/__init__.py", line 566, in _runHandler
elif not self.hasProviderQuota(self.request.node_types):
File "/usr/local/lib/python3.9/site-packages/nodepool/driver/openstack/handler.py", line 383, in hasProviderQuota
cloud_quota = self.manager.estimatedNodepoolQuota()
File "/usr/local/lib/python3.9/site-packages/nodepool/driver/utils.py", line 315, in estimatedNodepoolQuota
nodepool_quota = self.getProviderLimits()
File "/usr/local/lib/python3.9/site-packages/nodepool/driver/openstack/provider.py", line 102, in getProviderLimits
return QuotaInformation.construct_from_limits(limits)
File "/usr/local/lib/python3.9/site-packages/nodepool/driver/utils.py", line 219, in construct_from_limits
instances=bound_value(limits.max_total_instances),
File "/usr/local/lib/python3.9/site-packages/openstack/resource.py", line 641, in __getattribute__
raise e
File "/usr/local/lib/python3.9/site-packages/openstack/resource.py", line 630, in __getattribute__
return object.__getattribute__(self, name)
AttributeError: 'Limits' object has no attribute 'max_total_instances'
Since nodepool just keeps trying to talk to the cloud and start an
instance that never appears, the job ends up timing out.
We have had some discussion over this @
https://meetings.opendev.org/irclogs/%23opendev/%23opendev.2022-01-26.log.html#t2022-01-26T17:06:12
Traditionally we've co-gated these projects as nodepool has had a very
close relationship with shade and now openstacksdk. For now nodepool
is just testing against released openstacksdk; but the dependent
change reverts this and thus should exibit this issue.
Depends-On: https://review.opendev.org/c/zuul/nodepool/+/826541
Depends-On: https://review.opendev.org/c/openstack/openstacksdk/+/826924
Depends-On: https://review.opendev.org/c/openstack/openstacksdk/+/826920
Change-Id: I04050988e97b834ce38b3ed1d67555d7df90b60d
The job against newton hasn't been running for five years, switch to run
against some oldish, but still supported stable branch.
Signed-off-by: Dr. Jens Harbott <harbott@osism.tech>
Change-Id: I89b38cb67deed0a2cdd7ce62c1e3e068de59cec1
Heat still depends on an keystone admin endpoint being present although
it has no functional difference anymore from the other endpoints with the
v3 API. Make devstack create one.
Change-Id: Icd786e89aba5b593feee165226010b25f8627efd
(cherry picked from commit 9ed215d444)
Heat still depends on an keystone admin endpoint being present although
it has no functional difference anymore from the other endpoints with the
v3 API. Make devstack create one.
Change-Id: Icd786e89aba5b593feee165226010b25f8627efd
This job can be non-voting. Also fix up the functional
tests to use a configurable cloud profile, so we can
set the desired api microversion to be tested.
Change-Id: I952b0590ac571aff220b2285d3dc0b5c5bc99816
Signed-off-by: Goutham Pacha Ravi <gouthampravi@gmail.com>
nodepool job is blocking us for quite some time with timeouts. Let us
disable it for now and rather fix issues later (on a separate branch
anyway) rather then continue waiting.
Change-Id: Id76a13b41ffcf6fdaff58ddce6597dc1b1ea347b
nodepool job is blocking us for quite some time with timeouts. Let us
disable it for now and rather fix issues later (on a separate branch
anyway) rather then continue waiting.
Change-Id: I4802c37276cc5e9b5ec8930d69205a1e11ea87a0
There are 2 jobs failing for a very long time and nobody taking care of
fixing them. Disable them for now while still keeping job definitions.
Change-Id: I99abe18e3d91d52fc580a3d75146d04ec3de775a
We facing errors related to the new pip resolver, this
topic was discussed on the ML and QA team proposed to
to test lower-constraints [1].
I propose to drop this job because the complexity and recurring pain needed
to maintain that now exceeds the benefits provided by this mechanismes, and
We need to drop the lower-constraints.txt file as well as the corresponding
tox target
[1] http://lists.openstack.org/pipermail/openstack-discuss/2020-December/019390.html
Change-Id: Ib0ef1fadf4fe44f1d6af2f7d542b8af919652501
Due to the recent renaming of the CentOS packages the job is currently
failing and requires fix in the diskimage-builder to be merged and
released. In the long run CentOS-8 as a standalone release is abandoned,
therefore verify building of the stream image instead.
Related-Bug: https://review.opendev.org/c/openstack/diskimage-builder/+/765963
Change-Id: I2aca89ce8bd27e920b0f80a66d6ed22d2277d05a
The nodepool-functional-container-openstack-siblings builds nodepool
container images (with openstacksdk and other "siblings" of nodepool
from source) and runs the build/boot tests with that.
The container builds of these tools are what OpenDev uses in
production, so this is more practical testing than installing by parts
on a bare Bionic system. This allows us to remove the job duplication
in nodepool.
Change-Id: I91345ebf509238ca1f800cb595818c023cc56b0d
The Neutron project is changing DevStack to default to the ML2/OVN
mechanism driver by default [0] but, a handful of functinal tests
for openstacksdk is not backend agnostic (see the Story linked with this
patch) and needs to be adapted or skipped when running with ML2/OVN. As
a first step, just to unblock the DevStack gate this patch is explicitly
configuring the functional tests to run against ML2/OVS.
[0] ML2/OVS is and will be still full supported by the community.
Change-Id: I374b03130310e17b01d2b992eebe70658617e297
Story: 2007919
Signed-off-by: Lucas Alvares Gomes <lucasagomes@gmail.com>
Now that we released ussuri, we have a stable release that supports
3.5. That means if needed we can backport changes needed for
zuul and nodepool, so it should be safe to go ahead and drop 3.5
support.
Change-Id: Iaa761cb6f6ab30fa26f6587ac29f11274702e1a3
Introduce support of python 3.8 and move tox and jobs to py38.
jsonschema 3.2.0 [1] support python 3.8
[1] https://github.com/Julian/jsonschema/pull/627
Change-Id: Ibcfa044dd0f3b29fd290559795ea1d98e194e886
With the requires-python fix landed, we can re-add this test
and wait for it to start passing again.
Change-Id: Ia93a8685f7381e773e1139ca3f804ea354089eb3
We require 3.5 now but we didn't add the metadata. Add it.
While OpenStack broadly only supports 3.6, openstacksdk
has a wider audience, including nodepool which still uses
3.5. So add the 3.5 unit tests back.
Use lower-constraints for py35 unit tests because the
upper-constraints have versions of things that have
droppped py35 support already.
Depends-On: https://review.opendev.org/#/c/715467/
Change-Id: I680e0bab5ba3af7be5e914ece64c6bd25d1f2191
This partially reverts commit b6a22e3749.
The addition of futurist as a hard depend broke python2, and at the
same time didn't mark the release as having done so. In looking at the
issue we realized that we don't actually need the hard depend.
Change-Id: I2d874f618f5b3f66d49cd2e964c6e05655f22c0f
We need to run master of openstacksdk against the stable ansible
branches that have openstack modules.
This partially reverts commit 666381d6e4.
We no longer are running jobs against devel of ansible, so we don't
need to do the failure job.
Change-Id: Ic783cfd564001a0bd00182725d26928ae6422c3f
In order prevent merging patches to Openstack Ansible modules
via Github fail the CI job that runs there with appropriate
message about movign the code.
Remove all ansible bits
Add a new job from collections to check changes.
Depends-On: https://review.opendev.org/#/c/704332/
Change-Id: Id1aafe59775f7d59ea88e4ac9deef952abbdeda1
We're peeling python2 from libraries now, so Stop running python2
versions of test jobs. Leaving removing the test jobs themselves
for the moment as they're still used in other repos.
Change-Id: Ic6d56e3636b757201d83649f075005ed3ae1e1a6
We're unwinding python2 testing. As part of doing that, remove
python2 from our zuul project-template which other people are
using to add tips jobs to their project.
Change-Id: I7d4b3f54cfd09d6a39b707f4a9a0bf4b2b9bca69