From: Tomas Sedovic <[email protected]>

---
 README |  186 +++++++++++++++++++++++-----------------------------------------
 1 files changed, 67 insertions(+), 119 deletions(-)

diff --git a/README b/README
index 28b36ad..96fafde 100644
--- a/README
+++ b/README
@@ -1,8 +1,10 @@
 Getting the sources
 -------------------
+
 The Deltacloud project consists of two parts: **Core** and **Aggregator**. Core
 gives you the API and drivers to various cloud providers. It also provides a
-client to the API so that you can see it in action.
+commandline client to the API so that you can see it in action and a library
+for writing your own clients.
 
 Aggregator is a web frontend to the API.
 
@@ -24,162 +26,108 @@ or download them to your computer:
 Note that the development of the **docs** and **aggregator** takes place on the
 `next` branch, which contains the latest version of the code.
 
-To get the stable version, omit the `--branch next` part.
+If you `git` doesn't support the `--branch` option, do this instead:
 
+    $ git clone git://git.fedorahosted.org/git/deltacloud/aggregator.git/
+    $ cd aggregator
+    $ git checkout -t -b next origin/next
 
-Installing packages
--------------------
-In order to make the Deltacloud components work, you'll need to
-install at least the following packages (on Fedora 12; your distro's
-packages may vary):
+To get the stable version, don't switch to the `next` branch at all.
 
+Required packages
+-----------------
+In order to make the Deltacloud components work, you'll need to
+have the following packages installed (on Fedora 12; the names may vary on
+your distro):
+
+    ruby
+    ruby-devel
+    gcc-c++
+    libxml2-devel
+    libxslt-devel
     rubygem-rails
-    rubygem-daemons
     rubygem-gettext_rails
     rubygem-sqlite3-ruby
-    rubygem-haml
-    rubygem-sinatra
-    rubygem-thin
-
-Some packages are not in Fedora yet and you have to install them using
-[rubygems](http://rubygems.org/):
-
-    # gem install compass
-    # gem install authlogic
-
-If you want to develop using PostgreSQL database instead of the default SQLite,
-install these, too:
-
-    ruby-postgres
-    postgresql
-    postgresql-server
-
-You will also need **deltacloud-client** gem. You can either install the 
packaged version:
-
-    # gem install deltacloud-client
-
-or build it yourself from the **core** repository:
-
-    $ cd core/client
-    $ gem build deltacloud-client.gemspec
-    $ sudo gem install deltacloud-client-<version>.gem
-
-
-Database
---------
-For development purposes we're using [SQLite] database which is much easier to
-set up.
-
-However, we _strongly_ suggest using a more suitable replacement (such as
-[PostgreSQL]) in production.
-
-[SQLite]: http://www.sqlite.org/
-[PostgreSQL]: http://www.postgresql.org/
-
-If you want to set up PostgreSQL, read the following section. SQLite users may
-skip it and continue with "Setting up the drivers".
-
-
-PostgreSQL database setup
--------------------------
-Once you have the proper packages installed you have to setup the
-postgresql database.  As root:
 
-    # /sbin/service postgresql initdb
-    # /sbin/service postgresql start
-    # su - postgres
-    # psql
-    postgres=# CREATE USER dcloud WITH PASSWORD 'v23zj59an' CREATEDB;
-    postgres=# \q
-    exit
+**Note:** we recommend using Rails version 2.3.4 or 2.3.5 (default in
+Fedora 12). Older or newer versions may not be compatible at the moment.
 
-Now you need to edit the pg_hba.conf file
-(`/var/lib/pgsql/data/pg_hba.conf` on Fedora 12):
+Installing the Deltacloud Core
+------------------------------
 
-    local all all trust
-    host all all 127.0.0.1 255.255.255.255 trust
-    host all all ::1/128 trust
-
-If you are running on Fedora 12 *only*, to make rake
-succeed you need to append the following to
-`/usr/lib/ruby/gems/1.8/gems/activerecord-2.3.4/lib/active_record/connection_adapters/postgresql_adapter.rb`:
-
-    def PGconn.quote_ident(name)
-       %("#{name}")
-    end
-
-(see <http://github.com/mneumann/postgres-pr/issues/unreads#issue/1>)
-
-
-Setting up the drivers
-----------------------
-For testing purposes we'll start with the mock driver. Use of the
-rest of the drivers should be similar, although may require some
-additional gems be installed.
-
-The easiest way to solve the gem dependencies is to build the deltacloud-core
-gem:
+First, you need to install the server that will give you the Deltacloud API:
 
     $ cd path/to/deltacloud/core/server
     $ rake package
     $ sudo gem install pkg/deltacloud-core-<version>.gem
 
-To start the server, run the `delacloudd` script:
+Then install the client library:
 
-    $ cd path/to/deltacloud/core/server/bin
-    $ ./deltacloudd -i mock
+    $ cd path/to/deltacloud/core/client
+    $ rake package
+    $ sudo gem install deltacloud-client-<version>.gem
 
-This will run the Deltacloud Core server on port 3001.
+Once you have the client installed, run the following command:
 
+    $ rake fixtures
 
 Setting up the Aggregator
--------------------------
-Now we need to setup the Aggregator. As your user who will run the Aggregator:
+------------------------------------
 
-### With SQLite ###
+The easiest way to get Deltacloud up and running is to use [SQLite] as the
+database backend:
 
-    $ cd path/to/deltacloud/aggregator/src/config
-    $ cp database.sqlite database.yml
+    $ cd aggregator/src
+    $ cp config/database.sqlite config/database.yml
 
 **Note:** you can update the paths in the "database.yml" file to change the
 location of the *.sqlite3 database files.
 
-    $ rake db:create:all
-    $ rake db:migrate
-    $ cd <wherever you put it>/db
+[SQlite]: http://sqlite.org/
 
-You should see the "development.sqlite3" file there. Make sure it is owned by
-the user who will run the Aggregator. The directory where the database files
-are stored must be also writable by this user.
+This command installs all the missing ruby gems:
 
-### With PostgreSQL ###
+    # rake gems:install
+
+And this sets the database up:
 
-    $ cd path/to/deltacloud/aggregator/src
-    $ cp database.pg database.yml
     $ rake db:create:all
     $ rake db:migrate
-    $ rake db:test:prepare
 
-If all went well here, then the database should be ready for you
-to start up the Aggregator.
+Tying it all together
+---------------------
 
-You can now run the UI:
+**Note:** some distributions don't add the directory with the gem executables 
in
+your PATH environment. If that is the case, add the directory manually:
 
-    $ ./script/server
+    $ export PATH=$PATH:/var/lib/gems/<version>/bin
 
-Which will start up the Aggregator on port 3000.
+Run the Core server with the mock driver:
 
+    $ deltacloudd -i mock
 
-Checking out the UI
--------------------
-Now that you have all of the components running, you should be able to point
-your web browser at <http://localhost:3000> and see the Aggregator page.
+Now if you go to <http://localhost:3001/> you should be able to see a page
+documenting the API. If you add the ".xml" extension to any page, you will see
+the API in action.
+
+The mock driver simulates the API behavior without making you to connect
+to a real cloud provider. For a guide to connecting Deltacloud to a provider,
+go to the [Drivers section of the Documentation][drivers].
 
-To be able to use it properly, you will need to create a user. You can do it on
-the Aggregator website. Users created this way have limited privileges, 
however.
-We recommend setting up one user as an administrator of the site.
+[drivers]: ./drivers.html
 
-This is how you turn an existing user into an admin:
+Make sure that the `src/db` and `src/log` directories are owned by the user
+who will be running the Aggregator.
+
+Run the Aggregator:
 
     $ cd path/to/deltacloud/aggregator/src
+    $ ./script/server
+
+In your web browser go to <http://localhost:3000> and create a new user.
+
+To experience the full functionality, you should have one user with admin
+privileges. Run the following command in your `deltacloud/aggregator/src`
+directory (put the name of your Aggregator user in the brackets):
+
     $ rake dc:site_admin[aggregator_username]
-- 
1.6.6.1

_______________________________________________
deltacloud-devel mailing list
[email protected]
https://fedorahosted.org/mailman/listinfo/deltacloud-devel

Reply via email to