Skip to content
gnomet edited this page Jan 31, 2011 · 53 revisions

Welcome to the Kassi wiki!

Installation instructions

NOTE: these installation instructionss are very vague at the moment. If you try installing and encounter problems, please report them for example in Issues. And if you notice some steps missing, please edit the wiki and add them. We also try to keep enhancing the level of the documentation.

Below the installation instructions there is space for OS-specific tips, so if you have problems, check there, and if you get your problem solved, add instructions to the tips section.

Before you begin, you should have Ruby, RubyGems and Rails 3 and Git installed.

  1. Make sure you have access to some ASI server. Kassi needs an ASI server to work. You can install ASI yourself or also temporarily use the test server of OtaSizzle project located in Finland. (you can message gnomet if you need more info about this option)
  2. Get the code (git clone is probably easiest way: git clone git://github.com/sizzlelab/kassi.git)
  3. cp config/database.example.yml config/database.yml
  4. You need to have a database available for Kassi. And a user that has access to it. (If you are going to do development you should have separate databases for development and testing also).
  5. Edit details according to your database to database.yml (if you are not going to develop Kassi, it’s enough to fill in the production database)
    • Probably you only need to change the passwords to the same that you used when creating the databases.
  6. cp config/config.example.yml config/config.yml
  7. Edit details according to your system configuration to config.yml. If there is something unclear, post a question for example to Issues.
  8. Install Sphinx. See Sphinx installation instructions.
  9. Install Imagemagick
  10. Install Memcahed (You can run Kassi without it, but caching makes it faster)
  11. You may have more success installing the mysql gem manually at this point, particularly on Mac OS X 10.6
    gem install mysql
    or on Mac OS X
    env ARCHFLAGS="-arch x86_64" gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config
    (you will need to make sure that the path to mysql_config is correct)
  12. use bundle install to install required gems
  13. (In the following 3 commands, leave out the RAILS_ENV=production part if you want to get Kassi running in development mode.) Load the database structure to your database: rake RAILS_ENV=production db:schema:load
  14. run sphinx index rake RAILS_ENV=production thinking_sphinx:index
  15. start sphinx daemon rake RAILS_ENV=production thinking_sphinx:start
  16. Start the server. There are many options for this, lately we have been using Passenger, but the simpliest way is to use command rails server which will start it on Mongrel, that is good option for development use.

Tips for different platforms and OS

Windows
  • Note that the installation instructions are written for *nix-based systems so you need to change the commands a little to make them work in windows (e.g. cp becomes copy in windows)
Mac Os X
  • If you are using MySQL, please note that Mac OS X 10.6 requires a 64-bit version of MySQL.

Administering the installed Kassi server

Most of the management operations need to be done in the Rails console.Admin of kassi server page contains some help for that.

Contribute to development

If you want to see what is currently being done by the core development team, you can take a look at the Pivotal Tracker

  1. install git: instructions
  2. if you are a collaborator, see Collaborator guide otherwise fork the project.
  3. check git instructions if needed from: learn.github.com
  4. commiting changes with informative english commit message that explains the changes you’ve made.
    • if you are a collaborator, you can push directly, if you set the ssh-key on your profile
    • otherwise make a push to your own forked repository and if you thing that the commit would be useful for the main Kassi branch, please make a pull request by clicking the “Pull request” button in your project or on the page of your commit. This github guide explains forking nicely.
Clone this wiki locally