summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorAdam Jacob <adam@hjksolutions.com>2008-03-10 00:38:43 -0700
committerAdam Jacob <adam@hjksolutions.com>2008-03-10 00:38:43 -0700
commit3dd77b260393bae93bb27677e3f8a45f407981c1 (patch)
treed017427ddcd5733caf7c0ceeec8ea72abbb107fa /examples
parentb4beed548959ca63365ca3d799c59a155047b5ff (diff)
downloadchef-3dd77b260393bae93bb27677e3f8a45f407981c1.tar.gz
Added rcov coverage, lots of tests, definitions, node support
Diffstat (limited to 'examples')
-rw-r--r--examples/config.rb20
-rw-r--r--examples/node.rb16
-rw-r--r--examples/node.yml134
-rw-r--r--examples/sample_definition.rb68
-rw-r--r--examples/sample_recipe.rb13
5 files changed, 244 insertions, 7 deletions
diff --git a/examples/config.rb b/examples/config.rb
new file mode 100644
index 0000000000..171554c416
--- /dev/null
+++ b/examples/config.rb
@@ -0,0 +1,20 @@
+#
+# Example config
+#
+
+nodes_from([
+ Chef::Node::YAML => {
+ :search_path => [ "/etc/chef/nodes" ]
+ },
+ Chef::Node::PuppetExternalNode => {
+ :command => ""
+ },
+ :rest => {
+ :search_url => "http://localhost:3000/nodes/#{node_name}"
+ },
+ :iclassify => {
+ :search_url => "http://localhost:3000/nodes/#{node_name}"
+ }
+])
+
+
diff --git a/examples/node.rb b/examples/node.rb
new file mode 100644
index 0000000000..d236e6a068
--- /dev/null
+++ b/examples/node.rb
@@ -0,0 +1,16 @@
+##
+# Nodes should have a unique name
+##
+name "ops1prod"
+
+##
+# Nodes can set arbitrary arguments
+##
+sunshine "in"
+something "else"
+that "is a cool ass trick"
+
+##
+# Nodes should have recipes
+##
+recipes "operations-master", "operations-monitoring"
diff --git a/examples/node.yml b/examples/node.yml
new file mode 100644
index 0000000000..d61a14875d
--- /dev/null
+++ b/examples/node.yml
@@ -0,0 +1,134 @@
+---
+parameters:
+ innodb_buffer_pool_size: 150M
+ kernel: Linux
+ serialnumber: 0123456789
+ processorcount: "2"
+ operatingsystemrelease: 2.6.18-53.1.4.el5
+ tinydns_ipaddress: 208.113.71.77
+ rubysitedir: /usr/lib/ruby/site_ruby/1.8
+ lsbrelease: ":core-3.1-amd64:core-3.1-ia32:core-3.1-noarch:graphics-3.1-amd64:graphics-3.1-ia32:graphics-3.1-noarch"
+ hardwaremodel: x86_64
+ uniqueid: 007f0100
+ ipaddress: 208.113.71.76
+ swapfree: 2.00 GB
+ puppet_class:
+ - operations-master
+ - base
+ - iptables
+ - runit
+ - puppet-client
+ - sudo
+ - zsh
+ - subversion-client
+ - ruby
+ - man
+ - openssh
+ - build-essential
+ - rsync-client
+ - munin-node
+ - resolver
+ - iclassify-agent
+ - openldap-auth
+ - openldap-client
+ - nscd
+ - perl
+ - nagios-nrpe
+ - ntp-client
+ - ntp
+ - postfix
+ - emacs
+ - centos
+ - puppet-server
+ - mysql-server
+ - djbdns-server
+ - djbdns-base
+ - djbdns-public-cache
+ - openldap-server
+ - iclassify-server
+ - apache2
+ - apache2-module-status
+ - apache2-module-alias
+ - apache2-module-auth_basic
+ - apache2-module-authn_file
+ - apache2-module-authz_default
+ - apache2-module-authz_groupfile
+ - apache2-module-authz_host
+ - apache2-module-authz_user
+ - apache2-module-autoindex
+ - apache2-module-dir
+ - apache2-module-env
+ - apache2-module-mime
+ - apache2-module-negotiation
+ - apache2-module-setenvif
+ - apache2-module-log_config
+ - perlbal
+ - mongrel-runit
+ - rails-twoohtwo
+ - mysql-client
+ - java
+ - wildcard-cert
+ - apache2-module-ldap
+ - gems-server
+ - operations-monitoring
+ - munin-moonin
+ - apache2-module-fcgid
+ - apache2-module-ssl
+ - apache2-module-authnz_ldap
+ - nagios-server
+ - subversion-server
+ - apache2-module-dav
+ - apache2-module-dav_svn
+ - trac
+ - apache2-module-proxy
+ - apache2-module-proxy_http
+ - apache2-module-rewrite
+ - apache2-module-deflate
+ - apache2-module-headers
+ puppet_env:
+ - prod
+ - prod
+ memorysize: "1.96"
+ fqdn: ops1prod.sfo.zoosk.com
+ kernelrelease: 2.6.18-53.1.4.el5
+ ps: ps -ef
+ type: Node
+ mongrel_servers: "16"
+ hardwareisa: x86_64
+ apache_listen_ports:
+ - "80"
+ - "443"
+ domain: sfo.zoosk.com
+ lsbdistdescription: CentOS release 5 (Final)
+ id: Node:1
+ tinydns_internal_ipaddress: 127.0.01
+ axfr_ipaddress: 208.113.71.77
+ macaddress_eth0: 00:30:48:96:3D:72
+ lsbdistrelease: "5"
+ memoryfree: 638.67 MB
+ manufacturer: Supermicro
+ sshrsakey: AAAAB3NzaC1yc2EAAAABIwAAAQEAzZBzuD14E6KJT3YKULXM9jEOIiC/efkn8+rK4yePLwDSNypfClZt8+ThUGlGQVZF0Z1kMa1hLfZD+Puhe9Vp4hMkTBmlvATiWEZduUvkZ7Fh56mnstjmwYoxkvP8FG/ItQtfNJY3UgmtdeeoVYw566P5E9HKKWFUQp5IpZBUpsttVuY/b7ro/ray1lY/bWJ7ykYVwcGWVjsM+W6N0je+mouLcDN3QJAMzMwVuf3MzagKcawvM6qPDJ2Lv6lxRiVn1HZwv+YoPS7+S0/wDl4tZo9+mDb1jdI++af27Q8hKUTjjyjlWUcHG9eDWYjMZPYbY5Qv6FWG6/fEwZ0zu+sVhQ==
+ lsbdistcodename: Final
+ slapd_type: master
+ macaddress_eth1: 00:30:48:96:3D:73
+ productname: PDSMi
+ mysql_server_id: "1"
+ rubyversion: 1.8.5
+ hostname: ops1prod
+ puppetversion: 0.24.1
+ public_dns_cache_ipaddress: 192.168.1.110
+ processor0: Intel(R) Xeon(R) CPU 3050 @ 2.13GHz
+ architecture: x86_64
+ facterversion: 1.3.8
+ swapsize: 2.00 GB
+ operatingsystem: CentOS
+ macaddress: 00:30:48:96:3D:72
+ processor1: Intel(R) Xeon(R) CPU 3050 @ 2.13GHz
+ ec2: "false"
+ ipaddress_eth0: 208.113.71.76
+ mongrel_port_number: "5000"
+ lsbdistid: CentOS
+ sshdsakey: AAAAB3NzaC1kc3MAAACBANC70lacMCW6+5QtqOAD7Z/GQ7ChywuX332sbZ9tk6PE6HpCy9PoEjs4MZSrYnqeXxXq2XTRwO4e9agf+6z2gzzOZP3QZj2qoVl7WgTVvvgn1c/KbKcO7/wZXKOv2qg6/vzgrgd0wYUp+1Of04uVdbxRshR2QMY7x67bKw3vvDCbAAAAFQCsW+LA/AA2JxmOCRlZC/DAZn/l4wAAAIEAi9Z1DnYg88KV4BQWGCSAdDkJ0O5maUC12GZPQUDKY+AQU+ilS9QBo3Su0Zo9rrlygNrqyVryIbH7fktz81zj410kskktT6JvUsIR5Ep6C/GTZD8+372AsVQQ+LE+Ot3PXPBntVq2uRRum9wRKul2EZ8+uOhh3gZV2l4WdEg/07sAAACANm3CUM/+grYwDg0Uv6dNgcwsQsXHxfSUbPHGVdiEuf7WjQhNgVQffEwGHOS1xvfv2nvbGFnTnTDuIOo45vhBUmbv9s7NuRhn++M8ZwL+pLAq7BbFCeP4y0WvKOTJdupiLrgVH3KGRFP0djpOagueNQr9zcscTJR3eagImkb8aPs=
+ ipaddress_eth1: 192.168.1.110
+classes:
+- operations-master
diff --git a/examples/sample_definition.rb b/examples/sample_definition.rb
new file mode 100644
index 0000000000..fa4ddfe120
--- /dev/null
+++ b/examples/sample_definition.rb
@@ -0,0 +1,68 @@
+web_server "monchichi" do
+ one "something"
+ two "something else"
+end
+
+define :runit_service, :directory => "/etc/sv", :downif => "/bin/false", :templatedir => nil do
+ require_recipe "runit"
+
+ file "#{param[:directory]}-#{param[:name]}" do
+ path "#{param[:directory]}/#{param[:name]}"
+ insure "directory"
+ owner "root"
+ group "root"
+ mode 0755
+ end
+
+ file "#{param[:directory]}/#{param[:name]}/log" do
+ insure "directory"
+ owner "root"
+ group "root"
+ mode 0755
+ end
+
+ file "#{param[:directory]}/#{param[:name]}/log/main" do
+ insure "directory"
+ owner "root"
+ group "root"
+ mode 0755
+ end
+
+ symlink "/etc/init.d/#{param[:name]}" do
+ sv_dir = case node[:lsbdistid]
+ when 'CentOS': "/usr/local/bin/sv"
+ else: "/usr/bin/sv"
+ end
+ source_file = sv_dir
+ end
+
+ symlink "/var/service/#{param[:name]}" do
+ source_file "#{param[:directory]}/#{param[:name]}"
+ end
+
+ service "#{param[:name]}" do
+ has_restart true
+ has_status true
+ end
+
+ template_file "#{param[:directory]}/#{param[:name]}/log/run" do
+ content "#{param[:templatedir]}/log-run.erb"
+ owner "root"
+ group "root"
+ mode 755
+ notifies resource("service[#{param[:name]}]")
+ end
+
+ template_file "#{param[:directory]}/#{param[:name]}/run" do
+ content "#{param[:templatedir]}/run.erb"
+ owner root
+ group root
+ mode 755
+ notifies resource("service[#{param[:name]}]")
+ end
+
+ exec "#{param[:name]}-down" do
+ command "/etc/init.d/#{param[:name]} down"
+ only_if "#{downif}"
+ end
+end
diff --git a/examples/sample_recipe.rb b/examples/sample_recipe.rb
index 730d7d58ff..b48989c2bb 100644
--- a/examples/sample_recipe.rb
+++ b/examples/sample_recipe.rb
@@ -1,8 +1,8 @@
-include_recipe "openldap"
-include_recipe "openldap::client"
-include_recipe "openldap::server"
-include_recipe "resolver"
-include_recipe "base"
+require_recipe "openldap"
+require_recipe "openldap::client"
+require_recipe "openldap::server"
+require_recipe "resolver"
+require_recipe "base"
service "apache2" do
insure "running"
@@ -14,7 +14,7 @@ file "/etc/nsswitch.conf" do
owner "root"
group "root"
mode 0644
- notify :restart, resources(:service => "openldap"), :immediately
+ notify :restart, resources(:service => "openldap"), :now
end
file "/etc/ldap.conf" do
@@ -22,7 +22,6 @@ file "/etc/ldap.conf" do
owner "root"
group "root"
mode 0644
- requires resources(:file => "/etc/nsswitch.conf")
end
file "/srv/monkey" do