764b98ebc6eef247444fb199cf9262aaaa8a0fd8
[pti/rtp.git] / meta-starlingx / meta-stx-virt / recipes-networking / openvswitch / openvswitch_%.bbappend
1 FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
2
3 RDEPENDS_${PN} += " \
4                 python-pyelftools \
5                 firewalld \
6                 logrotate \
7                 hwdata \
8                 "
9
10 PACKAGECONFIG = "libcap-ng ssl dpdk"
11 PACKAGECONFIG[ssl] = "--enable-ssl,--disable-ssl,openssl,"
12 PACKAGECONFIG[dpdk] = "--with-dpdk=${STAGING_DIR_TARGET}${DPDK_INSTALL_DIR}/share/${TARGET_ARCH}-native-linuxapp-gcc,,dpdk,"
13
14 SRCREV_FORMAT = "opendev"
15 SRCREV_opendev = "d778e862571957ece3c404c0c37d325769772fde"
16 SUBPATH0 = "openvswitch-config"
17 DSTSUFX0 = "stx-configfiles"
18
19 LICENSE_append = "& Apache-2.0"
20 LIC_FILES_CHKSUM += "\
21         file://stx-configfiles-LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
22         "
23 SRC_URI += " \
24         git://opendev.org/starlingx/config-files.git;protocol=https;destsuffix=${DSTSUFX0};branch="r/stx.3.0";subpath=${SUBPATH0};name=opendev \
25         "
26
27 do_unpack_append() {
28     bb.build.exec_func('do_copy_config_files', d)
29 }
30
31 do_copy_config_files () {
32     cp -pf ${WORKDIR}/stx-configfiles/files/LICENSE ${S}/stx-configfiles-LICENSE
33 }
34
35 do_install_append () {
36         cd ${S}
37         install -d -p -m0755 ${D}/${base_libdir}/udev/rules.d
38         install -d -m0755 ${D}/${systemd_system_unitdir}
39         install -p -m0644 rhel/usr_lib_udev_rules.d_91-vfio.rules ${D}/${base_libdir}/udev/rules.d/91-vfio.rules
40
41         install -p -m0644 \
42                 rhel/usr_lib_systemd_system_ovs-delete-transient-ports.service \
43                 ${D}/${systemd_system_unitdir}/ovs-delete-transient-ports.service 
44
45         install -p -m0644 \
46                 rhel/usr_lib_systemd_system_ovn-controller.service \
47                 ${D}/${systemd_system_unitdir}/ovn-controller.service \
48
49         install -p -m0644 \
50                 rhel/usr_lib_systemd_system_ovn-controller-vtep.service \
51                 ${D}/${systemd_system_unitdir}/ovn-controller-vtep.service \
52
53         install -p -m0644 \
54                 rhel/usr_lib_systemd_system_ovn-northd.service \
55                 ${D}/${systemd_system_unitdir}/ovn-northd.service \
56
57 ##############
58 # TODO: Do we need to use sysv? 
59 #               
60 #       install -m 0755 rhel/etc_init.d_openvswitch \
61 #        $RPM_BUILD_ROOT%{_datadir}/openvswitch/scripts/openvswitch.init
62 #
63 # TODO: Is this the best solution?
64 #       install -d -m 0755 $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/network-scripts/
65 #       install -p -m 0755 rhel/etc_sysconfig_network-scripts_ifdown-ovs \
66 #               $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/network-scripts/ifdown-ovs
67 #       install -p -m 0755 rhel/etc_sysconfig_network-scripts_ifup-ovs \
68 #               $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/network-scripts/ifup-ovs
69 # TODO: warrior builds openvswitch with python3.
70 #       install -d -m 0755 $RPM_BUILD_ROOT%{python2_sitelib}
71 #       cp -a $RPM_BUILD_ROOT/%{_datadir}/openvswitch/python/* \
72 #               $RPM_BUILD_ROOT%{python2_sitelib}
73 #
74 # TODO: who needs this script?
75 #      install -p -D -m 0755 \
76 #               rhel/usr_share_openvswitch_scripts_ovs-systemd-reload \
77 #               $RPM_BUILD_ROOT%{_datadir}/openvswitch/scripts/ovs-systemd-reload
78 ###########
79
80         install -d -p -m0755 ${D}/${sysconfdir}/logrotate.d
81         install -p -D -m 0644 rhel/etc_logrotate.d_openvswitch \
82                 ${D}/${sysconfdir}/logrotate.d/openvswitch
83
84
85         install -d -p -m 0755 ${D}/${sharedstatedir}/openvswitch
86         install -d -p  -m 0755 ${D}/${libdir}/firewalld/services/
87         install -p -m 0644 rhel/usr_lib_firewalld_services_ovn-central-firewall-service.xml \
88                 ${D}/${libdir}/firewalld/services/ovn-central-firewall-service.xml
89
90         install -d -p -m 0755 ${D}/${libdir}/ocf/resource.d/ovn
91         ln -s ${datadir}/openvswitch/scripts/ovndb-servers.ocf  ${D}/${libdir}/ocf/resource.d/ovn/ovndb-servers
92
93         if ${@bb.utils.contains('PACKAGECONFIG', 'dpdk', 'true', 'false', d)}; then
94                 install -m 0755 ${STAGING_DATADIR}/dpdk/usertools/dpdk-pmdinfo.py ${D}${datadir}/openvswitch/scripts/dpdk-pmdinfo.py
95                 install -m 0755 ${STAGING_DATADIR}/dpdk/usertools/dpdk-devbind.py ${D}${datadir}/openvswitch/scripts/dpdk-devbind.py
96         fi
97
98         install -m 0644 ${WORKDIR}/stx-configfiles/files/ovsdb-server.pmon.conf ${D}/${sysconfdir}/openvswitch/ovsdb-server.pmon.conf
99         install -m 0644 ${WORKDIR}/stx-configfiles/files/ovs-vswitchd.pmon.conf ${D}/${sysconfdir}/openvswitch/ovs-vswitchd.pmon.conf
100         install -m 0644 ${WORKDIR}/stx-configfiles/files/etc_logrotate.d_openvswitch ${D}/${sysconfdir}/logrotate.d/openvswitch
101       
102 }
103
104
105 FILES_${PN}_append = " \
106         ${libdir}/      \
107         ${base_libdir}/ \
108         "