Home > pyo

pyo

Pyo is a project mainly written in JAVASCRIPT and RUBY, it's free.

public beta version of putyourselfon.com

== PutYourselfOn.com

This the Ruby on Rails application powering PutYourselfOn.com.

The project has git submodules for plugins and the capistrano / moonshine libraries.

== Bootstrapping

Add a config/database.yml for the project. Railsmachine deployment takes care of this, so don't worry about checking a new one in.

Add RVM to the project. Here's a sample:

rvm 1.8.7@pyo

Then you'll need to install rails (and rack):

gem install rails -v 2.3.3 gem install mysql

You can then load the schema:

rake db:schema:load

Also be sure to run:

$ git submodule init && git submodule update

Pivotal Tracker for tasks is here:

https://www.pivotaltracker.com/projects/294381

Production Server is Amazon EC2.

Staging Server is: 67.202.20.214

http://67.202.20.214

username: admin password: testit!

== Deployment

You may need to install the capistrano-ext gem:

gem install capistrano-ext

You can then deploy to staging:

cap staging deploy

== Required libraries

  • amazon-ec2 version 0.2.6. WARNING, newer versions do not work:

    sudo gem install amazon-ec2 --version "=0.2.6"

  • capsize

    sudo gem install jnewland-capsize -s http://gems.github.com

Please note the submodules are required to deploy to staging or production:

git submodule init && git submodule update

NOTE: We removed two submodules:

[submodule "vendor/plugins/count_von_count"] path = vendor/plugins/count_von_count url = git://github.com/toastyapps/count_von_count

[submodule "vendor/plugins/covalence"] path = vendor/plugins/covalence url = git://github.com/digitalscientists/covalence.git

So the only submodule we use is the moonshine one.

== Making changes to the server

To add new packages or make configuration changes on the server, please edit the following files. They contain examples for common configurations. If you have any questions about how to make a particular change, the Rails Machine staff is always ready to help.

  • config/moonshine.yml

    Use this file to manage configuration related to deploying and running the app: domain name, git repos, package dependencies for gems, and more.

  • app/manifests/application_manifest.rb

    Use this to manage the configuration of everything else on the server: define the server 'stack', cron jobs, mail aliases, configuration files

== Deploying

  • config/moonshine.yml

    Use this file to manage configuration related to deploying and running the app: domain name, git repos, package dependencies for gems, and more.

  • app/manifests/application_manifest.rb

    Use this to manage the configuration of everything else on the server: define the server 'stack', cron jobs, mail aliases, configuration files

We're using the multi-stage deployment functionality of the excellent capistrano-ext gem to allow you to separately deploy to your staging and production server. If you don't already have this gem installed, please do so by running sudo gem install capistrano-ext.

Use cap staging deploy to deploy to staging and cap production deploy to update production code.

On every deployment, Moonshine will make sure that all gems, packages, and configurations are as specified in moonshine.yml and in the manifest.

Previous:gateway