Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Visualizing workflow runs with an invocation graph view #17413

Merged
merged 42 commits into from
Apr 30, 2024

Commits on Apr 27, 2024

  1. Add an invocation graph view to the invocation summary

    This graph view utilizes the same workflow editor canvas, and instead of showing step details on each step node, it shows the job states for the steps. Clicking on a step expands the details for the invocation step.
    
    The `useInvocationGraph` composable loads the graph based on the original workflow id and invocation object; and the step info is loaded via the `step_jobs_summary` api route.
    ahmedhamidawan committed Apr 27, 2024
    Configuration menu
    Copy the full SHA
    6b6bcf5 View commit details
    Browse the repository at this point in the history
  2. add implicit_collection_jobs_id to invocation step summary

    Also, return a correctly encoded database id field in `step_jobs_summary` api.
    ahmedhamidawan committed Apr 27, 2024
    Configuration menu
    Copy the full SHA
    55dd048 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    90d955a View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    ef9ab7b View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    0991cba View commit details
    Browse the repository at this point in the history
  6. route to invocation view instead of expanding within invocation list

    This allows users to directly go back and forth between dedicated full-center-panel invocation summaries and the invocations list.
    ahmedhamidawan committed Apr 27, 2024
    Configuration menu
    Copy the full SHA
    1f4f905 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    6b8a398 View commit details
    Browse the repository at this point in the history
  8. refactor WorkflowInvocationState and improve its jest

    Added a mock implementation for the store to detect fetches and use those to check if invocation or job states are terminal
    ahmedhamidawan committed Apr 27, 2024
    Configuration menu
    Copy the full SHA
    a6530af View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    37c4976 View commit details
    Browse the repository at this point in the history
  10. fix selenium by only hiding label in NodeInput with props.blank

    Otherwise, seleniums would fail for:
    ```
    Timeout waiting on CSS selector [[node-label='...'] [input-name='...'] + .delete-terminal-button] to become clickable.
    ```
    ahmedhamidawan committed Apr 27, 2024
    Configuration menu
    Copy the full SHA
    d5c0650 View commit details
    Browse the repository at this point in the history
  11. render parts of InvocationGraph only if Summary tab is active

    Otherwise, this selenium fails:
    `FAILED lib/galaxy_test/selenium/test_workflow_invocation_details.py::TestWorkflowInvocationDetails::test_job_details - selenium.common.exceptions.TimeoutException: Message: Timeout waiting on CSS selector [[data-step="1"] .step-title] to become visible.`
    because even if you change tab from Summary to Details, the content is still in the template and the steps in the Summary conflicts with the steps in the Details tab; and are hence not detected in the selenium.
    ahmedhamidawan committed Apr 27, 2024
    Configuration menu
    Copy the full SHA
    b0e93d6 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    1d782a8 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    cbd38f4 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    1cc5912 View commit details
    Browse the repository at this point in the history
  15. move steps to WorkflowInvocationSteps in a card; improve styling

    Scroll to activeId when clicked (on mounted, also expand first step that has a failed (`error`) state
    ahmedhamidawan committed Apr 27, 2024
    Configuration menu
    Copy the full SHA
    39935d6 View commit details
    Browse the repository at this point in the history
  16. fix activeNodeId not expanding step if it is = 0

    Also removes the redundant prop as the value can be local to `WorkflowInvocationSteps`
    ahmedhamidawan committed Apr 27, 2024
    Configuration menu
    Copy the full SHA
    6218e31 View commit details
    Browse the repository at this point in the history
  17. load full workflow for the version that was run

    Without this, the latest version (with potential missing steps from the version that was run) is used to create the graph, and therefore, due to potential mismatch between versions, the graph is incorrect.
    ahmedhamidawan committed Apr 27, 2024
    Configuration menu
    Copy the full SHA
    85f6cff View commit details
    Browse the repository at this point in the history
  18. add an invocation view button to individual InvocationsList

    ...i.e.: the `InvocationsList` for an individual workflow, which doesn't have the workflow name.
    ahmedhamidawan committed Apr 27, 2024
    Configuration menu
    Copy the full SHA
    d3e8ed2 View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    a11f21c View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    8544dbf View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    12fec54 View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    345e502 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    b6d873c View commit details
    Browse the repository at this point in the history
  24. Configuration menu
    Copy the full SHA
    680bbf1 View commit details
    Browse the repository at this point in the history
  25. always toggle a non-input step in graph view

    If there isn't an errored step, still toggle/expand the last step in the workflow invocation.
    ahmedhamidawan committed Apr 27, 2024
    Configuration menu
    Copy the full SHA
    22f1a16 View commit details
    Browse the repository at this point in the history
  26. make it obvious that jobs are clickable and viewable at the bottom

    By always showing the card at the bottom, with instructions on how to view a job.
    ahmedhamidawan committed Apr 27, 2024
    Configuration menu
    Copy the full SHA
    544048b View commit details
    Browse the repository at this point in the history
  27. Configuration menu
    Copy the full SHA
    c7b3caf View commit details
    Browse the repository at this point in the history
  28. Configuration menu
    Copy the full SHA
    70bc123 View commit details
    Browse the repository at this point in the history
  29. Configuration menu
    Copy the full SHA
    87461f5 View commit details
    Browse the repository at this point in the history
  30. Configuration menu
    Copy the full SHA
    97f8401 View commit details
    Browse the repository at this point in the history
  31. if invocation tab is scrollable, add a pr-2 for scrollbar

    This is to make the multiple scrollbars in `WorkflowInvocationOverview` to be clickable (one for the Steps and one for the whole tab)
    ahmedhamidawan committed Apr 27, 2024
    Configuration menu
    Copy the full SHA
    65c0357 View commit details
    Browse the repository at this point in the history
  32. change history on invocation success without reloading

    Also, change the `href` for multiview in this view to a <router-link> (to prevent reload).
    ahmedhamidawan committed Apr 27, 2024
    Configuration menu
    Copy the full SHA
    eb0d5e4 View commit details
    Browse the repository at this point in the history
  33. clear shown job regardless of props.fullPage

    Also, do not show a separate input steps section if there is only one input step.
    ahmedhamidawan committed Apr 27, 2024
    Configuration menu
    Copy the full SHA
    7769792 View commit details
    Browse the repository at this point in the history
  34. Configuration menu
    Copy the full SHA
    45dc2df View commit details
    Browse the repository at this point in the history
  35. Configuration menu
    Copy the full SHA
    cae8c5c View commit details
    Browse the repository at this point in the history
  36. Configuration menu
    Copy the full SHA
    aaae33d View commit details
    Browse the repository at this point in the history
  37. Configuration menu
    Copy the full SHA
    20240cd View commit details
    Browse the repository at this point in the history
  38. fix selenium so that it collapses graph to expand step, fix height of…

    … steps if graph is collapsed, by removing the max-height
    ahmedhamidawan committed Apr 27, 2024
    Configuration menu
    Copy the full SHA
    737eb87 View commit details
    Browse the repository at this point in the history

Commits on Apr 29, 2024

  1. Configuration menu
    Copy the full SHA
    5d623af View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0ce7488 View commit details
    Browse the repository at this point in the history

Commits on Apr 30, 2024

  1. Configuration menu
    Copy the full SHA
    d3b11e6 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    2e53cb7 View commit details
    Browse the repository at this point in the history