wiki:BluePrint/DeploymentTools

Version 1 (modified by gnarula, 11 years ago) ( diff )

--

BluePrint: Deployment Tools

Introduction

The project aims to develop an Eden application that allows deployment of Sahana to production servers. These may be Amazon EC2 instances or generic Linux Servers. The application would provide flexibility during deployment. For instance, the deployer may be given an option to select the Web Server, Database, Mail Server and Co-Apps of their choice. Further support for Amazon EC2 can be incorporated which would allow the creation of new instances and Eden deployment on the newly created instances. The application can further evolve to cover WebSetup for deployed instances.

Stakeholders

  • Users who prefer a graphical interface over the command line, particularly those who have less experience with Linux.
  • System Administrators, Site Operators

User Stories

A deployer with minimal experience with linux and command line wants the application to deploy Sahana Eden (from trunk or personal github repo) so that they may use it in production

Requirements

The application is expected to:

  • Be flexible with deployment options – the end user should have the choice to select the web server, database and mail server of their choice. Further, a set of advanced options may be added which allow users to specify the github branch to clone repo from, specify the template after deployment, etc.
  • Integrate well with Amazon EC2. The application shall allow the user to create new free/paid amazon instances using the amazon cli tools in the backend while allowing them to deploy on already existing instances as well.

Technologies

The application can use Fabric (http://fabric.org) in the backend to do the work behind the scenes.

Current Implementation

The WebSetup part was developed as a seperate web2py app and is available at https://github.com/graeme-f/edenstart

Incorporating the WebSetup as an Eden app as a part of this project, though ambitious, would make it easier to maintain and integrate.

Planned Implementation

I (http://github.com/gnarula) plan to implement this as a part of GsoC 2014. An initial prototype is available at https://github.com/gnarula/eden

Outstanding Questions

  • Evolving the app to cover WebSetup – Implementation of WebSetup as an Eden Application

References

https://groups.google.com/forum/#!msg/sahana-eden/m-kjGNUMQG8/tT5shF0uaAwJ

Note: See TracWiki for help on using the wiki.