My first animation art which is butterflies flying away to the sky with the full of flowers on the ground.
Original image is here.
If you can’t watch the video, view it directly from here.
— EDIT at Mar. 23
Added particles.
There is a great cookbook posted on GitHub to configure logrotation with Chef though, it may work on Ruby 1.9 or greater. My server Ruby1.8 installed couldn’t run its recipes.
I fixed a part of the cookbook so that it can also work on Ruby1.8:
https://gist.github.com/noradaiko/5219337.js
Diff is as follows:
--- a/cookbooks/logrotate/libraries/logrotate_config.rb +++ b/cookbooks/logrotate/libraries/logrotate_config.rb @@ -28,36 +28,46 @@ module CookbookLogrotate end def directives_from hash - hash.select { |k, v| DIRECTIVES.include?(k) && v }.keys + Hash[ hash.select { |k, v| DIRECTIVES.include?(k) && v } ].keys end def values_from hash - hash.select { |k| VALUES.include? k } + Hash[ hash.select { |k, v| + VALUES.include? k + } + ] end def paths_from hash - hash.select { |k| !(DIRECTIVES_AND_VALUES.include? k) }.inject({}) do | accum_paths, (path, config) | - accum_paths[path] = { - 'directives' => directives_from(config), - 'values' => values_from(config), - 'scripts' => scripts_from(config) - } + pp hash + Hash[ hash.select { |k| !(DIRECTIVES_AND_VALUES.include? k) } ].inject({}) do | accum_paths, (path, config) | + pp "----" + if config.instance_of?(Mash) + accum_paths[path] = { + 'directives' => directives_from(config), + 'values' => values_from(config), + 'scripts' => scripts_from(config) + } - accum_paths + pp accum_paths[path] + accum_paths + else + accum_paths + end end end def scripts_from hash - defined_scripts = hash.select { |k| SCRIPTS.include? k } - defined_scripts.inject({}) do | accum_scripts, (script, lines) | - if lines.respond_to? :join - accum_scripts[script] = lines.join "n" - else - accum_scripts[script] = lines - end + defined_scripts = hash.select { |k| SCRIPTS.include? k } + defined_scripts.inject({}) do | accum_scripts, (script, lines) | + if lines.respond_to? :join + accum_scripts[script] = lines.join "n" + else + accum_scripts[script] = lines + end - accum_scripts - end + accum_scripts + end end end
Hope it helps.