diff options
Diffstat (limited to 'net-analyzer/longview/longview-1.1.5.ebuild')
-rw-r--r-- | net-analyzer/longview/longview-1.1.5.ebuild | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/net-analyzer/longview/longview-1.1.5.ebuild b/net-analyzer/longview/longview-1.1.5.ebuild new file mode 100644 index 0000000..a744ad3 --- /dev/null +++ b/net-analyzer/longview/longview-1.1.5.ebuild @@ -0,0 +1,111 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit systemd + +DESCRIPTION="Linode's Longview Agent" +HOMEPAGE="https://github.com/linode/longview" +SRC_URI="https://github.com/linode/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64" +IUSE="apache2 mysql nginx" + +RDEPEND=" + app-portage/eix + dev-lang/perl + dev-perl/Crypt-SSLeay + dev-perl/DBI + dev-perl/IO-Socket-INET6 + dev-perl/JSON + dev-perl/Linux-Distribution + dev-perl/Log-LogLite + dev-perl/perl-headers + dev-perl/Try-Tiny + apache2? ( www-servers/apache[apache2_modules_status] ) + mysql? ( dev-perl/DBD-mysql ) +" + +src_prepare() { + sed 's|/var/run|/run|' \ + -i Linode/Longview/Util.pm \ + -i Extras/init/longview.service \ + || die "sed failed" + + eapply_user +} + +src_configure() { + : +} + +src_compile() { + : +} + +src_install() { + default + + insinto /opt/linode/${PN} + doins -r Linode + + fperms 0755 /opt/linode/longview/Linode/Longview.pl + + insinto /opt/linode/${PN}/Linode/Longview/DataGetter/Packages/ + doins Extras/Modules/Packages/Gentoo.pm + + keepdir /var/log/linode/ + + insinto /etc/linode/longview.d/ + keepdir /etc/linode/longview.d/ + use apache2 && doins Extras/conf/Apache.conf + use mysql && doins Extras/conf/MySQL.conf + use nginx && doins Extras/conf/Nginx.conf + + doinitd "${FILESDIR}"/${PN} + systemd_dounit Extras/init/longview.service +} + +pkg_postinst() { + local api_key + local api_key_path=/etc/linode/longview.key + + [[ -f ${api_key_path} ]] && api_key=$(<${api_key_path}) + + if [[ -z $api_key ]] ; then + elog "Before you start Longview, you need to get the API key for this host." + elog "Go to:" + elog " https://manager.linode.com/longview/" + elog "Click on the 'i' button of the client matching this host (or create a" + elog "new one), and save the Longview API Key to:" + elog " ${api_key_path}" + elog + fi + + if [[ -z ${REPLACING_VERSIONS} ]] ; then + if use apache2 ; then + elog "You'll need to configure Apache as detailed in the following link:" + elog "https://www.linode.com/docs/platform/longview/longview-app-for-apache#manual-configuration-all-distributions" + elog + fi + + elog "You'll need to open the firewall a bit so Longview client can talk with" + elog "the monitoring server:" + elog + elog " # iptables -I INPUT -s longview.linode.com -j ACCEPT" + elog " # iptables -I OUTPUT -d longview.linode.com -j ACCEPT" + elog " # ip6tables -I INPUT -s longview.linode.com -j ACCEPT" + elog " # ip6tables -I OUTPUT -d longview.linode.com -j ACCEPT" + elog + elog " # rc-service iptables save" + elog " # rc-service ip6tables save" + elog + + elog "Once you've done the above, you can start it:" + elog " # rc-service longview start" + elog " # rc-update add longview" + fi +} |