summaryrefslogtreecommitdiff
path: root/sysutils
diff options
context:
space:
mode:
authorWen Heping <wen@FreeBSD.org>2011-01-18 12:00:11 +0000
committerWen Heping <wen@FreeBSD.org>2011-01-18 12:00:11 +0000
commit2d2e64dd204bdd9c6b7ea98b3cb9c66404253428 (patch)
treed99eae9a3ae6c2df13bfa6c1b05d194f4fad6f5d /sysutils
parentUpdate to 1.9.4. (diff)
Chef is a systems integration framework, built to bring the benefits of
configuration management to your entire infrastructure. With Chef, you can: * Manage your servers by writing code, not by running commands. * Integrate tightly with your applications, databases, LDAP directories, and more. * Easily configure applications that require knowledge about your entire infrastructure ("What systems are running my application?" "What is the current master database server?") WWW: http://wiki.opscode.com/display/chef/Home PR: ports/153504 Submitted by: Renaud Chaput <renchap@cocoa-x.com> Feature safe: yes
Notes
Notes: svn path=/head/; revision=267943
Diffstat (limited to 'sysutils')
-rw-r--r--sysutils/Makefile1
-rw-r--r--sysutils/rubygem-chef/Makefile43
-rw-r--r--sysutils/rubygem-chef/distinfo2
-rw-r--r--sysutils/rubygem-chef/files/chef_client.in48
-rw-r--r--sysutils/rubygem-chef/pkg-descr11
5 files changed, 105 insertions, 0 deletions
diff --git a/sysutils/Makefile b/sysutils/Makefile
index 46b624cba3e3..8eb66d9626b2 100644
--- a/sysutils/Makefile
+++ b/sysutils/Makefile
@@ -778,6 +778,7 @@
SUBDIR += ruby-quota
SUBDIR += rubygem-bundler
SUBDIR += rubygem-capistrano
+ SUBDIR += rubygem-chef
SUBDIR += rubygem-god
SUBDIR += rubygem-ohai
SUBDIR += rubygem-sys-admin
diff --git a/sysutils/rubygem-chef/Makefile b/sysutils/rubygem-chef/Makefile
new file mode 100644
index 000000000000..3d6f50b36dbf
--- /dev/null
+++ b/sysutils/rubygem-chef/Makefile
@@ -0,0 +1,43 @@
+# Ports collection makefile for: rubygem-chef
+# Date created: 19 Mar 2010
+# Whom: Renaud Chaput <renchap@cocoa-x.com>
+#
+# $FreeBSD$
+#
+
+PORTNAME= chef
+PORTVERSION= 0.9.12
+CATEGORIES= sysutils
+MASTER_SITES= RG
+
+MAINTAINER= renchap@cocoa-x.com
+COMMENT= A systems integration framework. Client part
+
+BUILD_DEPENDS= rubygem-mixlib-log>=1.1.0:${PORTSDIR}/devel/rubygem-mixlib-log \
+ rubygem-mixlib-config>=1.1.2:${PORTSDIR}/devel/rubygem-mixlib-config \
+ rubygem-mixlib-cli>=1.1.0:${PORTSDIR}/devel/rubygem-mixlib-cli \
+ rubygem-mixlib-authentication>=1.1.2:${PORTSDIR}/devel/rubygem-mixlib-authentication \
+ rubygem-extlib>=0.9.14:${PORTSDIR}/devel/rubygem-extlib \
+ rubygem-json>=1.4.4:${PORTSDIR}/devel/rubygem-json \
+ rubygem-uuidtools>=0.0.0:${PORTSDIR}/devel/rubygem-uuidtools \
+ rubygem-highline>=0.0.0:${PORTSDIR}/devel/rubygem-highline \
+ rubygem-moneta>=0.6.0:${PORTSDIR}/devel/rubygem-moneta \
+ rubygem-erubis>=0.0.0:${PORTSDIR}/www/rubygem-erubis \
+ rubygem-rest-client>=1.0.4:${PORTSDIR}/www/rubygem-rest-client \
+ rubygem-bunny>=0.6.0:${PORTSDIR}/net/rubygem-bunny \
+ rubygem-ohai>=0.5.7:${PORTSDIR}/sysutils/rubygem-ohai
+RUN_DEPENDS= ${BUILD_DEPENDS}
+
+USE_RUBY= yes
+USE_RUBYGEMS= yes
+RUBYGEM_AUTOPLIST= yes
+
+PLIST_FILES= bin/chef-client \
+ bin/chef-solo \
+ bin/shef \
+ bin/knife
+
+SUB_LIST= RUBY=${RUBY}
+USE_RC_SUBR= chef_client
+
+.include <bsd.port.mk>
diff --git a/sysutils/rubygem-chef/distinfo b/sysutils/rubygem-chef/distinfo
new file mode 100644
index 000000000000..5052f349b7ba
--- /dev/null
+++ b/sysutils/rubygem-chef/distinfo
@@ -0,0 +1,2 @@
+SHA256 (rubygem/chef-0.9.12.gem) = a021e015e37c7edc8589b9a17184d675fb5b4784a65bc5532831b8faa3ad4b68
+SIZE (rubygem/chef-0.9.12.gem) = 254464
diff --git a/sysutils/rubygem-chef/files/chef_client.in b/sysutils/rubygem-chef/files/chef_client.in
new file mode 100644
index 000000000000..2991fa131b14
--- /dev/null
+++ b/sysutils/rubygem-chef/files/chef_client.in
@@ -0,0 +1,48 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+
+# PROVIDE: chef_client
+# REQUIRE: DAEMON
+# BEFORE: LOGIN
+# KEYWORD: shutdown
+
+# Add the following line to /etc/rc.conf to enable chef-client
+#
+# chef_client_enable="YES"
+
+. %%RC_SUBR%%
+
+name="chef_client"
+rcvar=`set_rcvar`
+
+# Read configuration and set defaults
+load_rc_config $name
+: ${chef_client_enable="NO"}
+: ${chef_client_configfile="%%PREFIX%%/etc/chef/client.rb"}
+: ${chef_client_interval="600"}
+: ${chef_client_splay="0"}
+: ${chef_client_logfile="/var/log/chef-client.log"}
+: ${chef_client_loglevel="info"}
+
+if [ -n "$chef_client_nodename" ]
+ then
+ nodename="-N ${chef_client_nodename}"
+ else
+ nodename=""
+fi
+
+if [ -n "$chef_client_server" ]
+ then
+ server="-N ${chef_client_server}"
+ else
+ server=""
+fi
+
+command="%%PREFIX%%/bin/chef-client"
+command_interpreter="%%RUBY%%"
+chef_client_flags="-c ${chef_client_configfile} ${nodename}${server}-d -i ${chef_client_interval} -s ${chef_client_splay} -L ${chef_client_logfile} -l ${chef_client_loglevel}"
+
+load_rc_config $name
+run_rc_command "$1"
diff --git a/sysutils/rubygem-chef/pkg-descr b/sysutils/rubygem-chef/pkg-descr
new file mode 100644
index 000000000000..bc9f44057001
--- /dev/null
+++ b/sysutils/rubygem-chef/pkg-descr
@@ -0,0 +1,11 @@
+Chef is a systems integration framework, built to bring the benefits of
+configuration management to your entire infrastructure. With Chef, you can:
+
+* Manage your servers by writing code, not by running commands.
+* Integrate tightly with your applications, databases, LDAP directories, and
+ more.
+* Easily configure applications that require knowledge about your entire
+ infrastructure ("What systems are running my application?" "What is the
+ current master database server?")
+
+WWW: http://wiki.opscode.com/display/chef/Home