ACK with the following comments
On 02/03/2011 01:25 PM, Mike Orazi wrote:
Seeds aren't set up to be idempotent, so we use puppet to ensure seeds are only run once per environment. This should potentially revisited if seeds become more tolerant of re-runs.
recipes/deltacloud_recipe/manifests/aggregator.pp | 8 ++++++++ recipes/deltacloud_recipe/manifests/rails.pp | 10 +++++++++- 2 files changed, 17 insertions(+), 1 deletions(-)
diff --git a/recipes/deltacloud_recipe/manifests/aggregator.pp b/recipes/deltacloud_recipe/manifests/aggregator.pp index 716d28c..506f1b8 100644 --- a/recipes/deltacloud_recipe/manifests/aggregator.pp +++ b/recipes/deltacloud_recipe/manifests/aggregator.pp @@ -14,6 +14,9 @@ class deltacloud::aggregator inherits deltacloud { 'rubygem-deltacloud-image-builder-agent', 'iwhd']}
- file {"/var/lib/deltacloud-aggregator":
ensure => directory,
- }
Eventually the aggegator/conductor package itself should own this directory but its fine here for the time being.
### Setup selinux for deltacloud selinux::mode{"permissive":}
@@ -96,6 +99,11 @@ class deltacloud::aggregator::disabled { 'deltacloud-aggregator-doc'], Rails::Drop::Db["drop_deltacloud_database"]] }
- file {"/var/lib/deltacloud-aggregator":
ensure => absent,
force => true
- }
package { 'rubygem-deltacloud-client': provider => 'yum', ensure => 'absent', require => Package['deltacloud-aggregator']}
diff --git a/recipes/deltacloud_recipe/manifests/rails.pp b/recipes/deltacloud_recipe/manifests/rails.pp index 701abe3..cc91726 100644 --- a/recipes/deltacloud_recipe/manifests/rails.pp +++ b/recipes/deltacloud_recipe/manifests/rails.pp @@ -19,7 +19,14 @@ define rails::seed::db($cwd="", $rails_env=""){ exec{"seed_rails_database": cwd => $cwd, environment => "RAILS_ENV=${rails_env}",
command => "/usr/bin/rake db:seed"}
command => "/usr/bin/rake db:seed",
creates => "/var/lib/deltacloud-aggregator/${rails_env}.seed"
}
- file{"/var/lib/deltacloud-aggregator/${rails_env}.seed":
ensure => present,
recurse => true
}
I believe this file macro should require Exec['seed_rails_database'] and the File['/var/lib/deltacloud-aggregator'] to work properly, else it might be created before the db:seed is actually run or before the directory exists. If you could make this change and verify (tested it myself), just push.
-Mo
aeolus-devel@lists.fedorahosted.org