diff --git a/sysutils/Makefile b/sysutils/Makefile index b6c9b5cd604a..656916c8fdd0 100644 --- a/sysutils/Makefile +++ b/sysutils/Makefile @@ -1074,10 +1074,13 @@ SUBDIR += rubygem-capistrano-ext SUBDIR += rubygem-capistrano-harrow SUBDIR += rubygem-chef + SUBDIR += rubygem-chef12 SUBDIR += rubygem-chef-api SUBDIR += rubygem-chef-config + SUBDIR += rubygem-chef-config12 SUBDIR += rubygem-chef-dk SUBDIR += rubygem-chef-zero + SUBDIR += rubygem-chef-zero5 SUBDIR += rubygem-facter SUBDIR += rubygem-fluent-mixin-plaintextformatter SUBDIR += rubygem-fluent-plugin-config-expander diff --git a/sysutils/rubygem-chef-config12/Makefile b/sysutils/rubygem-chef-config12/Makefile new file mode 100644 index 000000000000..15dd1e9274ea --- /dev/null +++ b/sysutils/rubygem-chef-config12/Makefile @@ -0,0 +1,29 @@ +# Created by: Po-Chuan Hsieh +# $FreeBSD$ + +PORTNAME= chef-config +PORTVERSION= 12.22.5 +CATEGORIES= sysutils rubygems +MASTER_SITES= RG +PKGNAMESUFFIX= 12 + +MAINTAINER= zi@FreeBSD.org +COMMENT= Default configuration and config loading library for Chef + +LICENSE= APACHE20 +LICENSE_FILE= ${WRKSRC}/LICENSE + +RUN_DEPENDS= rubygem-addressable>=0:www/rubygem-addressable \ + rubygem-fuzzyurl>=0:www/rubygem-fuzzyurl \ + rubygem-mixlib-config>=2.0:devel/rubygem-mixlib-config \ + rubygem-mixlib-shellout>=2.0:devel/rubygem-mixlib-shellout \ + rubygem-tomlrb>=1.2:textproc/rubygem-tomlrb + +CONFLICTS_INSTALL= rubygem-chef-config \ + rubygem-chef-config[0-9]* + +NO_ARCH= yes +USE_RUBY= yes +USES= gem + +.include diff --git a/sysutils/rubygem-chef-config12/distinfo b/sysutils/rubygem-chef-config12/distinfo new file mode 100644 index 000000000000..9eb863d74abe --- /dev/null +++ b/sysutils/rubygem-chef-config12/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1533822430 +SHA256 (rubygem/chef-config-12.22.5.gem) = 8b8f9ba5790ab0ec868484c4f94d233de8c1245b99c249f009f96d1972344784 +SIZE (rubygem/chef-config-12.22.5.gem) = 46080 diff --git a/sysutils/rubygem-chef-config12/pkg-descr b/sysutils/rubygem-chef-config12/pkg-descr new file mode 100644 index 000000000000..c2cb6307f8de --- /dev/null +++ b/sysutils/rubygem-chef-config12/pkg-descr @@ -0,0 +1,3 @@ +ChefConfig is the default configuration and config loading library for Chef. + +WWW: https://github.com/chef/chef/tree/master/chef-config diff --git a/sysutils/rubygem-chef-zero5/Makefile b/sysutils/rubygem-chef-zero5/Makefile new file mode 100644 index 000000000000..55bb4feee4b7 --- /dev/null +++ b/sysutils/rubygem-chef-zero5/Makefile @@ -0,0 +1,31 @@ +# Created by: Renaud Chaput +# $FreeBSD$ + +PORTNAME= chef-zero +PORTVERSION= 5.3.2 +CATEGORIES= sysutils +MASTER_SITES= RG +PKGNAMESUFFIX= 5 + +MAINTAINER= ruby@FreeBSD.org +COMMENT= Self-contained, easy-setup, fast-start in-memory Chef server + +LICENSE= APACHE20 +LICENSE_FILE= ${WRKSRC}/LICENSE + +RUN_DEPENDS= rubygem-ffi-yajl>=2.2:devel/rubygem-ffi-yajl \ + rubygem-hashie>=2.0:devel/rubygem-hashie \ + rubygem-mixlib-log>=1.3:devel/rubygem-mixlib-log \ + rubygem-rack>=2.0:www/rubygem-rack \ + rubygem-uuidtools>=2.1:devel/rubygem-uuidtools + +NO_ARCH= yes +USE_RUBY= yes +USES= gem + +CONFLICTS_INSTALL= rubygem-chef-zero \ + rubygem-chef-zero[0-9]* + +PLIST_FILES= bin/chef-zero + +.include diff --git a/sysutils/rubygem-chef-zero5/distinfo b/sysutils/rubygem-chef-zero5/distinfo new file mode 100644 index 000000000000..b15f606e3922 --- /dev/null +++ b/sysutils/rubygem-chef-zero5/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1533822545 +SHA256 (rubygem/chef-zero-5.3.2.gem) = 2fca5bf5dccf186c8be5847d1bad9e6283cf9fa4c8b28b4445da728139b2b7e2 +SIZE (rubygem/chef-zero-5.3.2.gem) = 71168 diff --git a/sysutils/rubygem-chef-zero5/pkg-descr b/sysutils/rubygem-chef-zero5/pkg-descr new file mode 100644 index 000000000000..04cca553891f --- /dev/null +++ b/sysutils/rubygem-chef-zero5/pkg-descr @@ -0,0 +1,4 @@ +Self-contained, easy-setup, fast-start in-memory Chef server +for testing and solo setup purposes + +WWW: https://www.chef.io/ diff --git a/sysutils/rubygem-chef12/Makefile b/sysutils/rubygem-chef12/Makefile new file mode 100644 index 000000000000..d8e075b98e10 --- /dev/null +++ b/sysutils/rubygem-chef12/Makefile @@ -0,0 +1,70 @@ +# Created by: Renaud Chaput +# $FreeBSD$ + +PORTNAME= chef +PORTVERSION= 12.22.5 +CATEGORIES= sysutils +MASTER_SITES= RG +PKGNAMESUFFIX= 12 + +MAINTAINER= ruby@FreeBSD.org +COMMENT= Systems integration framework. Client part + +LICENSE= APACHE20 +LICENSE_FILE= ${WRKSRC}/LICENSE + +RUN_DEPENDS= rubygem-addressable>=0:www/rubygem-addressable \ + rubygem-bundler>=1.10:sysutils/rubygem-bundler \ + rubygem-chef-config12=${PORTVERSION}:sysutils/rubygem-chef-config12 \ + rubygem-chef-zero5<13.0:sysutils/rubygem-chef-zero5 \ + rubygem-diff-lcs>=1.2.4:textproc/rubygem-diff-lcs \ + rubygem-erubis>=2.7:www/rubygem-erubis \ + rubygem-ffi-yajl>=2.2:devel/rubygem-ffi-yajl \ + rubygem-highline>=1.6.9:devel/rubygem-highline \ + rubygem-iniparse>=1.4:devel/rubygem-iniparse \ + rubygem-mixlib-archive>=0.4:devel/rubygem-mixlib-archive \ + rubygem-mixlib-authentication>=1.4:devel/rubygem-mixlib-authentication \ + rubygem-mixlib-cli>=1.7:devel/rubygem-mixlib-cli \ + rubygem-mixlib-log>=1.3:devel/rubygem-mixlib-log \ + rubygem-mixlib-shellout>=2.0:devel/rubygem-mixlib-shellout \ + rubygem-net-sftp>=2.1.2:security/rubygem-net-sftp \ + rubygem-net-ssh4>=2.9:security/rubygem-net-ssh4 \ + rubygem-net-ssh-multi>=1.2.1:security/rubygem-net-ssh-multi \ + rubygem-ohai8<13.0:sysutils/rubygem-ohai8 \ + rubygem-plist>=3.2:devel/rubygem-plist \ + rubygem-proxifier>=1.0:net/rubygem-proxifier \ + rubygem-rspec-core>=3.5:devel/rubygem-rspec-core \ + rubygem-rspec-expectations>=3.5:devel/rubygem-rspec-expectations \ + rubygem-rspec-mocks>=3.5:devel/rubygem-rspec-mocks \ + rubygem-rspec_junit_formatter>0:devel/rubygem-rspec_junit_formatter \ + rubygem-serverspec>=2.7:sysutils/rubygem-serverspec \ + rubygem-specinfra>=2.10:sysutils/rubygem-specinfra \ + rubygem-syslog-logger>=1.6:sysutils/rubygem-syslog-logger \ + rubygem-uuidtools>=2.1.5:devel/rubygem-uuidtools \ + rubygem-builder>0:devel/rubygem-builder + +NO_ARCH= yes +USE_RUBY= yes +USES= gem python:env shebangfix + +CONFLICTS_INSTALL= rubygem-chef \ + rubygem-chef[0-9]* + +SUB_LIST= RUBY=${RUBY} +USE_RC_SUBR= chef_client + +SHEBANG_FILES= spec/functional/assets/chefinittest \ + spec/functional/assets/testchefsubsys \ + lib/chef/provider/package/dnf/dnf_helper.py \ + tasks/bin/run_external_test + +post-patch: + @${REINPLACE_CMD} -e '1d' ${WRKSRC}/spec/data/apt/chef-integration-test*/debian/rules + @${REINPLACE_CMD} -e 's|0.2.0|0.2|g' ${WRKSRC}/chef.gemspec + +post-install: + ${INSTALL_MAN} ${WRKSRC}/distro/common/man/man1/*.1 ${STAGEDIR}${MANPREFIX}/man/man1/ + ${INSTALL_MAN} ${WRKSRC}/distro/common/man/man8/*.8 ${STAGEDIR}${MANPREFIX}/man/man8/ + ${MKDIR} ${STAGEDIR}/var/chef + +.include diff --git a/sysutils/rubygem-chef12/distinfo b/sysutils/rubygem-chef12/distinfo new file mode 100644 index 000000000000..87633fd5e446 --- /dev/null +++ b/sysutils/rubygem-chef12/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1533821912 +SHA256 (rubygem/chef-12.22.5.gem) = a44048c23b5627689a7cad660ad2f389eccd08c704c48d5d141f76d2e25c3d1b +SIZE (rubygem/chef-12.22.5.gem) = 1986048 diff --git a/sysutils/rubygem-chef12/files/chef_client.in b/sysutils/rubygem-chef12/files/chef_client.in new file mode 100644 index 000000000000..160df79ad076 --- /dev/null +++ b/sysutils/rubygem-chef12/files/chef_client.in @@ -0,0 +1,57 @@ +#!/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" + +. /etc/rc.subr + +name="chef_client" +rcvar=chef_client_enable + +# 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 [ -f "$chef_client_configfile" ] + then + pidfile=`awk '/^[ \t]*pid_file[ \t]+/ { print $2 }' ${chef_client_configfile}` + : ${chef_client_pidfile=$pidfile} + else + : ${chef_client_pidfile="/var/run/chef-client.pid"} +fi + +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%%" +pidfile=${chef_client_pidfile} +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} -P ${chef_client_pidfile}" + +load_rc_config $name +run_rc_command "$1" diff --git a/sysutils/rubygem-chef12/pkg-descr b/sysutils/rubygem-chef12/pkg-descr new file mode 100644 index 000000000000..3bc4d9a1d835 --- /dev/null +++ b/sysutils/rubygem-chef12/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: https://www.chef.io/ diff --git a/sysutils/rubygem-chef12/pkg-plist b/sysutils/rubygem-chef12/pkg-plist new file mode 100644 index 000000000000..d7624d0d425f --- /dev/null +++ b/sysutils/rubygem-chef12/pkg-plist @@ -0,0 +1,41 @@ +bin/chef-apply +bin/chef-client +bin/chef-shell +bin/chef-solo +bin/knife +man/man1/chef-shell.1.gz +man/man1/knife-bootstrap.1.gz +man/man1/knife-client.1.gz +man/man1/knife-configure.1.gz +man/man1/knife-cookbook-site.1.gz +man/man1/knife-cookbook.1.gz +man/man1/knife-data-bag.1.gz +man/man1/knife-delete.1.gz +man/man1/knife-deps.1.gz +man/man1/knife-diff.1.gz +man/man1/knife-download.1.gz +man/man1/knife-edit.1.gz +man/man1/knife-environment.1.gz +man/man1/knife-exec.1.gz +man/man1/knife-index-rebuild.1.gz +man/man1/knife-list.1.gz +man/man1/knife-node.1.gz +man/man1/knife-raw.1.gz +man/man1/knife-recipe-list.1.gz +man/man1/knife-role.1.gz +man/man1/knife-search.1.gz +man/man1/knife-serve.1.gz +man/man1/knife-show.1.gz +man/man1/knife-ssh.1.gz +man/man1/knife-ssl-check.1.gz +man/man1/knife-ssl-fetch.1.gz +man/man1/knife-status.1.gz +man/man1/knife-tag.1.gz +man/man1/knife-upload.1.gz +man/man1/knife-user.1.gz +man/man1/knife-xargs.1.gz +man/man1/knife.1.gz +man/man8/chef-apply.8.gz +man/man8/chef-client.8.gz +man/man8/chef-solo.8.gz +@dir /var/chef