chris meyers
d0d9a0060b
treat canceled jobs in wf the same as failed jobs
...
* Also fix spelling mistake that caused workflows to be falsely marked
successful in the case of a canceled job.
2018-11-16 09:18:06 -05:00
mabashian
b527d89f55
Fixed a number of workflow visualizer bugs. Added loading spinners while data is being loaded/processed.
2018-11-16 09:18:06 -05:00
chris meyers
b45f8aa194
add cycle unit test
2018-11-16 09:18:06 -05:00
chris meyers
32b6ae0863
update wf done and failed tests
2018-11-16 09:18:06 -05:00
chris meyers
7c52208627
update done and fail detection for workflow
...
* Instead of traversing the workflow graph to determine if a workflow is
done or has failed; instead, loop through all the nodes in the graph and
grab only the relevant nodes.
2018-11-16 09:18:06 -05:00
mabashian
834c49b73c
Added dagre to handle our workflow graph layout. Fixed various workflow related bugs.
2018-11-16 09:18:06 -05:00
chris meyers
8db78703f0
fix up dot graph generator
...
* Update graph dot generator to use the new efficient graph
2018-11-16 09:18:06 -05:00
chris meyers
d98f71909f
flake8
2018-11-16 09:18:06 -05:00
chris meyers
ee1e08ce6e
add dag tests
2018-11-16 09:18:06 -05:00
chris meyers
2d38ae21c4
remove unused code
2018-11-16 09:18:06 -05:00
chris meyers
d03101dde8
crawl entire graph when marking DNR
...
* From the root, the code was only going down the did run path to find
nodes to mark DNR. This is incorrect, Now, we traverse the entire graph
each time to find nodes to mark DNR.
2018-11-16 09:18:06 -05:00
chris meyers
244cf819cc
more efficient graph processing
...
* Getting parent nodes from child was inefficient. Optimize it with a
hash table like we did for the getting of children.
* Getting leaf nodes was inefficient. Optimize it like we did getting
root nodes. A node is assumed to be a leaf node until it gets a child.
2018-11-16 09:18:06 -05:00
mabashian
df6c453c86
Fix long name tooltip. Fixed bug adding new node before finishing adding new link.
...
Fixed template list column layout. Ensure that we're getting 200 workflow nodes per GET request
2018-11-16 09:18:06 -05:00
chris meyers
62e5140bb7
remove print statements
2018-11-16 09:18:06 -05:00
chris meyers
26056ddaa6
optimization fix
...
* WorkflowDAG accepts workflow job template and workflow jobs for which
to build a graph out of the nodes. The optimized query for each is
different. This changeset adds the differing queries for a workflow job.
2018-11-16 09:18:06 -05:00
chris meyers
d6bf2aeca9
optimize cycle detection
2018-11-16 09:18:06 -05:00
mabashian
52c3211a9f
Fixes for post-rebase bugs
2018-11-16 09:18:06 -05:00
chris meyers
0675f2559f
bump migration
2018-11-16 09:18:06 -05:00
mabashian
d97a0e415f
Fixed serveral bugs including credential prompting. Added logic to bring links/nodes to the forefront when you hover over them in case there's some overlap
2018-11-16 09:18:06 -05:00
mabashian
4917046e47
First pass at implementing better node placement in the workflow graph
2018-11-16 09:18:06 -05:00
mabashian
3b05936eec
Implements workflow convergence without proper layout
2018-11-16 09:18:06 -05:00
chris meyers
f5aa8a7f11
more flake8
2018-11-16 09:18:06 -05:00
chris meyers
29b9d2be2b
try2 at the devil flake8
2018-11-16 09:18:06 -05:00
chris meyers
47eece0cce
fix flake8 anyway I can
2018-11-16 09:18:06 -05:00
chris meyers
bb128b5800
remove workflow test
...
* We now handle workflows with jobs that have errored. We treat them the
same as a failure result. Before, we would abort the workflow when we
encountered an error.
2018-11-16 09:18:06 -05:00
chris meyers
44b19245c2
handle job error state in convergence
2018-11-16 09:18:06 -05:00
chris meyers
7b751ea2ff
handle edge case ring cycle
2018-11-16 09:18:06 -05:00
chris meyers
ea80e244b9
remove relationship in view if cycle detected
2018-11-16 09:18:06 -05:00
chris meyers
5caff392eb
fixup migrations
2018-11-16 09:18:06 -05:00
chris meyers
db8cafdd2c
rework wf cycle detection for convergence
2018-11-16 09:18:06 -05:00
chris meyers
6e310fdb9c
cycle detection when multiple parents
2018-11-16 09:18:06 -05:00
mabashian
f285186f66
Completed work necessary to support editing workflow links and nodes separately. Added hover and tooltip to links
2018-11-16 09:16:41 -05:00
mabashian
eebff1f855
Decouple editing a wf node with editing a node link
2018-11-16 09:16:41 -05:00
chris meyers
207441bd14
update docs
2018-11-16 09:16:41 -05:00
chris meyers
670a751647
correctly name migration to align with 3.4.0
2018-11-16 09:16:41 -05:00
chris meyers
9493f50ccf
merge artifacts deterministically
2018-11-16 09:16:41 -05:00
chris meyers
9c0dc27cf2
prevent job launching twice
2018-11-16 09:16:41 -05:00
chris meyers
f72d6b9554
flake8
2018-11-16 09:16:41 -05:00
chris meyers
07461eb62a
fix workflow finish state detector
...
* Take into account the new do_not_run field when finding if a workflow
is finished. If do_not_run is True then the node is considered finished.
2018-11-16 09:16:41 -05:00
chris meyers
2badb4fdbb
cleaner code
2018-11-16 09:16:41 -05:00
chris meyers
589862cba4
save state
2018-11-16 09:16:41 -05:00
chris meyers
e60f4d0980
all parents should finish before start child
2018-11-16 09:16:41 -05:00
chris meyers
84f5d2687c
short circuit performance optimization
2018-11-16 09:16:41 -05:00
chris meyers
e7057ce23a
stop DNR propogation on always path
...
* This makes sure DNR propogation stops when a job is successful, down
an always path
2018-11-16 09:16:41 -05:00
chris meyers
d060bd441b
correct stop DNR propogation
...
* If a child has a parent that is not in the finished state then do not
propogate the DNR to the child in question.
* If a parent is in a finished state; do not propogate the DNR to the
child if the path to the child is traversed (based on the parent job
status).
2018-11-16 09:16:41 -05:00
chris meyers
92aeb082ed
satisfy flake8
2018-11-16 09:16:41 -05:00
chris meyers
73feeea42b
always find and mark dnr nodes
2018-11-16 09:16:41 -05:00
chris meyers
eec44b2269
Revert "mark dnr field read only"
...
This reverts commit 3dbc52d91223167683fd01174222bd6c22813dbd.
Workflow Job Nodes are read only already
2018-11-16 09:16:40 -05:00
chris meyers
62a5512185
update debug dot graph to output dnr data
2018-11-16 09:16:40 -05:00
chris meyers
8a62580667
mark dnr field read only
2018-11-16 09:16:40 -05:00