This document provides information about the SEASR Tools project and its Meandre infrastructure. It describes the Community Hub, Administrative Interface, and Workbench components. The Community Hub allows users to explore, comment on, and execute workflows. The Administrative Interface provides administration functionality like managing the repository, publishing/executing workflows, and adding/removing locations. The Workbench is a visual programming environment that allows creating and executing workflows by dragging and dropping components without coding.
DevEX - reference for building teams, processes, and platforms
SEASR Tools
1. SEASR Tools
Loretta Auvil
National Center for Supercomputing Applications!
University of Illinois at Urbana-Champaign
lauvil@illinois.edu
The SEASR project and its Meandre infrastructure!
are sponsored by The Andrew W. Mellon Foundation
8. Meandre Administrative Interface
• Made mainly for administrators
• Provide one-click access to most
of the services
• Sections
– Repository
– Publish
– Execution
– Location
– Security
– Public
– About
9. Repository
• Navigates the current user’s repository
• List components and flows
• Searching components or flows
• Navigating by tags
• Clear all the components and flows
• Regenerates the repository using the available
locations
10. Publish
• Allows one to manipulate the public repository of
components and flows
• Allows one to publish and unpublish components and
flows
11. Execution
• Exposes the execution engine
• Allows one to list current running flows
• Allows one to upload and execute all the flows in a self-
contained repository
• Allows one to tune and execute by changing property
settings
• Exposes the list of jobs tracked by the server
• Give access to the executing flows output consoles
12. Cluster
• Exposes the single image cluster log
• List the status of the servers forming the cluster
• Expose basic information about the servers
• List internal properties used by the Meandre cluster
• Allows the shutdown of the current Meandre Server being
accessed
13. Location
• Allows addition of locations to import components and
flows
• Allows removal of a location which deletes components
and flows
• List the current locations used
14. Security
• Manage users
– Create
– Remove
– Update
– List
• Grant and revoke roles
– Execution
– Location
– …
15. Public
• Expose basic public services
– Published repository
– A simple demo repository of components and flows
– A ping/pong service
16. About
• Expose server information
– Installation information
– Version
– Plugins installed on this server
17. Workbench
• Web-based UI
• Components and flows
are retrieved from server
• Additional locations of
components and flows
can be added to server
• Create flow using a
graphical drag and drop
interface
• Change property values
• Execute the flow
18. What is it?
• Visual programming environment
Thankfully, no code writing skills are required.
• Provides a mechanism to create and execute flows
• Built on top of GWT (Google Web Toolkit) – accessible from all major
browsers
19. Getting Started
• Fire up your favorite browser and connect
If you installed the Workbench on your local machine, use http://localhost:1712
to access it, otherwise replace “localhost” with the correct address of the computer
where the Workbench is running at.
• Log in
21. The Workbench
The Workspace
The Details
The Repository Panel
Panel
• used as a main staging area for
building / editing flows
The Output
Panel
22. The Workspace
Components can be dragged into this region from the “Components” panel
and interconnected to create flows.
23. The Flow Toolbar
• Provides access to frequently used functions
o save flows
o remove components
o control flow execution
24. Saving a Flow
Required metadata:
- Name
- Base URL
Separate tags with commas
25. Removing Components
Two ways:
1. Select the component and click “Remove” on the toolbar
2. Right-click the component you want to remove and select “Remove”
26. Controlling Flow Execution
Run Flow
Executes the current flow loaded in the Workspace. Any output from the flow will
be displayed in the Output panel. If the flow contains interactive components, they
will be displayed automatically.
Important: Please be sure to set your browser to allow pop-ups
from the Workbench, otherwise the web interactive components
will not display!
Stop Flow
Sends a request to the Meandre server to abort the currently executing flow.
May take a while – the server waits for components to finish their current
operation.
27. The Repository Panel
Three sections:
- Components
- Flows
- Locations
Searching is supported
Display is
customizable
28. Components
• Software units that are designed to accomplish a particular task
• May have inputs, outputs, and properties
Components with properties can be identified by a symbol appearing in
the lower left-hand side of a component icon.
29. Flows
A Flow is essentially an application — a group of components connected
together to perform a certain task
Click on the Flows tab in the Repository panel to view the flows in your
Workbench.
Double click on a flow to load that flow into the Workspace.
30. Locations
Adding a repository location causes all the components and flows hosted at
that location to be imported in the user’s private repository on the server
Removing a location also removes the associated components and flows
from the server.
You can find a list of available repository locations at http://www.seasr.org/
documentation
31. The Details Panel
Properties
Description
For components, the Description
displays information about the
Shows the properties and component function.
description of a selected
component or flow For flows, the Description displays
information about the flow and the
components it contains and their
property values.
32. The Output Panel
Displays output and error messages generated by the Workbench
33. Using the Workspace
Placing Components
The first step in building a flow is to choose components from the Repository panel
and place them into the Workspace.
To place a component, click on the Components section in the Repository panel
and drag the desired component over into the Workspace area.
Note: A flow must have at least one component
with no inputs to be able to be executed by the
Meandre server.
Selecting Components
Components can be selected by single clicking on them in the Workspace. When a
component is selected, other selected items are deselected. While selected, a
component can be moved about the Workspace or deleted. A selected component
(or flow) can be unselected by using CTRL+click on that component (or flow).
34. Using the Workspace
Labeling Components
Editing the component label only changes the name of the component in the
given flow. The label must remain unique among the other component labels
in the flow.
The label can be edited by single-clicking on it and entering the desired text.
Pressing ESC while editing a label cancels the labeling operation and
restores the original label.
Connecting and Disconnecting Components
To make a connection, click on the output port of the desired source component (the port
you clicked will be colored red), and then click on the input port to which you wish to
connect. You should now have a line connecting the output and input port. If, after selecting
a port, you wish to cancel the operation, simply clicking the same port again will unselect it.
The ports of two components should only be connected if their data types are compatible
with one another. Any errors resulting from data incompatibilities will occur at runtime.
To remove a connection, simply right-click one of the ports
and select “Disconnect” from the context menu.
Alternatively, you can remove groups of ports by right-
clicking the component and selecting the appropriate
menu option.
35. Using the Workspace
Connecting and Disconnecting Components
A component’s output port may only be connected to one input port. However, a
component’s input port may be connected to several different output ports. This could be
useful when you are retrieving the same data format from multiple components.
The connection line is highlighted if the user hovers over an input or output port. This is
useful for verifying connections in a complex flow. When hovering over a component port,
the description of that port is also briefly displayed.