meta-stx: re-name and re-org to align with upstream
[pti/rtp.git] / meta-starlingx / meta-stx-cloud / recipes-support / puppet / stx-puppet_git.bb
1
2 DESCRIPTION = "stx-puppet modules"
3
4 STABLE = "starlingx/master"
5 PROTOCOL = "https"
6 SRCNAME = "stx-puppet"
7 BRANCH = "r/stx.3.0"
8 SRCREV = "678fe78b72b70e213eae32b1932afe97cc8c16b4"
9 S = "${WORKDIR}/git"
10 PV = "1.0.0"
11
12 LICENSE = "Apache-2.0"
13
14 LIC_FILES_CHKSUM = " \
15         file://modules/puppet-dcdbsync/src/LICENSE;md5=0e5ccf641e613489e66aa98271dbe798 \
16         file://modules/puppet-dcmanager/src/LICENSE;md5=0e5ccf641e613489e66aa98271dbe798 \
17         file://modules/puppet-dcorch/src/LICENSE;md5=0e5ccf641e613489e66aa98271dbe798 \
18         file://modules/puppet-fm/src/LICENSE;md5=0e5ccf641e613489e66aa98271dbe798 \
19         file://modules/puppet-mtce/src/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
20         file://modules/puppet-nfv/src/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
21         file://modules/puppet-patching/src/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
22         file://modules/puppet-smapi/src/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
23         file://modules/puppet-sshd/src/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
24         file://modules/puppet-sysinv/src/LICENSE;md5=0e5ccf641e613489e66aa98271dbe798 \
25         file://puppet-manifests/src/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
26         "
27
28 #       file://${BPN}/use-cast-operator.patch 
29 SRC_URI = " \
30         git://opendev.org/starlingx/${SRCNAME}.git;protocol=${PROTOCOL};rev=${SRCREV};branch=${BRANCH} \
31         file://${BPN}/0001-puppet-manifest-apply-rebase-adjust-path.patch \
32         file://${BPN}/0002-puppet-manifests-port-Adjust-path-default-bindir.patch \
33         file://${BPN}/0003-puppet-dcmanager-updates-for-poky-stx.patch \
34         file://${BPN}/0004-puppet-dcorch-updates-for-poky-stx.patch \
35         file://${BPN}/0005-puppet-sysinv-updates-for-poky-stx.patch \
36         file://${BPN}/0006-puppet-manifest-apply-do-not-treat-warnings-as-block.patch \
37         file://${BPN}/0007-puppet-manifests-etcd-override-typo-and-journalctl.patch \
38         file://${BPN}/0008-puppet-manifests-keystone-include-platform-client.patch \
39         file://${BPN}/0009-puppet-manifests-lvm-remove-lvmetad.patch \
40         file://${BPN}/get-boot-device-from-cmdline.patch \
41         file://${BPN}/poky-specific-apply-network-config-script.patch \
42         file://${BPN}/apply_network_config_poky.sh \
43         "
44
45 RDEPENDS_${PN} += " \
46         bash puppet \
47         e2fsprogs-resize2fs \
48         hiera \
49         kpartx \
50         multipath-tools \
51         multipath-tools-libs \
52         ntpdate \
53         puppet-staging \
54         puppet-oslo \
55         puppetlabs-apache \
56         puppetlabs-mysql \
57         "
58
59 # WRS puppet modules
60 RDEPENDS_puppet-manifests += " \
61         puppet-dcorch \
62         puppet-dcmanager \
63         puppet-mtce \
64         puppet-nfv \
65         puppet-patching \
66         puppet-sysinv \
67         puppet-sshd \
68         puppet-smapi \
69         puppet-fm \
70         puppet-dcdbsync \
71         "
72 # Openstack puppet modules
73 RDEPENDS_puppet-manifests += " \
74         puppet-barbican \
75         puppet-ceph \
76         puppet-horizon \
77         puppet-keystone \
78         puppet-openstacklib \
79         puppet-vswitch \
80         puppet-memcached \
81         "
82
83 # Puppetlabs puppet modules 
84 RDEPENDS_puppet-manifests += " \
85         puppetlabs-concat \
86         puppetlabs-create-resources \
87         puppet-drbd \
88         puppetlabs-firewall \
89         puppetlabs-haproxy \
90         puppetlabs-inifile \
91         puppetlabs-lvm \
92         puppetlabs-postgresql \
93         puppetlabs-rabbitmq \
94         puppetlabs-stdlib \
95         puppet-sysctl \
96         puppet-etcd \
97         "
98
99 # 3rd party puppet modules
100 RDEPENDS_puppet-manifests += " \
101         puppet-boolean \
102         puppet-certmonger \
103         puppet-dnsmasq \
104         puppet-filemapper \
105         puppet-kmod \
106         puppet-ldap \
107         puppet-network \
108         puppet-nslcd \
109         puppet-nssdb \
110         puppet-puppi \
111         puppet-vlan \
112         puppet-collectd \
113         "
114
115
116  
117 RDEPENDS_puppet-mtce += " puppet"
118 RDEPENDS_puppet-dcdbsync += " puppet" 
119 RDEPENDS_puppet-dcmanager += " puppet"
120 RDEPENDS_puppet-dcorch += " puppet"
121 RDEPENDS_puppet-fm += " puppet"
122 RDEPENDS_puppet-nfv += " puppet"
123 RDEPENDS_puppet-patching += " puppet"
124 RDEPENDS_puppet-smapi += " puppet"
125 RDEPENDS_puppet-sshd += " puppet"
126 RDEPENDS_puppet-sysinv += " puppet"
127
128 PACKAGES += " puppet-dcdbsync"
129 PACKAGES += " puppet-dcmanager"
130 PACKAGES += " puppet-dcorch"
131 PACKAGES += " puppet-fm"
132 PACKAGES += " puppet-mtce"
133 PACKAGES += " puppet-nfv"
134 PACKAGES += " puppet-patching"
135 PACKAGES += " puppet-smapi"
136 PACKAGES += " puppet-sshd"
137 PACKAGES += " puppet-sysinv"
138 PACKAGES += " puppet-manifests"
139
140 do_install() {
141
142         install -d -m 0755 ${D}/${datadir}/puppet/modules/dcdbsync
143         cp -R ${S}/modules/puppet-dcdbsync/src/dcdbsync ${D}/${datadir}/puppet/modules
144
145         install -d -m 0755 ${D}/${datadir}/puppet/modules/dcmanager
146         cp -R ${S}/modules/puppet-dcmanager/src/dcmanager ${D}/${datadir}/puppet/modules
147
148         install -d -m 0755 ${D}/${datadir}/puppet/modules/dcorch
149         cp -R ${S}/modules/puppet-dcorch/src/dcorch/ ${D}/${datadir}/puppet/modules/
150
151         install -d -m 0755 ${D}/${datadir}/puppet/modules/fm
152         cp -R ${S}/modules/puppet-fm/src/fm ${D}/${datadir}/puppet/modules
153
154         install -d -m 0755 ${D}/${datadir}/puppet/modules/mtce
155         cp -R ${S}/modules/puppet-mtce/src/mtce ${D}/${datadir}/puppet/modules
156
157         install -d -m 0755 ${D}/${datadir}/puppet/modules/nfv
158         cp -R ${S}/modules/puppet-nfv/src/nfv ${D}/${datadir}/puppet/modules
159
160         install -d -m 0755 ${D}/${datadir}/puppet/modules/patching
161         cp -R ${S}/modules/puppet-patching/src/patching ${D}/${datadir}/puppet/modules
162
163         install -d -m 0755 ${D}/${datadir}/puppet/modules/smapi
164         cp -R ${S}/modules/puppet-smapi/src/smapi ${D}/${datadir}/puppet/modules
165
166         install -d -m 0755 ${D}/${datadir}/puppet/modules/sshd
167         cp -R ${S}/modules/puppet-sshd/src/sshd ${D}/${datadir}/puppet/modules
168
169         install -d -m 0755 ${D}/${datadir}/puppet/modules/sysinv
170         cp -R ${S}/modules/puppet-sysinv/src/sysinv ${D}/${datadir}/puppet/modules
171
172         cd ${S}/puppet-manifests/src
173         oe_runmake BINDIR=${D}/${bindir} \
174                 CONFIGDIR=${D}/${sysconfdir}/puppet/ \
175                 MODULEDIR=${D}/${datadir}/puppet/modules -f Makefile install
176
177         # fix the path for systemctl
178         sed -i -e 's|${bindir}/systemctl|${base_bindir}/systemctl|' ${D}/${datadir}/puppet/modules/platform/manifests/*.pp
179         sed -i -e 's|${bindir}|${bindir}:${base_bindir}|' ${D}/${datadir}/puppet/modules/sysinv/manifests/api.pp
180
181         # fix the path for mount and awk
182         sed -i -e 's|${bindir}|${bindir}:${base_bindir}|' ${D}/${datadir}/puppet/modules/platform/manifests/filesystem.pp
183
184         # fix the path for slapd.conf
185         sed -i -e '/\/usr\/lib64\/openldap/d' ${D}/${datadir}/puppet/modules/platform/manifests/ldap.pp
186
187         # fix the libdir for collectd
188         sed -i -e 's|/usr/lib64|${libdir}|' ${D}/${datadir}/puppet/modules/platform/templates/collectd.conf.erb
189
190         install -m 0755 ${WORKDIR}/${PN}/apply_network_config_poky.sh  ${D}/${bindir}/apply_network_config_poky.sh
191 }
192
193 FILES_puppet-sysinv += " \
194         ${datadir}/puppet/modules/sysinv \
195         "
196
197 FILES_puppet-sshd += " \
198         ${datadir}/puppet/modules/sshd \
199         "
200
201 FILES_puppet-smapi += " \
202         ${datadir}/puppet/modules/smapi \
203         "
204 FILES_puppet-patching += " \
205         ${datadir}/puppet/modules/patching \
206         "
207
208 FILES_puppet-nfv += " \
209         ${datadir}/puppet/modules/nfv \
210         "
211
212 FILES_puppet-mtce = "\
213         ${datadir}/puppet/modules/mtce \
214         "
215
216 FILES_puppet-manifests = "\
217         ${sysconfdir}/puppet/hiera.yaml \
218         ${sysconfdir}/puppet/hieradata \
219         ${sysconfdir}/puppet/hieradata/worker.yaml \
220         ${sysconfdir}/puppet/hieradata/storage.yaml \
221         ${sysconfdir}/puppet/hieradata/global.yaml \
222         ${sysconfdir}/puppet/hieradata/controller.yaml \
223         ${sysconfdir}/puppet/manifests/worker.pp \
224         ${sysconfdir}/puppet/manifests/ansible_bootstrap.pp \
225         ${sysconfdir}/puppet/manifests/bootstrap.pp \
226         ${sysconfdir}/puppet/manifests/runtime.pp \
227         ${sysconfdir}/puppet/manifests/storage.pp \
228         ${sysconfdir}/puppet/manifests/upgrade.pp \
229         ${sysconfdir}/puppet/manifests/controller.pp \
230         ${datadir}/puppet/modules/openstack/manifests \
231         ${datadir}/puppet/modules/openstack/templates \
232         ${datadir}/puppet/modules/platform/manifests \
233         ${datadir}/puppet/modules/platform/templates \
234         ${datadir}/puppet/modules/platform/files \
235         ${datadir}/puppet/modules/platform/lib/facter \
236         ${datadir}/puppet/modules/platform/lib/puppet \
237         ${bindir}/puppet-manifest-apply.sh \
238         ${bindir}/apply_network_config.sh \
239         ${bindir}/apply_network_config_poky.sh \
240         "
241 FILES_puppet-fm += " \
242         ${datadir}/puppet/modules/fm \
243         "
244
245 FILES_puppet-dcorch += " \
246         ${datadir}/puppet/modules/dcorch \
247         "
248
249 FILES_puppet-dcmanager += " \
250         ${datadir}/puppet/modules/dcmanager \
251         "
252
253 FILES_puppet-dcdbsync += " \
254         ${datadir}/puppet/modules/dcdbsync \
255         "
256
257 inherit openssl10