summaryrefslogtreecommitdiff
path: root/lib/chef/node
Commit message (Collapse)AuthorAgeFilesLines
* tags always an array; fix set_unlessLamont Granquist2015-12-142-3/+3
| | | | | | | previously if the node had a { normal: { tags: nil } } that we read since the key existed (but was nil) we would not initialize with an array. replacing the code with a call to node.set_unless revealed that set_unless was similarly buggy. fixed both issues by fixing set_unless.
* Completing tests for https://github.com/chef/chef/pull/2310, fixes ↵tball/complete-2310tyler-ball2015-02-111-0/+4
| | | | https://github.com/chef/chef/issues/1562
* Use #define_method instead of #class_eval (ruby 1.8 specific, issue #2497)Xabier de Zuazo2015-01-273-27/+15
|
* deep_merge_cache fixes for bugs in 12.0.0Lamont Granquist2015-01-141-4/+4
| | | | | | | | In 12.0.0 we introduced a cache for the merged attributes for the top-level node attribute keys. This fixes this so that node['foo'] and node[:foo] are not cached separately. This also showed up in bugs as issues between node['foo'] access and node.foo access because node.foo is translated into node[:foo].
* WIP: immutabilizing deep mergelcg/remove-knockout-mergeLamont Granquist2014-11-212-1/+7
|
* deleted the last end accidentallyLamont Granquist2014-11-211-2/+4
|
* add more commentaryLamont Granquist2014-11-211-4/+20
|
* add partial deep merge cacheLamont Granquist2014-11-212-1/+53
|
* revert to serdar's deep_merge de-dup versionLamont Granquist2014-11-191-4/+16
|
* fix ImmutableAttributeModification exceptionLamont Granquist2014-11-192-7/+3
|
* remove cache resettingLamont Granquist2014-11-192-9/+0
|
* remove lots of useless deep merge dupingLamont Granquist2014-11-191-2/+2
|
* WIP: lazy deep mergingLamont Granquist2014-11-191-46/+78
|
* fix autovivificationLamont Granquist2014-11-082-31/+78
|
* chef-12 attribute changesLamont Granquist2014-11-082-13/+159
| | | | | | - adding rm, rm_default, rm_normal, rm_override APIs - adding default!, normal! and override! APIs - changing force_default! and force_override! APIs
* [CHEF-5132] ImmutableCollections #to_a and #to_hash methods fixed and improvedXabier de Zuazo2014-03-281-11/+19
|
* [CHEF-3953] ImmutableMash and ImmutableArray should implement to_hash and ↵brianbianco2014-03-281-0/+24
| | | | | | | | to_a respectively - ImmutableMash now implements a to_hash method. This recurses through the ImmutableMash and returns a fully mutable Hash - ImmutableArray now implements a to_a method. This recurses through the ImmutableArray and returns a fully mutable Array - Unit tests added for both of the above methods
* [CHEF-4799] Handle non-dupable elements when duping attribute arraysPierre Ynard2014-01-102-2/+16
|
* Normalize whitespace on all filesSeth Vargo2013-09-261-1/+1
|
* [CHEF-3806] add attribute value debugdanielsdeleo2013-01-291-0/+28
|
* also clear set_unless_present in reset_cacheLamont Granquist2013-01-291-0/+1
|
* [CHEF-3799] fixes TypeError for puts on VividMashdanielsdeleo2013-01-281-1/+8
|
* fix errors when merging deeply nested valuesdanielsdeleo2013-01-251-15/+20
|
* make merge between precedence overwrite arraysdanielsdeleo2013-01-251-3/+3
|
* CHEF-3688 remove stale attribute read protectionAdam Jacob2012-12-122-224/+11
| | | | | | This commit removes stale attribute read protection, as it does more harm than good. Includes removal of passing "root" around to immutablize.
* [CHEF-3680] don't invalidate computed attributes on dupdanielsdeleo2012-12-112-1/+11
|
* [CHEF-3680] Specify file and line for evaldanielsdeleo2012-12-112-6/+6
|
* Add "force" level precedence to Node::Attributedanielsdeleo2012-11-091-2/+35
|
* [CHEF-2936] ensure all default and override attrs go in node jsondanielsdeleo2012-11-021-0/+37
| | | | | | | | | | default and override attributes are now split into components, so all the components need to be merged together to generate the serialized representation of a node. Unfortunately, this means that serializing a node is now lossy because the information about which component default and override attributes belong to is lost. In practice, this is not a major issue, since automatic, override, and default attributes are cleared by chef for each run.
* [CHEF-2936] add role and environment components to Node::Attributedanielsdeleo2012-11-021-129/+179
| | | | | | | | | I reformatted Chef::Node::Attribute because the indentation was busted. The actual code change is that Attribute now has components for role_default, env_default, role_override, and env_override, and merges them according to the precedence given in the documentation. These new components are not yet wired in to Chef::Node, however.
* [OC-3564] move core Chef to the repo root \o/ \m/Seth Chisamore2012-10-303-0/+832
The opscode/chef repository now only contains the core Chef library code used by chef-client, knife and chef-solo!