Update oslo-incubator to 46f2b697b6aacc67

Bring in the newer oslo-incubator changes into taskflow copy

Change-Id: I23f0f7dbf1ccbf9f73d4d88d8b4d24cf60d90840
Allow for only iterating over the most 'fresh' jobs

Instead of allowing the backend to determine how fresh
are the jobs yielded back (in the zookeeper case the jobs
are async populated so freshness depends on the freshness of
the watches established) allow the iteration method to support
a way to request (if backend supported) that the jobs iterated
be as fresh as possible.

Change-Id: I8a7c9d7d086ad5fa85dc842fb36e3356f781f057
Fix not found being raised when iterating

Instead of re-raising a not found exception just
silence those exceptions when iterating (and do not
yield that job back in the first place) and then
remove the job from the jobboard internals to avoid
further iteration.

Fixes bug 1304562

Change-Id: Ibc6d3ea55dc19e70104bfc801283b8ad919496c4
Merge "Update oslo-incubator to 46f2b697b6aacc67"
Create a periodic worker helper class

Create a simple class that can call a set of
functions periodically and use this in the case
where we run a notification thread instead of
handling this internally to the worker executor
directly.

Change-Id: I386e027cf461480799614e20e920b46788f99cab
Move the daemon thread helper function

This function seems better suited in the threading_utils module.

Change-Id: Iddd438b57973c7c6c26bd7b6239630656530bd1b
Doc adjustments

- Cleanup some grammar and adjust some wording usage.
- Add more docs to utils about what should and should
  not be used.
- Add more engine docs about how each one is used and
  tips and notes about each.
- Line length adjustments (might as well keep it somewhat
  in the normal range of what openstack code expects)

Change-Id: Ice6711f00e2b50e0bee777388c0555d79cc6e1b0
Allow transient values to be stored in storage

Instead of requiring all values to be saved to storage
in a persistent manner allow certain values to be saved
in memory only (aka transient values) so that tasks can
accept things which should not be persisted (resources,
passwords, file handles, sockets...)

Breaking change: disallowing empty names for atom details
when they are ensured for (previously this was not done
at the storage level) but at the execution level. This
adds it in both places.

Change-Id: Ie68abdcf94f33fba5dbc05f03397aea5d82ea88f
More keywords & classifier topics

Add more classifier information that is relevant
for taskflow to help more people locate what taskflow
is all about when they are browsing/searching pypi.

Change-Id: I0e6f435e980fca194c98b24b346205ecf8f1e7a7
Reuse already defined variable

The REVERTING variable is already defined as flow state. Reuse
it for the task state.

Change-Id: Ied67118be79e3ac933d5b7006720b72f8dc441b4
Merge "Fix not found being raised when iterating"
Merge "Doc adjustments"
Allow fetching jobboard implementations

To provide a standard way to fetch jobboards
that doesn't require importing the modules themselves
but by using entrypoints instead.

Blueprint jobboard-entrypoints

Change-Id: I13639c6be78a5d003e50e6cfd452c7b810072006
Get persistence backend via kwargs instead of conf

The persistence backend that the zookeeper backend uses to
load logbooks when they appear should come in via a kwarg
instead of coming in via conf (since it's not configuration).

Change-Id: I300d7681e5884a989549c8b84d29f04e9ea3d060
Add docs for jobs and jobboards

Add initial docs explaining the jobboard and job
concept and basic examples for how to use this
paradigm.

Part of blueprint jobboard-example-code

Change-Id: Ia8bc48967e55df6107dba272ae7187b18ba2a16e
Merge "Create a periodic worker helper class"
Merge "Move the daemon thread helper function"
Merge "Get persistence backend via kwargs instead of conf"
Merge "Reuse already defined variable"
Merge "Add docs for jobs and jobboards"