(ats4-dev10) creating pipeline pilot components by wrapping third-party tools
DESCRIPTION
Although we’d like Pipeline Pilot to be your Enterprise’s complete solution, there are many tools out there that offer functionality not currently available. Sometimes all you need is a one-off call to the tool, but other times it may make sense to “componentize” the tool for your users. This session will demonstrate different methods for wrapping up this functionality into an easy-to-deploy component that your users can then integrate into their protocols. Because different types of tools require different types of wrapping, we will cover different methods, possibly to include wrapping on-server tools, remotely deployed tools, and web service-based tools.TRANSCRIPT
(ATS4-DEV10) Creating Pipeline Pilot Components by Wrapping Third-
Party Tools Ian Kerman
Support Scientist, Platform Support
The information on the roadmap and future software development efforts are intended to outline general product direction and should not be relied on in making a purchasing decision.
Agenda
• Why you should build a component
• Command Line Interface
• Handling Input and Output Files
• Web Services
Agenda
Ctrl + T (twice)
How do you enable the display of the runtime statistics in the Pro Client?
Pop Quiz
What is a Component?
• See ATS3-DEV05 for full overview of components
• Encapsulated functionality
• Input and Output ports
• Reusable
Reasons for Building a Component
• Favorite application / script
• Functionality not in Pipeline Pilot
• In-house application
Pipeline Pilot Integration Points
DBs
Pipeline Pilot Enterprise Server
Protocol Runtime Environment
VB Script (On
Client) Perl Python
Admin Portal Help Portal Web Apps Web Services API
.NET SOAP &
HTTP Telnet /
FTP SSH / SCP
ODBC / JDBC
VB Script
Run Program
Java VB Script
(On Server)
Cmd Line Java
Classes Perl
Scripts .NET
Classes
REST Service
SOAP Service
Cmd Line Server Integration Extend pipelines with new components that integrate your code, data and services.
Professional Client
Run Protocol Command Line
Client
Web Browser
Web Port
JavaScript Client SDK
JavaScript Client
.NET Client SDK
.NET Client
Java Client SDK
Java Client
SOAP Client
Client Integration Build clients that connect to Pipeline Pilot and run protocol services.
HTTP Client
Running from the Command Line
• Components to use
– Run Program (on server)
– Run Program (on grid)
– Run Command on Remote Host (SSH) / (Telnet)
• Set command line options
• What to do with the results?
• Simple Command Line Example
Demo
Working with Input and Output Files
• Components to use
– Create Tempfiles
– Copy File to Remote Host (SCP) / (FTP)
– Copy File from Remote Host (SCP) / (FTP)
– Various File Readers and Writers
• Wrapping a Program with Input and Output Files
Demo
Wrapping a Web Service
• Components to use
– HTTP Connector
– SOAP Connector
• Not that different than command line
• Integrating with a Web Service
Demo
• Add additional functionality to Pipeline Pilot by wrapping a third-party program / service
• Take advantage of functionality already built-in to Pipeline Pilot
• Other Related Tech Summit Sessions: – ATS3-DEV04 / ATS2-15 (Introduction to Pipeline Pilot Protocol Development
for Developers)
– ATS3-DEV05 / ATS2-16 (Coding up Pipeline Pilot Components)
• When in doubt, call Support!
Summary