View Single Post
  #2   Spotlight this post!  
Unread 24-07-2013, 12:27
DampRobot's Avatar
DampRobot DampRobot is offline
Physics Major
AKA: Roger Romani
FRC #0100 (The Wildhats) and FRC#971 (Spartan Robotics)
Team Role: College Student
 
Join Date: Jan 2012
Rookie Year: 2010
Location: Stanford University
Posts: 1,277
DampRobot has a reputation beyond reputeDampRobot has a reputation beyond reputeDampRobot has a reputation beyond reputeDampRobot has a reputation beyond reputeDampRobot has a reputation beyond reputeDampRobot has a reputation beyond reputeDampRobot has a reputation beyond reputeDampRobot has a reputation beyond reputeDampRobot has a reputation beyond reputeDampRobot has a reputation beyond reputeDampRobot has a reputation beyond repute
Re: Team 254 Open-Source Release: Cheesy Parts

Here's the process I used to get it working on my Windows 7 laptop.

First, download and install the programs listed on the CP README. I installed Ruby 1.9.3 using Ruby windows installer (or something like that). You're going to need an Oracle account to install MySQL, just do it even though creating new accounts is a hassle. I used default installation settings for both, and installed Ruby in C:\\Ruby193.

After installing Ruby, open up a Ruby command line. You're going to be doing a fair amount of work in this window. I believe now you have to type in "gem install bundler" to install bundler.

Then download the .zip of CP. I unzipped it and put it under C:\\Users\Damp. Then, open the folder "config" in the CP main folder, and double click on the eviornment.rb file to edit it. I just edited it in Wordpad, you'll have to tell Windows which program to edit in. Then, chose a port between 8000 and 10000 and enter it in the quotation marks for port (I used 8010). I put the DB_HOST as "localhost", and put in root and 1234 for the user and password I had set up earlier when installing MySQL. I don't think URL, Gmail and Gmail pass are neccesary, I just put down my Gmail anyway. I deleted anything in the WORDPRESS_AUTH_URL, to leave only two quotation marks, like this "". Save the file and continue.

I had to add a gem later to the gemfile, but I think you can do it now. This is to supplement a gem that only works on Linux and OSX with one that works on Windows. Open the gemfile in CP main (not the .LOCK one), and add this line:

gem 'spork', '~> 0.9.0'

Then, save the file and continue.

Next, you're going to have to change the directory you're working in, to the CP main folder. Do this using the cd command. I entered cd C:\\Users\Damp\cheesy-parts-main in the Ruby command line and hit enter. Then, per the README, I entered bundle install and hit enter. This should download the various gems that CP depends on. Next, type in bundle exec rake db:migrate, which at first brought up some rake errors. I believe I eventually solved them by forcing bundler to install diferent versions of the rake gem by editing the gemfile. Make sure that you don't have multiple instances of rake in the gemfile, this will mess things up. The version of the gemfile that finally worked didn't have any other rake gems besides the rake which was there in the first place, but the fix working might have depended on the rakes that I forcibly installed earlier. Go figure.

Then, run ruby parts_server_control.rb run. If everything went as planned, you should see some message about pressing CTL-C to stop the server if everything went as it should have.

At this point, go to your trusty web browser, and enter http://localhost:[port]. I entered http://localhost:8010. Hit enter, and the CP login page should pop up. At this point, you can login with the user and pass on the CP README, and create other users.

At this point, when I try to create a new part, I get MySQL errors. This might be me, or it might be the CP software. Pat says he's working on it.

This thing required about 8 hours of debugging for me, someone who has zero experience with ruby and MySQL. If I got an error, I'd google the important part of the message, and see what others had done. Sometimes, these fixes would work and sometimes they wouldn't. Again, I couldn't have done this without Pat's gracious help.
__________________
The mind is not a vessel to be filled, but a fire to be lighted.

-Plutarch