Browse Source

netdata/packaging: following the pattern from CUPS, separate freeIPMI (#6939)

1) side fix: correction of wording in CUPS description
2) Create subpackage for free IPMI
3) Settle the rules for populating the new package and removing freeipmi from core package

Note: We use strict version matching, once this works fine we need to go back and fix this for CUPS as well

Co-authored-by: Austin S. Hemmelgarn <ahferroin7@gmail.com>
Paul Emm. Katsoulakis 5 years ago
parent
commit
b887379e5a

+ 9 - 1
contrib/debian/control

@@ -43,7 +43,6 @@ Depends: adduser,
          openssl,
          libmnl0,
          libjson-c3,
-         freeipmi,
          libnetfilter-acct1,
          libprotobuf-c1,
          libsnappy1v5,
@@ -62,3 +61,12 @@ Architecture: any
 Depends: cups,
          netdata (>= ${source:Version})
 Description: The Common Unix Printing System plugin for metrics collection from cupsd
+
+Package: netdata-plugin-freeipmi
+Architecture: any
+Depends: freeipmi,
+         netdata (= ${source:Version})
+Description: FreeIPMI - The Intelligent Platform Management System.
+ The IPMI specification defines a set of interfaces for platform management.
+ It is implemented by a number vendors for system management. The features of IPMI that most users will be interested in 
+ are sensor monitoring, system event monitoring, power control, and serial-over-LAN (SOL).

+ 9 - 1
contrib/debian/control.buster

@@ -43,7 +43,6 @@ Depends: adduser,
          openssl,
          libmnl0,
          libjson-c3,
-         freeipmi,
          libnetfilter-acct1,
          libprotobuf-c1,
          libsnappy1v5,
@@ -62,3 +61,12 @@ Architecture: any
 Depends: cups,
          netdata (>= ${source:Version})
 Description: The Common Unix Printing System plugin for metrics collection from cupsd
+
+Package: netdata-plugin-freeipmi
+Architecture: any
+Depends: freeipmi,
+         netdata (= ${source:Version})
+Description: FreeIPMI - The Intelligent Platform Management System.
+ The IPMI specification defines a set of interfaces for platform management.
+ It is implemented by a number vendors for system management. The features of IPMI that most users will be interested in 
+ are sensor monitoring, system event monitoring, power control, and serial-over-LAN (SOL).

+ 10 - 2
contrib/debian/control.jessie

@@ -40,8 +40,7 @@ Depends: adduser,
          libjudydebian1,
          openssl,
          libmnl0,
-         libjson-c2,
-         freeipmi,
+         libjson-c3,
          libnetfilter-acct1,
          libprotobuf-c1,
          libsnappy1,
@@ -60,3 +59,12 @@ Architecture: any
 Depends: cups,
          netdata (>= ${source:Version})
 Description: The Common Unix Printing System plugin for metrics collection from cupsd
+
+Package: netdata-plugin-freeipmi
+Architecture: any
+Depends: freeipmi,
+         netdata (= ${source:Version})
+Description: FreeIPMI - The Intelligent Platform Management System.
+ The IPMI specification defines a set of interfaces for platform management.
+ It is implemented by a number vendors for system management. The features of IPMI that most users will be interested in 
+ are sensor monitoring, system event monitoring, power control, and serial-over-LAN (SOL).

+ 9 - 1
contrib/debian/control.trusty

@@ -41,7 +41,6 @@ Depends: adduser,
          openssl,
          libmnl0,
          libjson-c2,
-         freeipmi,
          libnetfilter-acct1,
          libprotobuf-c0,
          libsnappy1,
@@ -60,3 +59,12 @@ Architecture: any
 Depends: cups,
          netdata (>= ${source:Version})
 Description: The Common Unix Printing System plugin for metrics collection from cupsd
+
+Package: netdata-plugin-freeipmi
+Architecture: any
+Depends: freeipmi,
+         netdata (= ${source:Version})
+Description: FreeIPMI - The Intelligent Platform Management System.
+ The IPMI specification defines a set of interfaces for platform management.
+ It is implemented by a number vendors for system management. The features of IPMI that most users will be interested in 
+ are sensor monitoring, system event monitoring, power control, and serial-over-LAN (SOL).

+ 9 - 0
contrib/debian/control.wheezy

@@ -29,3 +29,12 @@ Architecture: any
 Depends: cups,
          netdata (>= ${source:Version})
 Description: The Common Unix Printing System plugin for metrics collection from cupsd
+
+Package: netdata-plugin-freeipmi
+Architecture: any
+Depends: freeipmi,
+         netdata (= ${source:Version})
+Description: FreeIPMI - The Intelligent Platform Management System.
+ The IPMI specification defines a set of interfaces for platform management.
+ It is implemented by a number vendors for system management. The features of IPMI that most users will be interested in 
+ are sensor monitoring, system event monitoring, power control, and serial-over-LAN (SOL).

+ 9 - 1
contrib/debian/control.xenial

@@ -43,7 +43,6 @@ Depends: adduser,
          openssl,
          libmnl0,
          libjson-c2,
-         freeipmi,
          libnetfilter-acct1,
          libprotobuf-c1,
          libsnappy1v5,
@@ -62,3 +61,12 @@ Architecture: any
 Depends: cups,
          netdata (>= ${source:Version})
 Description: The Common Unix Printing System plugin for metrics collection from cupsd
+
+Package: netdata-plugin-freeipmi
+Architecture: any
+Depends: freeipmi,
+         netdata (= ${source:Version})
+Description: FreeIPMI - The Intelligent Platform Management System.
+ The IPMI specification defines a set of interfaces for platform management.
+ It is implemented by a number vendors for system management. The features of IPMI that most users will be interested in 
+ are sensor monitoring, system event monitoring, power control, and serial-over-LAN (SOL).

+ 9 - 1
contrib/debian/rules

@@ -34,6 +34,12 @@ override_dh_install: debian/netdata.postinst
 	mv -f $(TEMPTOP)/usr/libexec/netdata/plugins.d/cups.plugin \
 	$(TOP)-plugin-cups/usr/libexec/netdata/plugins.d/cups.plugin
 
+	# Add free IPMI plugin install rules
+	#
+	mkdir -p $(TOP)-plugin-freeipmi/usr/libexec/netdata/plugins.d
+	mv -f $(TEMPTOP)/usr/libexec/netdata/plugins.d/freeipmi.plugin \
+	$(TOP)-plugin-freeipmi/usr/libexec/netdata/plugins.d/freeipmi.plugin
+
 	# Set the rest of the software in the main package
 	#
 	cp -rp $(TEMPTOP)/usr $(TOP)
@@ -86,7 +92,6 @@ override_dh_fixperms:
 	# given extra capabilities in the postinst script.
 	#
 	chmod 0754 $(TOP)/usr/libexec/netdata/plugins.d/apps.plugin
-	chmod 0754 $(TOP)/usr/libexec/netdata/plugins.d/freeipmi.plugin
 	chmod 0754 $(TOP)/usr/libexec/netdata/plugins.d/perf.plugin
 	chmod 0754 $(TOP)/usr/libexec/netdata/plugins.d/slabinfo.plugin
 	chmod 0750 $(TOP)/usr/libexec/netdata/plugins.d/go.d.plugin
@@ -94,6 +99,9 @@ override_dh_fixperms:
 	# CUPS plugin package
 	chmod 0750 $(TOP)-plugin-cups/usr/libexec/netdata/plugins.d/cups.plugin
 
+	# freeIPMI plugin package
+	chmod 0754 $(TOP)-plugin-freeipmi/usr/libexec/netdata/plugins.d/freeipmi.plugin
+
 override_dh_installlogrotate:
 	cp system/netdata.logrotate debian/netdata.logrotate
 	dh_installlogrotate