Fixup fromcvs/togit conversion
[pkgsrcv2.git] / sysutils / puppet / Makefile
1 # $NetBSD: Makefile,v 1.11 2010/09/10 07:52:13 taca Exp $
2
3 DISTNAME=               puppet-0.25.5
4 PKGREVISION=            1
5 CATEGORIES=             sysutils
6 #MASTER_SITES=          http://puppetlabs.com/downloads/puppet/
7
8 MAINTAINER=             tonnerre@NetBSD.org
9 HOMEPAGE=               http://www.puppetlabs.com/
10 COMMENT=                Configuration management framework written in Ruby
11 LICENSE=                gnu-gpl-v2
12
13 PKG_DESTDIR_SUPPORT=    user-destdir
14
15 DEPENDS+=               ${RUBY_PKGPREFIX}-facter>=1.3.8:../../sysutils/ruby-facter
16
17 CONFLICTS+=             ruby[1-9][0-9]-puppet-[0-9]* puppet-[0-9]*
18
19 PKG_SYSCONFSUBDIR=      puppet
20 RCD_SCRIPTS=            puppetd puppetmasterd
21
22 SUBST_CLASSES+=         prefix
23 SUBST_STAGE.prefix=     post-patch
24 SUBST_FILES.prefix=     lib/puppet/reference/configuration.rb
25 SUBST_FILES.prefix+=    lib/puppet/defaults.rb spec/unit/util/selinux.rb
26 SUBST_FILES.prefix+=    bin/puppetrun bin/puppet bin/puppetdoc
27 SUBST_FILES.prefix+=    ext/puppetstoredconfigclean.rb ext/puppetlast
28 SUBST_FILES.prefix+=    man/man8/puppet.8
29 SUBST_FILES.prefix+=    conf/solaris/smf/puppetd.xml
30 SUBST_FILES.prefix+=    conf/solaris/smf/puppetmasterd.xml
31 SUBST_FILES.prefix+=    man/man8/puppetrun.8 man/man8/puppet.conf.8
32 SUBST_SED.prefix=       -e "s|/etc/puppet|${PKG_SYSCONFDIR}|g"
33 SUBST_SED.prefix+=      -e "s|/opt/csw/lib|${PREFIX}/lib|g"
34
35 EGDIR=                  share/examples/${PKGBASE}
36 CONF_FILES=             ${EGDIR}/puppet.conf ${PKG_SYSCONFDIR}/puppet.conf
37
38 ## Since these users are needed only for puppet server,
39 ## puppet-server package should be created.
40 #SUBST_CLASSES+=                user
41 #SUBST_STAGE.user=      post-patch
42 #SUBST_FILES.user=      lib/puppet/defaults.rb
43 #SUBST_SED.user=                -e "s|@PUPPET_GROUP@|${PUPPET_GROUP}|g"
44 #SUBST_SED.user+=       -e "s|@PUPPET_USER@|${PUPPET_USER}|g"
45 #
46 #PKG_GROUPS_VARS=               PUPPET_GROUP
47 #PKG_USERS_VARS=                        PUPPET_USER
48 #
49 #PKG_GROUPS=                    ${PUPPET_GROUP}
50 #PKG_USERS=                     ${PUPPET_USER}:${PUPPET_GROUP}
51 #PKG_GECOS.${PUPPET_USER}=       Puppet configuration management pseudo-user
52
53 PLIST_SUBST+=           EGDIR=${EGDIR}
54 PLIST_VARS+=            sunos
55
56 BUILD_DEFS+=            VARBASE
57 INSTALLATION_DIRS+=     ${EGDIR}
58
59 .include "../../mk/bsd.prefs.mk"
60
61 #PUPPET_GROUP?=         puppet
62 #PUPPET_USER?=          puppet
63
64 .if ${OPSYS} == "SunOS"
65 INSTALLATION_DIRS+=     lib/svc/method ${EGDIR}/svc
66 CONF_DIRS+=             ${VARBASE}/svc/manifest
67 CONF_FILES+=            ${EGDIR}/svc/puppetd.xml ${VARBASE}/svc/manifest/puppetd.xml
68 CONF_FILES+=            ${EGDIR}/svc/puppetmasterd.xml ${VARBASE}/svc/manifest/puppetmasterd.xml
69 PLIST.sunos=            yes
70 .endif
71
72 pre-build:
73         cd ${WRKSRC} && ${FIND} . -type f -exec ${CHMOD} g-w {} \;
74         cd ${WRKSRC} && \
75                 ${FIND} lib/puppet spec test -type f -exec ${CHMOD} -x {} \;
76         cd ${WRKSRC} && ${RUBY} -Ilib bin/puppetmasterd                 \
77                 --confdir=${PKG_SYSCONFDIR:Q} --rundir=${VARBASE:Q}/run \
78                 --genconfig |                                           \
79                 ${SED} -e 's/genconfig = true/# genconfig = false/'     \
80                 > examples/puppet.conf
81
82 post-install:
83         ${INSTALL_DATA} ${WRKSRC}/examples/puppet.conf                  \
84                 ${DESTDIR}${PREFIX}/${EGDIR}
85 .if ${OPSYS} == "SunOS"
86         ${INSTALL_DATA} ${WRKSRC}/conf/solaris/smf/puppetd.xml          \
87                 ${DESTDIR}${PREFIX}/${EGDIR}/svc
88         ${INSTALL_DATA} ${WRKSRC}/conf/solaris/smf/puppetmasterd.xml    \
89                 ${DESTDIR}${PREFIX}/${EGDIR}/svc
90         ${INSTALL_SCRIPT} ${WRKSRC}/conf/solaris/smf/svc-puppetd        \
91                 ${DESTDIR}${PREFIX}/lib/svc/method
92         ${INSTALL_SCRIPT} ${WRKSRC}/conf/solaris/smf/svc-puppetmasterd  \
93                 ${DESTDIR}${PREFIX}/lib/svc/method
94 .endif
95
96 .include "../../lang/ruby/gem.mk"
97 .include "../../mk/bsd.pkg.mk"