diff --git a/.travis.yml b/.travis.yml index f92ecf7123..1ce9cbd3b5 100644 --- a/.travis.yml +++ b/.travis.yml @@ -27,9 +27,10 @@ install: - export LATEST_RELEASE_DATE="$(git log -1 --format=%aD "${LATEST_RELEASE_VERSION}" | cat)" - if [[ "${TRAVIS_COMMIT_MESSAGE}" = *"[Build latest]"* ]]; then export BUILD_VERSION="$(cat packaging/version | cut -d'-' -f1,2 | sed -e 's/-/./g').latest"; fi; - export DEPLOY_REPO="netdata" # Default production packaging repository + - export PACKAGING_USER="netdata" # Standard package cloud account - if [[ "${TRAVIS_COMMIT_MESSAGE}" = *"[Build latest]"* ]]; then export DEPLOY_REPO="netdata-edge"; fi; - - export PACKAGING_USER="$(echo ${TRAVIS_REPO_SLUG} | cut -d'/' -f1)" - export PACKAGE_CLOUD_RETENTION_DAYS=30 + - if [ ! "${TRAVIS_REPO_SLUG}" = "netdata/netdata" ]; then export DEPLOY_REPO="netdata-devel"; fi; diff --git a/.travis/package_management/build.sh b/.travis/package_management/build.sh index a5217715f8..bafaecc5a2 100644 --- a/.travis/package_management/build.sh +++ b/.travis/package_management/build.sh @@ -24,9 +24,9 @@ ln -sf contrib/debian debian echo "Executing dpkg-buildpackage" # pre/post options are after 1.18.8, is simpler to just check help for their existence than parsing version if dpkg-buildpackage --help | grep "\-\-post\-clean" 2> /dev/null > /dev/null; then - dpkg-buildpackage --post-clean --pre-clean --build=binary + dpkg-buildpackage --post-clean --pre-clean --build=binary -us -uc else - dpkg-buildpackage -b + dpkg-buildpackage -b -us -uc fi echo "DEB build script completed!" diff --git a/contrib/debian/control b/contrib/debian/control index ed5bd94b83..be9a778606 100644 --- a/contrib/debian/control +++ b/contrib/debian/control @@ -43,7 +43,6 @@ Depends: adduser, openssl, libmnl0, libjson-c3, - cups, freeipmi, libnetfilter-acct1, libprotobuf-c1, @@ -56,3 +55,9 @@ Description: real-time charts for system monitoring and presents a web site to view and analyze them. The presentation is also real-time and full of interactive charts that precisely render all collected values. + +Package: netdata-plugin-cups +Architecture: any +Depends: cups, + netdata (>= ${source:Version}) +Description: The Common Unix Printing System plugin for metrics collection from cupds diff --git a/contrib/debian/control.buster b/contrib/debian/control.buster index 56c59ae880..1166883be3 100644 --- a/contrib/debian/control.buster +++ b/contrib/debian/control.buster @@ -43,7 +43,6 @@ Depends: adduser, openssl, libmnl0, libjson-c3, - cups, freeipmi, libnetfilter-acct1, libprotobuf-c1, @@ -56,3 +55,9 @@ Description: real-time charts for system monitoring and presents a web site to view and analyze them. The presentation is also real-time and full of interactive charts that precisely render all collected values. + +Package: netdata-plugin-cups +Architecture: any +Depends: cups, + netdata (>= ${source:Version}) +Description: The Common Unix Printing System plugin for metrics collection from cupds diff --git a/contrib/debian/control.jessie b/contrib/debian/control.jessie index ced85d20e8..79db7839c8 100644 --- a/contrib/debian/control.jessie +++ b/contrib/debian/control.jessie @@ -41,7 +41,6 @@ Depends: adduser, openssl, libmnl0, libjson-c3, - cups, freeipmi, libnetfilter-acct1, libprotobuf-c1, @@ -54,3 +53,9 @@ Description: real-time charts for system monitoring and presents a web site to view and analyze them. The presentation is also real-time and full of interactive charts that precisely render all collected values. + +Package: netdata-plugin-cups +Architecture: any +Depends: cups, + netdata (>= ${source:Version}) +Description: The Common Unix Printing System plugin for metrics collection from cupds diff --git a/contrib/debian/control.trusty b/contrib/debian/control.trusty index cb8a52e018..918d2ad35f 100644 --- a/contrib/debian/control.trusty +++ b/contrib/debian/control.trusty @@ -41,7 +41,6 @@ Depends: adduser, openssl, libmnl0, libjson-c2, - cups, freeipmi, libnetfilter-acct1, libprotobuf-c0, @@ -54,3 +53,9 @@ Description: real-time charts for system monitoring and presents a web site to view and analyze them. The presentation is also real-time and full of interactive charts that precisely render all collected values. + +Package: netdata-plugin-cups +Architecture: any +Depends: cups, + netdata (>= ${source:Version}) +Description: The Common Unix Printing System plugin for metrics collection from cupds diff --git a/contrib/debian/control.wheezy b/contrib/debian/control.wheezy index cde1d560c6..dc23b788e1 100644 --- a/contrib/debian/control.wheezy +++ b/contrib/debian/control.wheezy @@ -23,3 +23,9 @@ Description: real-time charts for system monitoring and presents a web site to view and analyze them. The presentation is also real-time and full of interactive charts that precisely render all collected values. + +Package: netdata-plugin-cups +Architecture: any +Depends: cups, + netdata (>= ${source:Version}) +Description: The Common Unix Printing System plugin for metrics collection from cupds diff --git a/contrib/debian/control.xenial b/contrib/debian/control.xenial index 08a6df43c7..412b389e8d 100644 --- a/contrib/debian/control.xenial +++ b/contrib/debian/control.xenial @@ -43,7 +43,6 @@ Depends: adduser, openssl, libmnl0, libjson-c2, - cups, freeipmi, libnetfilter-acct1, libprotobuf-c1, @@ -56,3 +55,9 @@ Description: real-time charts for system monitoring and presents a web site to view and analyze them. The presentation is also real-time and full of interactive charts that precisely render all collected values. + +Package: netdata-plugin-cups +Architecture: any +Depends: cups, + netdata (>= ${source:Version}) +Description: The Common Unix Printing System plugin for metrics collection from cupds diff --git a/contrib/debian/rules b/contrib/debian/rules index 036e0108e6..35cae45bdb 100755 --- a/contrib/debian/rules +++ b/contrib/debian/rules @@ -4,6 +4,7 @@ # the location of plugins in /usr/lib DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) TOP = $(CURDIR)/debian/netdata +TEMPTOP = $(CURDIR)/debian/tmp %: # For jessie and beyond @@ -31,9 +32,36 @@ override_dh_install: debian/netdata.postinst # find "$(TOP)" -name .keep -exec rm '{}' ';' + # Set the CUPS plugin install rule + # + mkdir -p $(TOP)-plugin-cups/usr/libexec/netdata/plugins.d + mv -f $(TEMPTOP)/usr/libexec/netdata/plugins.d/cups.plugin \ + $(TOP)-plugin-cups/usr/libexec/netdata/plugins.d/cups.plugin + + # Set the rest of the software in the main package + # + cp -rp $(TEMPTOP)/usr $(TOP)/usr + cp -rp $(TEMPTOP)/var $(TOP)/var + #cp -rp $(TEMPTOP)/etc $(TOP)/etc + + # Copy sample netdata.conf + cp -p $(CURDIR)/system/edit-config $(TOP)/etc/netdata/ + + # Create placeholder dirs in netdata configuration directory + # + mkdir -p $(TOP)/etc/netdata/health.d + mkdir -p $(TOP)/etc/netdata/python.d + mkdir -p $(TOP)/etc/netdata/charts.d + mkdir -p $(TOP)/etc/netdata/cystonm-plugins.d + mkdir -p $(TOP)/etc/netdata/go.d + mkdir -p $(TOP)/etc/netdata/ssl + mkdir -p $(TOP)/etc/netdata/node.d + mkdir -p $(TOP)/etc/netdata/statsd.d + + # Move files that local user shouldn't be editing to /usr/share/netdata # - mkdir -p "$(TOP)/usr/share/netdata" + mkdir -p "$(TOP)/usr/share/netdata/www" for D in $$(find "$(TOP)/var/lib/netdata/www/" -maxdepth 1 -type d -printf '%f '); do \ echo Relocating $$D; \ mv "$(TOP)/var/lib/netdata/www/$$D" "$(TOP)/usr/share/netdata/www/$$D"; \ @@ -55,7 +83,7 @@ override_dh_install: debian/netdata.postinst # Install go # - debian/install_go.sh $$(cat ${CURDIR}/packaging/go.d.version) $(TOP)/usr/lib/$(DEB_HOST_MULTIARCH)/netdata/ $(TOP)/usr/libexec/netdata + debian/install_go.sh $$(cat ${CURDIR}/packaging/go.d.version) $(TOP)/usr/lib/netdata $(TOP)/usr/libexec/netdata override_dh_installdocs: dh_installdocs @@ -81,6 +109,13 @@ override_dh_fixperms: chmod 0754 $(TOP)/usr/libexec/netdata/plugins.d/perf.plugin chmod 0750 $(TOP)/usr/libexec/netdata/plugins.d/go.d.plugin + # Support script for configuration file management + # + chmod 0750 $(TOP)/etc/netdata/edit-config + + # CUPS plugin package + chmod 0750 $(TOP)-plugin-cups/usr/libexec/netdata/plugins.d/cups.plugin + override_dh_installlogrotate: cp system/netdata.logrotate debian/netdata.logrotate dh_installlogrotate