summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'www-apps')
-rw-r--r--www-apps/netbox/Manifest1
-rw-r--r--www-apps/netbox/files/netbox-2.6.1-no-pip.patch27
-rw-r--r--www-apps/netbox/netbox-2.6.1.ebuild121
3 files changed, 149 insertions, 0 deletions
diff --git a/www-apps/netbox/Manifest b/www-apps/netbox/Manifest
index 70891e41ba84..51a181dd107c 100644
--- a/www-apps/netbox/Manifest
+++ b/www-apps/netbox/Manifest
@@ -1,2 +1,3 @@
DIST netbox-2.5.11.tar.gz 2364831 BLAKE2B e5117b2d4c3f33b231715a8b192e7954dc0611fcb270937c5c8abda3abc9f9925bd7db2c7306847428b5a24014d0c0b07ee404294b389a708d0dc7963c250691 SHA512 dfd19af01bf096ee7d8790981853d7e94d8926a4f0eeb00a061f805d56486670c058752b9a9fb23882b0b8d33e4a2d62f50a35b56c28eb2782be47e6f4b13b7d
DIST netbox-2.5.12.tar.gz 2364874 BLAKE2B efe1360fd7c1105e5c6010ee22a882fb4fc796ff0f907974984dba35a0ab6da7724fd6042b102cebe3e3e291c3a1c65c347a5967edbaf443ece6fe61648a93be SHA512 e105a351f1150139c5bce36527ea650f95504ccc1c7b6a82c41396d69bc8671758cc3b33789c95c81785c5ff54d34c7310cd3e03e65bd006606e85021dcd1795
+DIST netbox-2.6.1.tar.gz 2393902 BLAKE2B 027115458cbb873cb7aa7660a6cd1df46a7768dc05c9280f94c23368336752034b8ede591ed4337f6b65ade1db7fac740533c3c2d932043172cf296ddd2e3f8a SHA512 8cfe4384ed4ad682ff5268e83d72716230683e86e858c857fd694838227a8b3eddfe02c1fc39b00cb36b33519d8cbb942dd4008544943e8b8f7f2d5904c10e5a
diff --git a/www-apps/netbox/files/netbox-2.6.1-no-pip.patch b/www-apps/netbox/files/netbox-2.6.1-no-pip.patch
new file mode 100644
index 000000000000..5d1fa595f4e6
--- /dev/null
+++ b/www-apps/netbox/files/netbox-2.6.1-no-pip.patch
@@ -0,0 +1,27 @@
+diff --git a/upgrade.sh b/upgrade.sh
+index 24e79f5b..248e1cb5 100755
+--- a/upgrade.sh
++++ b/upgrade.sh
+@@ -8,22 +8,6 @@
+ PYTHON="python3"
+ PIP="pip3"
+
+-# TODO: Remove this in v2.6 as it is no longer needed under Python 3
+-# Delete stale bytecode
+-COMMAND="find . -name \"*.pyc\" -delete"
+-echo "Cleaning up stale Python bytecode ($COMMAND)..."
+-eval $COMMAND
+-
+-# Uninstall any Python packages which are no longer needed
+-COMMAND="${PIP} uninstall -r old_requirements.txt -y"
+-echo "Removing old Python packages ($COMMAND)..."
+-eval $COMMAND
+-
+-# Install any new Python packages
+-COMMAND="${PIP} install -r requirements.txt --upgrade"
+-echo "Updating required Python packages ($COMMAND)..."
+-eval $COMMAND
+-
+ # Apply any database migrations
+ COMMAND="${PYTHON} netbox/manage.py migrate"
+ echo "Applying database migrations ($COMMAND)..."
diff --git a/www-apps/netbox/netbox-2.6.1.ebuild b/www-apps/netbox/netbox-2.6.1.ebuild
new file mode 100644
index 000000000000..0b6b0b9de554
--- /dev/null
+++ b/www-apps/netbox/netbox-2.6.1.ebuild
@@ -0,0 +1,121 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_6 )
+inherit python-single-r1 user readme.gentoo-r1
+
+DESCRIPTION="IP address and data center infrastructure management tool"
+HOMEPAGE="https://github.com/digitalocean/netbox"
+SRC_URI="https://github.com/digitalocean/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="ldap webhooks"
+
+RDEPEND=">=dev-python/django-2.2[${PYTHON_USEDEP}]
+ >=dev-python/django-cacheops-4.1[${PYTHON_USEDEP}]
+ >=dev-python/django-cors-headers-3.0.2[${PYTHON_USEDEP}]
+ >=dev-python/django-debug-toolbar-2.0[${PYTHON_USEDEP}]
+ >=dev-python/django-filter-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/django-mptt-0.9.1[${PYTHON_USEDEP}]
+ >=dev-python/django-prometheus-1.0.15[${PYTHON_USEDEP}]
+ >=dev-python/django-tables2-2.0.6[${PYTHON_USEDEP}]
+ >=dev-python/django-taggit-1.1.0[${PYTHON_USEDEP}]
+ >=dev-python/django-taggit-serializer-0.1.7[${PYTHON_USEDEP}]
+ >=dev-python/django-timezone-field-3.0[${PYTHON_USEDEP}]
+ >=dev-python/djangorestframework-3.9.4[${PYTHON_USEDEP}]
+ >=dev-python/drf-yasg-1.16.0[${PYTHON_USEDEP},validation]
+ >=dev-python/graphviz-0.10.1[${PYTHON_USEDEP}]
+ >=dev-python/jinja-2.10.1[${PYTHON_USEDEP}]
+ >=dev-python/markdown-2.6.11[${PYTHON_USEDEP}]
+ <dev-python/markdown-3.0.1[${PYTHON_USEDEP}]
+ >=dev-python/netaddr-0.7.19[${PYTHON_USEDEP}]
+ >=dev-python/pillow-6.0.0[${PYTHON_USEDEP}]
+ >=dev-python/psycopg-2.8.3[${PYTHON_USEDEP}]
+ >=dev-python/py-gfm-0.1.4[${PYTHON_USEDEP}]
+ >=dev-python/pycryptodome-3.8.2[${PYTHON_USEDEP}]
+ www-servers/gunicorn[${PYTHON_USEDEP}]
+ ldap? ( >=dev-python/django-auth-ldap-1.7[${PYTHON_USEDEP}] )
+ webhooks? ( >=dev-python/django-rq-2.1.0[${PYTHON_USEDEP}] )"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-no-pip.patch
+ )
+
+DISABLE_AUTOFORMATTING=YES
+DOC_CONTENTS="
+netbox is installed on your system. However, there are some manual steps
+you need to complete from the installation guide [1].
+
+On Gentoo, the configuration files you need to edit are located in
+/etc/netbox, not /opt/netbox as shown in the installation guide.
+
+If this is a new installation, please follow the installation guide
+other than this difference. Also, if you need ldap or webhooks, set the
+appropriate use flags when you emerge netbox to install the
+dependencies.
+
+Once that is done, you should be able to add the netbox service to the
+default runlevel and start it.
+
+If you have webhooks turned on, you should also add the netbox-rqworker
+service to the default runlevel and start it.
+
+If this is an upgrade, follow these instructions:
+
+Stop the netbox service. If the netbox-rqworker service is running,
+stop it as well.
+
+Next, run the upgrade script as described in the upgrading guide[2].
+
+Next, check for new configuration options and set them as appropriate
+for your system.
+
+Next, start the netbox service.
+
+Finally, if you are using webhooks, start the netbox-rqworker service.
+
+[1] https://netbox.readthedocs.io/en/stable/installation/
+[2] https://netbox.readthedocs.io/en/stable/installation/upgrading/
+"
+
+pkg_setup() {
+ enewgroup ${PN}
+ enewuser ${PN} -1 -1 /var/lib/${PN} ${PN}
+}
+
+src_install() {
+ dodir /opt
+ cp -a ../${P} "${ED}"/opt
+ dosym ${P} /opt/netbox
+dosym ../../etc/netbox/gunicorn_config.py /opt/netbox/gunicorn_config.py
+ dosym ../../../../etc/netbox/configuration.py \
+ /opt/netbox/netbox/netbox/configuration.py
+ dodir /etc/netbox
+ insinto /etc/netbox
+ newins netbox/netbox/configuration.example.py configuration.py
+ doins "${FILESDIR}"/gunicorn_config.py
+ fowners -R netbox:netbox /etc/netbox /opt/${P}
+ fowners -h netbox:netbox /opt/netbox
+ fperms o= /etc/netbox/configuration.py /etc/netbox/gunicorn_config.py
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ use webhooks &&
+ newinitd "${FILESDIR}"/${PN}-rqworker.initd ${PN}-rqworker
+ keepdir /var/log/netbox
+ fowners -R netbox:netbox /var/log/netbox
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+ local r
+ for r in $REPLACING_VERSIONS; do
+ if [[ $r = "2.5.10" ]]; then
+ ewarn "The home directory of the netbox user is now /var/lib/netbox"
+ ewarn "Please adjust your system."
+ fi
+ done
+}