By Nayiri Mullinix
"We had open-ended plans for converting CloudLaunch from a small web-app into a full-fledged science gateway and the SGCI consultants helped us formalize that plan and implement it. CloudLaunch can now benefit a large number of researchers from a wide range of disciplines looking to conduct research in the cloud."
Associate Research Scientist, Taylor Lab, Johns Hopkins University
Active member of Galaxy
What’s one of the many beautiful things about science gateways? How about the fact that they can solve a wide range of problems for researchers? CloudLaunch, a gateway through which the user gets access to a ready-made cloud application in a matter of minutes, is one of those gateways that’s out there solving problems. The framework eliminates the need to install and configure complex stacks of software and can be used by anyone who wants to launch a virtual machine. Indeed, a beautiful thing for someone who needs a customized URL with access to a personalized workspace, but without the hassle of trying to figure out how to set it all up.
Developed by the Galaxy Project, CloudLaunch makes it possible to create a uniform platform for discovering and deploying applications for different cloud providers. This means that a variety of applications can be added to a catalog with each having its own customizable user interface and control over the launch process. These can be on multiple clouds such as Amazon, Open Stack, Azure or institution-based ones like Jetstream.
In its first phase, CloudLaunch was a small utility built to facilitate the launching of just one Galaxy application in the cloud. With future iterations and redesigns, however, the potential for launching any application in the cloud was realized and the accompanying benefits this would give to a large number of researchers. It was at this point that Enis Afgan, Associate Research Scientist in the Taylor Lab at Johns Hopkins University and an active member of Galaxy, requested SGCI services. His goal was to grow CloudLaunch to give support to multiple cloud services for a wide variety of science disciplines because, as he says, “It would be useful to offer this project to others so they could benefit from it, too.”
Afgan turned to SGCI because he knew that new features would need to be added in order for the platform to be useful to others, including credential management and an API. With an eye towards making CloudLaunch more useful and flexible for users, SGCI’s Extended Developer Support (EDS) consultants had the expertise needed for an improved version that would allow users to manage applications post-launch, provide additional cloud providers, and improve discovery of applications. This work included:
Integrating Google Cloud Platform (GCP), giving users the ability to launch applications on GCP clouds;
Enabling users to provide credentials to get live information regarding cloud-deployed applications;
Allowing users to archive (locally) or delete (remote) applications; and
Developing a Python library and command line interface to the CloudLaunch API, which allows for automated and scripted creating of applications using CloudLaunch.
Afgan also applied for and received usability and user-experience consulting from SGCI Usability Interns. This consultation resulted in recommendations for improving the design of the website to ensure that all user needs would be satisfied. To make effective recommendations, the interns used Heuristic Evaluation and User Interview methods to identify usability problems, motivations, and expectations, and also to see how users interact with the platform. Afgan and his team received a full report of findings and recommendations for improvement, which he plans to implement in the latter half of 2019.
When reflecting on his productive engagement with SGCI, Afgan explains how the process of setting up regular meetings helped his team to establish more transparency and productivity, resulting in moving the project along at a good pace. He commented, “The fact that there was regularity in meetings and reports on either side helped set milestones and to have a more fixed agenda.” Afgan’s advice to anyone considering requesting services from SGCI is to make sure you go into it with a clear vision. He says, “Immerse yourself and be prepared to be a part of the process. The project can’t be a task list that you submit to the consultants; you need to prepare for hand-in-hand development. Without that immersion, you won’t get as much as you can from the services offered by SGCI.”
What’s next for CloudLaunch? As part of a recent National Institutes of Health (NIH) grant awarded to PI Jeremy Goecks at Oregon Health & Science University, CloudLaunch will be embedded into a larger web application needed by cancer researchers. CloudLaunch will be the engine behind launching many individual instances over the course of the next five years. Afgan expects that CloudLaunch will become an integral piece in the larger project, which involves handling large volumes of private data that will need to be separated into their own virtual machines.
Read more about CloudLaunch:
CloudLaunch: Discover and deploy cloud applications