Changes

Umlaut Setup

996 bytes added, 16:20, 19 June 2012
no edit summary
[[Category:Umlaut]]
 
=WARNING: This is Outdated Documentation!!!!=
 
'''THIS IS OUTDATED DOCUMENTATION''' See new Umlaut documentation at http://github.com/team-umlaut/umlaut/wiki
---------
= Umlaut First-Time Setup and Configuration =
''
Note: Having Rails 2 installed may cause the following rake tasks to fail.
== 1. Create Local Config Directories ==
To create directories for your local config, cd into your Umlaut directory, and run:
rake umlaut_lcl:./script/generateumlaut_local
This will create several directories including the one we care about now: $Umlaut/config/umlaut_config/
Mysql by default has no password for the root user. If you have set a root password, you will need to add this to $Umlaut/config/database.yml
:'''Explanation''': In a normal Rails app, your local config goes in places like config/environment.rb and config/database.yml. But Umlaut config/environment.rb has Umlaut application fixed settings in it, mixing in your local settings would be confusing. Plus, that config directory is in the Umlaut overall SVN, you might want to SVN control your local config seperately.
:Therefore we have an architecture to put all local config (and other local customization) in seperate local directories. The goal is that you should never have to edit any of the files that came with the Umlaut distribution to make local customizations, you should always be able to do this through local config. To learn more about this architecture, and how to put your local config in your own local svn, see [Main.[Umlaut Local Configuration Architecture]].
== 2. Configure your database connection information ==
In Umlaut (a little bit different than standard Rails), your local connection information for your dbs is stored in $Umlaut/config/umlaut_config/database.yml. There should already be an example file there with some hints in it.
We reccommend MySQL 5.x for use with Umlaut. ( SQLite3 won't work, unless you figure out a way to compile it with concurrency support). Create your databases in MySQL. We recommend making sure they are set to UTF8 char encoding. (eg, (CREATE DATABASE 'Name' DATABASE my_db_name DEFAULT CHARACTER SET utf8). Don't create any tables in your databases yet, that will be done automatically. Do fill out your umlaut_config/database.yml file to point at the right place.
For some search functions (manually entered journal name or citation), Umlaut can take advantage of uses a direct db connection to your SFX instance. We reccommend this for maximum functionality, but it's not required. If you have control of your SFX instance and would like to enable this, you You should use the MySQL utility to create a new user in the SFX MySQL instance, which is granted only select permissions to the SFX databases. Then, you can fill out your SFX direct to db connection information in config/umlaut_config/database.yml.  If you can't do this, or don't want to do this now, talk to Jonathan, it may be possible to set up other functionality. Umlaut should still (mostly) workused to support a bulk export from SFX instead of a live db connection, but that functionality has atrophied. It can in theory be brought back if needed.
== 3. Create your database tables ==
Once your dbs are configured in database.yml, you can have Rails create all the neccesary tables for you by running(from the Umlaut directory):
:rake db:migrateschema:load
:rake db:migrate schema:load RAILS_ENV=production
== 4. Set up initial Umlaut data ==
Note: The A-Z list and journal name lookup will only currently work if using the direct connection to the SFX database.
After editing the institutions== 6.yml file, it needs to be synced with the db, as some institution information is stored in the db. Umlaut should check on startup if timestamp of institutions.yml requires a resync and do it automatially, but if you want to do it manually you can run cd into the $UMLAUT directory and run:Review additional local configuration ==
There are several files in $Umlaut/config/umlaut_config/initializers/umlaut that contain additional local configuration parameters. A bunch of examples are provided for you, you'll have to un-comment the line and set a value if you want to locally configure a particular property.
:rake There are only a few that are really best set right away, all in umlaut_config/initializers/umlaut:sync_institutions /umlaut_properties.rb* You may want to set your local application name and a URL to an image for a 'link resolver button'. The button is mainly only used in Umlaut 'search' functionality (RAILS_ENV=productionlook up a manually typed in citation or journal name). * You will definitely need to point AppConfig::Base.main_sfx_base_url to your SFX base URL. This is not used in general link resolver menu functions, but may be used in 'search' function to look up a manually typed in journal name or citation. It is also used on Umlaut's error page, to give the user an option of going to the native original SFX in an error condition. * You may want to set AppConfig::Base.help_url , which is also used on error pages.
 This command ensures the db information is synced with the institutions.yml information. == 6. Review additional local configuration == If There's really nothing else here you look in $need to change to get Umlaut/config/umlaut_config/environment.rb, to work properly for you will find some comments showing you some more configuration parameters you may want to set. None of them need to be set now, but it would be wise feel free to review them and set obvious ones, like look around in the name other files in initializers to see what sorts of things you would like to call your service can customize (eg Find It)an awful lot, and the URL sometimes by writing custom logic in ruby code to an icon for determine a button to your serviceparticular Umlaut decision.)
== 7. Nightly maintenance ==
Some maintenance routines meant to be run nightly can be executed by cd'ing to your $Umlaut directory and running:
:rake umlaut:nightly_maintenance (RAILS_ENV=production)
To put that in a cron job, use this (with parens, where $Umlaut represents your umlaut install directory as usual):
== Next Steps? ==
To try out Umlaut, cd into the $Umlaut directory and run "./script/server" to launch the Rails app. (Be sure you've installed mongrel with 'sudo gem install mongrel', in which case Umlaut will be started with the mongrel environment. The default WEBrick environment will not work for Umlaut!). You'll then connect to Umlaut on   http://yourservername.tld:3000 .  The resolver base URL will be:   http://yourservername.tld:3000/resolve?. The A-Z search interface will be:   http://yourservername.tld:3000/search
The A-Z search interface will be (should also work on straight http://yourservername.tld:3000/search)
This is a fine way to start it just for testing, but to deploy it for real see [[Umlaut Deployment]].
You may also be interested in providing your own customized header, footer, or stylesheets. For this, and more localization, you'll find it helpful to see [[Umlaut Local Configuration Architecture]].