Imagine you have some complex logic you want to make pluggable and extendable. You might use hooks like:
def do_stuff
before_hook if respond_to?(:before_hook)
# do stuff
after_hook if respond_to?(:after_hook)
end| {"puppetlabs/nodejs":[{"file":"/system/releases/p/puppetlabs/puppetlabs-nodejs-0.1.0.tar.gz","version":"0.1.0","dependencies":[["puppetlabs/apt",">= 0.0.2"]]},{"file":"/system/releases/p/puppetlabs/puppetlabs-nodejs-0.1.1.tar.gz","version":"0.1.1","dependencies":[["puppetlabs/apt",">= 0.0.3"]]},{"file":"/system/releases/p/puppetlabs/puppetlabs-nodejs-0.2.0.tar.gz","version":"0.2.0","dependencies":[["puppetlabs/apt",">= 0.0.3"],["puppetlabs/stdlib",">= 2.0.0"]]},{"file":"/system/releases/p/puppetlabs/puppetlabs-nodejs-0.2.1.tar.gz","version":"0.2.1","dependencies":[["puppetlabs/apt",">= 0.0.3"],["puppetlabs/stdlib",">= 2.0.0"]]},{"file":"/system/releases/p/puppetlabs/puppetlabs-nodejs-0.3.0.tar.gz","version":"0.3.0","dependencies":[["puppetlabs/apt",">= 0.0.3"],["puppetlabs/stdlib",">= 2.0.0"]]},{"file":"/system/releases/p/puppetlabs/puppetlabs-nodejs-0.4.0.tar.gz","version":"0.4.0","dependencies":[["puppetlabs/apt",">= 0.0.3"],["puppetlabs/stdlib",">= 2.0.0"]]},{"file":"/system/releases/p/puppetlabs/puppetlab |
| $ips = ["1.2.3.4", "5.6.7.8"] | |
| define print { notify{$name: } } | |
| $a = map($ips) |$ip| { "http://${ip}:12900/" } | |
| print{$a: } |
| */5 * * * * root /usr/lib64/nagios/plugins/check_load -w 0.7,0.6,0.5 -c 0.9,0.8,0.7 >/dev/null && /slow/and/big/ruby/thing.rb |
| $ docker run -d -p 8080:80 --name decci dell/lamp-base | |
| $ echo test|docker exec decci tee /var/www/html/index.html | |
| $ curl http://localhost:8080/ | |
| test | |
| $ docker kill decci | |
| $ docker rm decci |
| newfunction(:mbdomain_to_idn, :type => :rvalue) do |args| | |
| mbdomains = args[0] | |
| idns = [""] | |
| if defined?(SimpleIDN) | |
| idns = Array(mbdomains).map do |mbdomain| | |
| SimpleIDN.to_ascii(mbdomain) | |
| end | |
| end |
| netmap = {"192.168.0.0" => {"192.168.2.0" => "net1"}, | |
| "191.168.1.0" => {"192.168.3.0" => "net2"}} | |
| setcode { netmap.fetch($network_eth0, {}).fetch($network_eth1, "unknown") } |
| foo = case [$network_eth0, $network_eth1] | |
| when ["192.168.1.0", "192.168.2.0"] | |
| "net1" | |
| else | |
| "unknown" | |
| end |
| [rip@devco]% irb | |
| >> require 'facter' | |
| => true | |
| >> Facter.value(:foo) | |
| => nil | |
| >> |
| class one { | |
| notify{"one": } | |
| } | |
| class two { | |
| notify{"two": } | |
| Notify <| |> { message => "hello" } | |
| } |
Imagine you have some complex logic you want to make pluggable and extendable. You might use hooks like:
def do_stuff
before_hook if respond_to?(:before_hook)
# do stuff
after_hook if respond_to?(:after_hook)
end