2 ## Copyright (C) 2019 Wind River Systems, Inc.
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
8 # http://www.apache.org/licenses/LICENSE-2.0
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
16 DESCRIPTION = "stx-puppet modules"
18 STABLE = "starlingx/master"
20 SRCNAME = "stx-puppet"
22 SRCREV = "678fe78b72b70e213eae32b1932afe97cc8c16b4"
26 LICENSE = "Apache-2.0"
28 LIC_FILES_CHKSUM = " \
29 file://modules/puppet-dcdbsync/src/LICENSE;md5=0e5ccf641e613489e66aa98271dbe798 \
30 file://modules/puppet-dcmanager/src/LICENSE;md5=0e5ccf641e613489e66aa98271dbe798 \
31 file://modules/puppet-dcorch/src/LICENSE;md5=0e5ccf641e613489e66aa98271dbe798 \
32 file://modules/puppet-fm/src/LICENSE;md5=0e5ccf641e613489e66aa98271dbe798 \
33 file://modules/puppet-mtce/src/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
34 file://modules/puppet-nfv/src/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
35 file://modules/puppet-patching/src/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
36 file://modules/puppet-smapi/src/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
37 file://modules/puppet-sshd/src/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
38 file://modules/puppet-sysinv/src/LICENSE;md5=0e5ccf641e613489e66aa98271dbe798 \
39 file://puppet-manifests/src/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
42 # file://${BPN}/use-cast-operator.patch
44 git://opendev.org/starlingx/${SRCNAME}.git;protocol=${PROTOCOL};rev=${SRCREV};branch=${BRANCH} \
45 file://${BPN}/0001-puppet-manifest-apply-rebase-adjust-path.patch \
46 file://${BPN}/0002-puppet-manifests-port-Adjust-path-default-bindir.patch \
47 file://${BPN}/0003-puppet-dcmanager-updates-for-poky-stx.patch \
48 file://${BPN}/0004-puppet-dcorch-updates-for-poky-stx.patch \
49 file://${BPN}/0005-puppet-sysinv-updates-for-poky-stx.patch \
50 file://${BPN}/0006-puppet-manifest-apply-do-not-treat-warnings-as-block.patch \
51 file://${BPN}/0007-puppet-manifests-etcd-override-typo-and-journalctl.patch \
52 file://${BPN}/0008-puppet-manifests-keystone-include-platform-client.patch \
53 file://${BPN}/0009-puppet-manifests-lvm-remove-lvmetad.patch \
54 file://${BPN}/0010-puppet-manifest-apply-workaround-to-ignore-known-err.patch \
55 file://${BPN}/get-boot-device-from-cmdline.patch \
56 file://${BPN}/poky-specific-apply-network-config-script.patch \
57 file://${BPN}/apply_network_config_poky.sh \
66 multipath-tools-libs \
75 RDEPENDS_puppet-manifests += " \
87 # Openstack puppet modules
88 RDEPENDS_puppet-manifests += " \
98 # Puppetlabs puppet modules
99 RDEPENDS_puppet-manifests += " \
101 puppetlabs-create-resources \
103 puppetlabs-firewall \
107 puppetlabs-postgresql \
108 puppetlabs-rabbitmq \
114 # 3rd party puppet modules
115 RDEPENDS_puppet-manifests += " \
132 RDEPENDS_puppet-mtce += " puppet"
133 RDEPENDS_puppet-dcdbsync += " puppet"
134 RDEPENDS_puppet-dcmanager += " puppet"
135 RDEPENDS_puppet-dcorch += " puppet"
136 RDEPENDS_puppet-fm += " puppet"
137 RDEPENDS_puppet-nfv += " puppet"
138 RDEPENDS_puppet-patching += " puppet"
139 RDEPENDS_puppet-smapi += " puppet"
140 RDEPENDS_puppet-sshd += " puppet"
141 RDEPENDS_puppet-sysinv += " puppet"
143 PACKAGES += " puppet-dcdbsync"
144 PACKAGES += " puppet-dcmanager"
145 PACKAGES += " puppet-dcorch"
146 PACKAGES += " puppet-fm"
147 PACKAGES += " puppet-mtce"
148 PACKAGES += " puppet-nfv"
149 PACKAGES += " puppet-patching"
150 PACKAGES += " puppet-smapi"
151 PACKAGES += " puppet-sshd"
152 PACKAGES += " puppet-sysinv"
153 PACKAGES += " puppet-manifests"
157 install -d -m 0755 ${D}/${datadir}/puppet/modules/dcdbsync
158 cp -R ${S}/modules/puppet-dcdbsync/src/dcdbsync ${D}/${datadir}/puppet/modules
160 install -d -m 0755 ${D}/${datadir}/puppet/modules/dcmanager
161 cp -R ${S}/modules/puppet-dcmanager/src/dcmanager ${D}/${datadir}/puppet/modules
163 install -d -m 0755 ${D}/${datadir}/puppet/modules/dcorch
164 cp -R ${S}/modules/puppet-dcorch/src/dcorch/ ${D}/${datadir}/puppet/modules/
166 install -d -m 0755 ${D}/${datadir}/puppet/modules/fm
167 cp -R ${S}/modules/puppet-fm/src/fm ${D}/${datadir}/puppet/modules
169 install -d -m 0755 ${D}/${datadir}/puppet/modules/mtce
170 cp -R ${S}/modules/puppet-mtce/src/mtce ${D}/${datadir}/puppet/modules
172 install -d -m 0755 ${D}/${datadir}/puppet/modules/nfv
173 cp -R ${S}/modules/puppet-nfv/src/nfv ${D}/${datadir}/puppet/modules
175 install -d -m 0755 ${D}/${datadir}/puppet/modules/patching
176 cp -R ${S}/modules/puppet-patching/src/patching ${D}/${datadir}/puppet/modules
178 install -d -m 0755 ${D}/${datadir}/puppet/modules/smapi
179 cp -R ${S}/modules/puppet-smapi/src/smapi ${D}/${datadir}/puppet/modules
181 install -d -m 0755 ${D}/${datadir}/puppet/modules/sshd
182 cp -R ${S}/modules/puppet-sshd/src/sshd ${D}/${datadir}/puppet/modules
184 install -d -m 0755 ${D}/${datadir}/puppet/modules/sysinv
185 cp -R ${S}/modules/puppet-sysinv/src/sysinv ${D}/${datadir}/puppet/modules
187 cd ${S}/puppet-manifests/src
188 oe_runmake BINDIR=${D}/${bindir} \
189 CONFIGDIR=${D}/${sysconfdir}/puppet/ \
190 MODULEDIR=${D}/${datadir}/puppet/modules -f Makefile install
192 # fix the path for systemctl
193 sed -i -e 's|${bindir}/systemctl|${base_bindir}/systemctl|' ${D}/${datadir}/puppet/modules/platform/manifests/*.pp
194 sed -i -e 's|${bindir}|${bindir}:${base_bindir}|' ${D}/${datadir}/puppet/modules/sysinv/manifests/api.pp
196 # fix the path for mount and awk
197 sed -i -e 's|${bindir}|${bindir}:${base_bindir}|' ${D}/${datadir}/puppet/modules/platform/manifests/filesystem.pp
199 # fix the path for slapd.conf
200 sed -i -e '/\/usr\/lib64\/openldap/d' ${D}/${datadir}/puppet/modules/platform/manifests/ldap.pp
202 # fix the libdir for collectd
203 sed -i -e 's|/usr/lib64|${libdir}|' ${D}/${datadir}/puppet/modules/platform/templates/collectd.conf.erb
205 install -m 0755 ${WORKDIR}/${PN}/apply_network_config_poky.sh ${D}/${bindir}/apply_network_config_poky.sh
208 FILES_puppet-sysinv += " \
209 ${datadir}/puppet/modules/sysinv \
212 FILES_puppet-sshd += " \
213 ${datadir}/puppet/modules/sshd \
216 FILES_puppet-smapi += " \
217 ${datadir}/puppet/modules/smapi \
219 FILES_puppet-patching += " \
220 ${datadir}/puppet/modules/patching \
223 FILES_puppet-nfv += " \
224 ${datadir}/puppet/modules/nfv \
227 FILES_puppet-mtce = "\
228 ${datadir}/puppet/modules/mtce \
231 FILES_puppet-manifests = "\
232 ${sysconfdir}/puppet/hiera.yaml \
233 ${sysconfdir}/puppet/hieradata \
234 ${sysconfdir}/puppet/hieradata/worker.yaml \
235 ${sysconfdir}/puppet/hieradata/storage.yaml \
236 ${sysconfdir}/puppet/hieradata/global.yaml \
237 ${sysconfdir}/puppet/hieradata/controller.yaml \
238 ${sysconfdir}/puppet/manifests/worker.pp \
239 ${sysconfdir}/puppet/manifests/ansible_bootstrap.pp \
240 ${sysconfdir}/puppet/manifests/bootstrap.pp \
241 ${sysconfdir}/puppet/manifests/runtime.pp \
242 ${sysconfdir}/puppet/manifests/storage.pp \
243 ${sysconfdir}/puppet/manifests/upgrade.pp \
244 ${sysconfdir}/puppet/manifests/controller.pp \
245 ${datadir}/puppet/modules/openstack/manifests \
246 ${datadir}/puppet/modules/openstack/templates \
247 ${datadir}/puppet/modules/platform/manifests \
248 ${datadir}/puppet/modules/platform/templates \
249 ${datadir}/puppet/modules/platform/files \
250 ${datadir}/puppet/modules/platform/lib/facter \
251 ${datadir}/puppet/modules/platform/lib/puppet \
252 ${bindir}/puppet-manifest-apply.sh \
253 ${bindir}/apply_network_config.sh \
254 ${bindir}/apply_network_config_poky.sh \
256 FILES_puppet-fm += " \
257 ${datadir}/puppet/modules/fm \
260 FILES_puppet-dcorch += " \
261 ${datadir}/puppet/modules/dcorch \
264 FILES_puppet-dcmanager += " \
265 ${datadir}/puppet/modules/dcmanager \
268 FILES_puppet-dcdbsync += " \
269 ${datadir}/puppet/modules/dcdbsync \