I’m confused regarding the env_run_lists
in the following roles/base.rb
. And this didn’t http://wiki.opscode.com/display/chef/Roles#Roles-envrunlists make me clear enough.
name "base"
description "Base role applied to all nodes."
run_list(
"recipe[apt]",
"recipe[build-essential]",
"recipe[git]",
"recipe[zsh]",
"recipe[users::sysadmins]",
"recipe[sudo]",
)
env_run_lists(
"production" => ["recipe[chef-client]"],
"staging" => [])
)
When I run the knife ec2 server create -E staging ....
, i.e. in the staging
environment, the node’s run_list is blank.
Is this the expected behavior? I was thinking that the env_run_lists
items would be added up with the items in the above run_list
items, just like the rails app’s config/database.yml
@millisami
~ Sachin Sagar Rai
Ruby on Rails Developer
http://tfm.com.np
http://nepalonrails.tumblr.com
Sent with Sparrow (http://www.sparrowmailapp.com/?sig)
On Apr 20, 2012, at 12:57 PM, Sachin Sagar Rai wrote:
I'm confused regarding the env_run_lists
in the following roles/base.rb
. And this didn't http://wiki.opscode.com/display/chef/Roles#Roles-envrunlists make me clear enough.
name "base"
description "Base role applied to all nodes."
run_list(
"recipe[apt]",
"recipe[build-essential]",
"recipe[git]",
"recipe[zsh]",
"recipe[users::sysadmins]",
"recipe[sudo]",
)
env_run_lists(
"production" => ["recipe[chef-client]"],
"staging" => [])
)
When I run the knife ec2 server create -E staging ....
, i.e. in the staging
environment, the node's run_list is blank.
Is this the expected behavior? I was thinking that the env_run_lists
items would be added up with the items in the above run_list
items, just like the rails app's config/database.yml
As mentioned on the wiki page, the env run list is an override, so it totally replaces the default non-env run list if the env matches. Otherwise there would be no way to remove items and ordering would be much harder to grok.
--Noah
Because it's just Ruby:
name "base"
description "Base role applied to all nodes."
all = [
"recipe[apt]",
"recipe[build-essential]",
"recipe[git]",
"recipe[zsh]",
"recipe[users::sysadmins]",
"recipe[sudo]",
]
run_list(all)
env_run_lists(
"production" => all + ["recipe[chef-client]"],
"staging" => all,
)
Cheers,
Jay
On Mon, Apr 23, 2012 at 2:36 PM, Noah Kantrowitz noah@coderanger.netwrote:
On Apr 20, 2012, at 12:57 PM, Sachin Sagar Rai wrote:
I'm confused regarding the env_run_lists
in the following
roles/base.rb
. And this didn't
http://wiki.opscode.com/display/chef/Roles#Roles-envrunlists make me
clear enough.
name "base"
description "Base role applied to all nodes."
run_list(
"recipe[apt]",
"recipe[build-essential]",
"recipe[git]",
"recipe[zsh]",
"recipe[users::sysadmins]",
"recipe[sudo]",
)
env_run_lists(
"production" => ["recipe[chef-client]"],
"staging" => [])
)
When I run the knife ec2 server create -E staging ....
, i.e. in the
staging
environment, the node's run_list is blank.
Is this the expected behavior? I was thinking that the env_run_lists
items would be added up with the items in the above run_list
items, just
like the rails app's config/database.yml
As mentioned on the wiki page, the env run list is an override, so it
totally replaces the default non-env run list if the env matches. Otherwise
there would be no way to remove items and ordering would be much harder to
grok.
--Noah
@Jay, Thanks.
I'm so stupid.
@millisami
~ Sachin Sagar Rai
Ruby on Rails Developer
http://tfm.com.np
http://nepalonrails.tumblr.com
Sent with Sparrow (http://www.sparrowmailapp.com/?sig)
On Tuesday, April 24, 2012 at 1:04 AM, Jay Feldblum wrote:
Because it's just Ruby:
name "base"
description "Base role applied to all nodes."
all = [
"recipe[apt]",
"recipe[build-essential]",
"recipe[git]",
"recipe[zsh]",
"recipe[users::sysadmins]",
"recipe[sudo]",
]
run_list(all)
env_run_lists(
"production" => all + ["recipe[chef-client]"],
"staging" => all,
)
Cheers,
Jay
On Mon, Apr 23, 2012 at 2:36 PM, Noah Kantrowitz <noah@coderanger.net (mailto:noah@coderanger.net)> wrote:
On Apr 20, 2012, at 12:57 PM, Sachin Sagar Rai wrote:
I'm confused regarding the env_run_lists
in the following roles/base.rb
. And this didn't http://wiki.opscode.com/display/chef/Roles#Roles-envrunlists make me clear enough.
name "base"
description "Base role applied to all nodes."
run_list(
"recipe[apt]",
"recipe[build-essential]",
"recipe[git]",
"recipe[zsh]",
"recipe[users::sysadmins]",
"recipe[sudo]",
)
env_run_lists(
"production" => ["recipe[chef-client]"],
"staging" => [])
)
When I run the knife ec2 server create -E staging ....
, i.e. in the staging
environment, the node's run_list is blank.
Is this the expected behavior? I was thinking that the env_run_lists
items would be added up with the items in the above run_list
items, just like the rails app's config/database.yml
As mentioned on the wiki page, the env run list is an override, so it totally replaces the default non-env run list if the env matches. Otherwise there would be no way to remove items and ordering would be much harder to grok.
--Noah