Giter Site home page Giter Site logo

appscake's Introduction

AppScale Logo

Appscake - Web Frontend for AppScale Tools

About

"AppsCake makes deploying AppScale a piece of cake"

AppsCake is a simple and lightweight web application that allows users to interact with AppScale Tools over the web. This way, even those users who are not familiar with general cloud principles or those who are not comfortable working with a traditional command line interface can get started with deploying AppScale clouds.

AppsCake has been developed using the Python programming language and uses Django.

Prerequisites

Install Process

Run bash get_tools.sh, which downloads the AppScale Tools and puts them in the appscake directory.

Next, install the tools dependencies by going into the appscake/debian directory and running bash appscake_dependencies_install.sh

Running AppsCake

python2.7 manage.py runserver localhost:8000

Go to http://localhost:8000 with a browser.

If you are running AppsCake on the image that you will be starting AppScale, start AppsCake by running: /usr/local/Python-2.7.3/python manage.py runserver <ip>:8090

Go to http://<ip>:8090 with a browser.

Issues

Contact us if you have problems at [email protected] or visit our IRC channel, #appscale on freenode.net.


AppsCake w/ virtualenv

Prerequisites: Python 2.6+, pip/easy_install

  1. Installing virtualenv/virtualenvwrapper via the terminal:
sudo pip install virtualenvwrapper
  1. Create the AppsCake virtualenv working directory:
virtualenv appscake-env
  1. Open newly created virtualenv working directory:
cd appscake
  1. Activate the AppsCake virtualenv:
source bin/activate
  1. Installing dependencies for debian systems -- for Mac OSX ensure git and expect are installed in your path (if not use Homebrew to install):
sudo apt-get install git-core
sudo apt-get install expect
  1. Cloning the AppsCake repository:
git clone https://github.com/AppScale/appscake.git
  1. Installing the AppScale Tools and requirements:
cd appscake
bash get_tools.sh
sudo pip install -r requirements.txt
  1. Running AppsCake:
python manage.py runserver
  1. Navigate to the URL returned from the command above to use AppsCake.

License

This software is licensed under the New BSD License. For more information, read the file LICENSE.

Bitdeli Badge

appscake's People

Contributors

bitdeli-chef avatar hiranya911 avatar nlake44 avatar shatterednirvana avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

appscake's Issues

can't upload more than one app

Since appscake is a wrapper around appscale-run-instances, it can only upload one app (since that's what run-instances supports). As actual users would want to run more than one app, we should be able to support this use case. We could do so by not letting users upload apps when appscale starts, and then provide a separate page that wraps around appscale-upload-app to upload applications.

appscake needs a unit test suite

Right now there's no way to ensure that changes to appscake don't break the code base, asides from running it. Would like to use Ruby's test/unit and flexmock to perform testing, and then have the default rake task (along with 'rake test') run unit tests.

appscake does not support single-node, simple deployment

When I try to run appscake with the following ips.yaml:


---
:controller: 128.111.55.XXX

I get the following error message:

AppsCake Error!
AppsCake has detected an error with your request. Please check the error details below, go back and re-submit the form with the correct information.

Error Message: IP Configuration Error
Details: Following required roles are not configured: appengine

Since the AppScale tools does support this use case, appscake should support it as well.

private key / certs shouldn't be version-controlled

To properly support HTTPS, we shouldn't make the private key and certificate publicly available. We should have a rake task that automatically generates a pk and cert on a machine - the workflow I'm thinking is as follows:

"rake deploy" starts up appscake
this task depends on "rake cert", which does nothing if the cert/pk exists, and generates it otherwise

Error generating cryptographic key [Deploying AppScale via AppsCake]

Hi, I'm a new user of Appscale,
First, i created appscale1.6.6 box on VirtualBox
Then , i installed Appscake using the Apscake/README.txt and the youtube video to do it.
When i tried deploying via web interface, i shose virtualized cluster Xen/KVM, i have:

Cloud Deployment Log:
AppScale key 'appscale' not found on the disk. Generating...
[ERROR] Runtime error in deployment process: You do not have the 'expect' command in your PATH. Please ensure that it is in your path and try again.

How can i fix this please.
Thanks.
Asma.

can't start appscake on Mac, centos 6 or Lucid

various issues. For now I'll stick to:

on controller node (KVM)

root@appscale-image0:# gem install appscake
Successfully installed appscake-0.0.1
1 gem installed
Installing ri documentation for appscake-0.0.1...
File not found: lib
root@appscale-image0:
# appscake
/usr/bin/appscake:19:in `load': /usr/lib/ruby/gems/1.8/gems/appscake-0.0.1/bin/appscake:5: unterminated string meets end of file (SyntaxError)
/usr/lib/ruby/gems/1.8/gems/appscake-0.0.1/bin/appscake:5: syntax error, unexpected tSTRING_END, expecting tSTRING_CONTENT or tREGEXP_END or tSTRING_DBEG or tSTRING_DVAR
from /usr/bin/appscake:19

UI could be prettier

Right now appscake is functional but not yet pretty. Would like to see something like bootstrap used to solve this problem.

Documentation

I don't know where to place my sample applications so that they show up in AppsCake's dropdown menu. Throwing up a wiki page on github that explains how to do this would be great!

pk/cert upload doesn't work on Windows

When uploading private keys on a Windows box, appscake complains that the private key is in an invalid format (application/octet-stream), when in fact it is the correct file (and presumably in the correct format).

AppsCake needs rake task to start up on boot

We want to create an EC2 image that boots up AppsCake when it starts up. Since we don't want to make users be familiar with this process, we should write a rake task that does this (along with a rake task to remove appscake from the boot process).

appscake needs code coverage info

For other AppScale projects written in Ruby, we have rcov generate code coverage information. Once we get unit tests written (issue #4), then we can slap in rcov to generate this for us, and write a rake task to make it easier for other users to run.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.