From: Michal Fojtik <[email protected]>
Signed-off-by: Michal fojtik <[email protected]> --- server/lib/db.rb | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/server/lib/db.rb b/server/lib/db.rb index 64cc283..49e6f33 100644 --- a/server/lib/db.rb +++ b/server/lib/db.rb @@ -16,22 +16,29 @@ module Deltacloud end def self.initialize_database + db = database - database.create_table?(:providers) { + db.create_table?(:providers) { primary_key :id column :driver, :string, { :null => false } column :url, :string - index [ :url, :driver ] + index [ :url, :driver ] if !db.table_exists?(:providers) } - database.create_table?(:entities) { + db.create_table?(:entities) { primary_key :id - foreign_key :provider_id, :providers, { :index => true, :null => false } + + unless db.table_exists?(:entities) + foreign_key :provider_id, :providers, { :index => true, :null => false } + end + column :created_at, :timestamp # Base - column :model, :string, { :index => true, :null => false, :default => 'entity' } + unless db.table_exists?(:entities) + column :model, :string, { :index => true, :null => false, :default => 'entity' } + end # Map Entity to Deltacloud model # (like: Machine => Instance) -- 1.8.0.2
