File tree Expand file tree Collapse file tree 1 file changed +11
-7
lines changed
crowbar_framework/app/models Expand file tree Collapse file tree 1 file changed +11
-7
lines changed Original file line number Diff line number Diff line change @@ -39,10 +39,7 @@ def initialize(node, role = nil)
3939 raise Crowbar ::Error ::NotFound . new
4040 end
4141 end
42- unless node . run_list . run_list_items . include? ( "role[#{ @role . name } ]" )
43- node . run_list . run_list_items << "role[#{ @role . name } ]"
44- node . save
45- end
42+ Node . ensure_node_role ( node , @role . name )
4643 # deep clone of @role.default_attributes, used when saving node
4744 @attrs_last_saved = @role . default_attributes . deep_dup
4845 @node = node
@@ -1705,13 +1702,20 @@ def create_new_role(new_name, machine)
17051702 role . default_attributes [ "crowbar" ] [ "network" ] = { }
17061703 role . save
17071704
1708- # This run_list call is to add the crowbar tracking role to the node. (SAFE)
1709- machine . run_list . run_list_items << "role[#{ role . name } ]"
1710- machine . save
1705+ Node . ensure_node_role ( machine , role . name )
17111706
17121707 role
17131708 end
17141709
1710+ def ensure_node_role ( node , role_name = nil )
1711+ role_name = make_role_name ( node . name ) if role_name . nil?
1712+ unless node . run_list . run_list_items . include? ( "role[#{ role_name } ]" )
1713+ # This run_list call is to add the crowbar tracking role to the node. (SAFE)
1714+ node . run_list . run_list_items << "role[#{ role_name } ]"
1715+ node . save
1716+ end
1717+ end
1718+
17151719 def create_new ( new_name )
17161720 machine = Chef ::Node . new
17171721 machine . name "#{ new_name } "
You can’t perform that action at this time.
0 commit comments