James E. Blair c4c7052f10 Fix connection handling in recursive tree cache
There were two errors related to connection handling in the new
treecache implementation:

1) Upon disconnection, the cache receives a "NONE" event with
the client state ("CONNECTING") and no path.  This is a signal to
the watcher that the connection state has changed.  Since we process
connection changes via the session listener, we should ignore this
event.  We were previously attempting to process it and assumed that
the path attribute would be present.  This change ignores NONE events
with no path.

2) The treecache is responsible for re-establishing watches if the
connection is LOST or SUSPENDED.  Previously, it would only
re-establish watches and refresh the cache if the connection was LOST.
This change updates it to re-establish/refresh in both cases.  The
"_started" variable is no longer necessary to distinguish between the
two.  However, it may be useful for future consumers to know whether
or not the cache is synced, so it is converted to "_ready" in case
we want to expose that in the future.

Change-Id: Id1f9c34628d1cc04881621a83d1d1f78e9e0f366
2023-05-02 15:05:04 -07:00
2023-04-16 21:12:06 +02:00
2023-01-10 10:30:14 -08:00
2018-04-26 11:52:17 -05:00
2021-02-19 18:42:33 +00:00
2019-04-19 19:25:31 +00:00
2018-04-26 11:52:17 -05:00
2023-04-21 09:31:38 -07:00
2023-01-30 12:30:45 +11:00
2018-01-19 00:30:22 +00:00
2023-01-10 10:30:14 -08:00
2023-03-21 03:41:57 +00:00
2023-01-10 10:30:14 -08:00
2015-09-14 16:19:13 -04:00
2023-01-10 10:30:14 -08:00

Nodepool

Nodepool is a system for managing test node resources. It supports launching single-use test nodes from cloud providers as well as managing access to pre-defined pre-existing nodes. Nodepool is part of a suite of tools that form a comprehensive test system, including Zuul.

The latest documentation for Nodepool is published at: https://zuul-ci.org/docs/nodepool/

The latest documentation for Zuul is published at: https://zuul-ci.org/docs/zuul/

Getting Help

There are two Zuul-related mailing lists:

zuul-announce

A low-traffic announcement-only list to which every Zuul operator or power-user should subscribe.

zuul-discuss

General discussion about Zuul, including questions about how to use it, and future development.

You will also find Zuul developers in the #zuul channel on Freenode IRC.

Contributing

To browse the latest code, see: https://opendev.org/zuul/nodepool To clone the latest code, use git clone https://opendev.org/zuul/nodepool

Bugs are handled at: https://storyboard.openstack.org/#!/project/zuul/nodepool

Code reviews are handled by gerrit at https://review.opendev.org

After creating a Gerrit account, use git review to submit patches. Example:

# Do your commits
$ git review
# Enter your username if prompted

Join #zuul on Freenode to discuss development or usage.

License

Nodepool is free software, licensed under the Apache License, version 2.0.

Python Version Support

Nodepool requires Python 3. It does not support Python 2.

Description
Manage a pool of nodes for a distributed test infrastructure
Readme 35 MiB
Languages
Python 98.3%
Shell 1.1%
Dockerfile 0.3%
Jinja 0.3%