Aeolus: How to get started

From Pmgwiki

Revision as of 18:43, 16 August 2012 by Dcurtis (Talk | contribs)
Jump to: navigation, search

Directions for installing and running Aeolus code

  1. Prerequisites
    • Postgres database
      • Install the rpms or packages (postgresql, postgresql-server, postgresql-jdbc)
      • service postgresql initdb (or run initdb somehow else)
      • chkconfig postgresql on
      • sudo -u postgres createuser --superuser YOUR_UNIX_USERNAME
      • createdb AeolusAuthority
      • edit pg_hba.conf and change 127.0.0.1 entry to "trust" (fedora)
      • restart postgres server /etc/rc.d/init.d/postgresql restart
    • java 1.6 (OpenJDK 1.7 recommended)
    • ant
  2. Download code: (download link coming soon)
    • For people with pmg accounts
      • svn co svn+ssh://<Your-Name-Here>@lirone.csail.mit.edu/space/svnroot/aeolus aeolus
      • alternatively use eclipse to check out the sources from the repo
  3. Build code using Eclipse or ant
    • Eclipse: browse to build.xml, right click on build.xml and then choose Ant Build from the menu
    • ant: run "ant" in the aeolus directory (uses build.xml)
  4. Create environment
    • Create database (once)
      • AUTHORITY SERVER (per authority/server/AuthorityManager.java)
        • running as the postgres user
        • psql template1
        • CREATE DATABASE AeolusAuthority;
        • CREATE USER 'aeolus' PASSWORD '<password-from-AuthorityManager.java>';
        • GRANT ALL ON database AeolusAuthority TO aeolus;
  5. Run code
    • cd aeolus
    • ./run-server This starts the AS (aka the Authority Server)
    • ./run-vn edu.mit.csail.aeolus.apps.<insert dir-name>.<insert class-name> This starts the application
      • Note: do not use ".class" in the class name
      • Important: You can use ./run-vn -logging false <args-as-above> to turn off auditing. (The system is much slower with auditing enabled.)
  6. Misc notes
    • Note: aeolus-apps.jar contains all the classes in apps (or at least approximately)
    • Note: need to add aeolus-apps.jar to the class path if using shared state
    • Note: the Aeolus class loader always needs a full, absolute pathname

The API documentation is available here: [1]

Personal tools