From 45ac389d989aa59fb74563e3c44843403ffa2584 Mon Sep 17 00:00:00 2001 From: Alarig Le Lay Date: Wed, 21 Aug 2024 14:39:53 +0200 Subject: [PATCH] www-apps/netbox: add 3.2.9 Signed-off-by: Alarig Le Lay --- www-apps/netbox/Manifest | 1 + www-apps/netbox/netbox-3.2.9.ebuild | 155 ++++++++++++++++++++++++++++ 2 files changed, 156 insertions(+) create mode 100644 www-apps/netbox/netbox-3.2.9.ebuild diff --git a/www-apps/netbox/Manifest b/www-apps/netbox/Manifest index 8f48452..259c541 100644 --- a/www-apps/netbox/Manifest +++ b/www-apps/netbox/Manifest @@ -1,2 +1,3 @@ DIST netbox-3.0.12.tar.gz 4498000 BLAKE2B 3ae2865417eac202fba2066ad28cacb000efc845df14e534e87841f398ca4a063c34cfb82eee383d56043576ba5a44e7e419c57d5407247f03ffe8a6eb41ea14 SHA512 92ffbae37f718ef5609954d551e3432a33f9a3712047666ae75ad6fd71eed2028de2c6a24bb94fdfbd233caa9f644f89e0e9b59ddd416798431454a4fe0db9e7 DIST netbox-3.1.11.tar.gz 4408997 BLAKE2B 2cb3b13d1ba0345c90bd7657a6cd16ebae1386a5749e9b60e7f91604f992af6c53c6755f02c42079033312fea1a8d3b91eb023be05ec722bfb94408e59a60568 SHA512 c921fe373b4cf127cadab7b36d5cee1a0c78dd5d648dbb4c09e5de0351a560411abc57f7958eb9b3dec720b48022ecce1de9b0fa70174caaf442b02bda785ede +DIST netbox-3.2.9.tar.gz 4837923 BLAKE2B 396789648aa529682600de22d90f4639f4fbee2cf42dc9a72f63f1f3dbd8af9a0a27a320cbe66d90294f98b5831f0a7233566eebce7eea19549e7b89b11d5fd6 SHA512 e221a82e7d119e8f03f3d5364551c7a0634cb5f0db4f2bfad79109fbec2955de36a5323bbb7d846f762d30a12bd70f4206485fd9d703ad3573e33cbd2dbca286 diff --git a/www-apps/netbox/netbox-3.2.9.ebuild b/www-apps/netbox/netbox-3.2.9.ebuild new file mode 100644 index 0000000..c48632d --- /dev/null +++ b/www-apps/netbox/netbox-3.2.9.ebuild @@ -0,0 +1,155 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_COMPAT=( python3_{11..12} ) +inherit python-single-r1 readme.gentoo-r1 + +DESCRIPTION="IP address and data center infrastructure management tool" +HOMEPAGE="https://github.com/netbox-community/netbox" +SRC_URI="https://github.com/netbox-community/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64" +IUSE="ldap" +REQUIRED_USE=${PYTHON_REQUIRED_USE} + +RDEPEND=" + acct-group/netbox + acct-user/netbox + ${PYTHON_DEPS} + $(python_gen_cond_dep ' + >=dev-python/bleach-5.0.1[${PYTHON_USEDEP}] + >=dev-python/django-4.0.7[${PYTHON_USEDEP}] + =dev-python/django-cors-headers-3.13.0[${PYTHON_USEDEP}] + >=dev-python/django-debug-toolbar-3.5.0[${PYTHON_USEDEP}] + >=dev-python/django-filter-22.1[${PYTHON_USEDEP}] + >=dev-python/django-graphiql-debug-toolbar-0.2.0[${PYTHON_USEDEP}] + >=dev-python/django-mptt-0.13.4[${PYTHON_USEDEP}] + >=dev-python/django-pglocks-1.0.4[${PYTHON_USEDEP}] + >=dev-python/django-prometheus-2.2.0[${PYTHON_USEDEP}] + >=dev-python/django-redis-5.2.0[${PYTHON_USEDEP}] + >=dev-python/django-rq-2.5.1[${PYTHON_USEDEP}] + >=dev-python/django-tables2-2.4.1[${PYTHON_USEDEP}] + >=dev-python/django-taggit-2.1.0[${PYTHON_USEDEP}] + >=dev-python/django-timezone-field-5.0[${PYTHON_USEDEP}] + >=dev-python/djangorestframework-3.13.1[${PYTHON_USEDEP}] + >=dev-python/drf-yasg-1.21.3[${PYTHON_USEDEP},validation] + >=dev-python/graphene-django-2.15.0[${PYTHON_USEDEP}] + >=www-servers/gunicorn-20.1.0[${PYTHON_USEDEP}] + >=dev-python/jinja-3.1.2[${PYTHON_USEDEP}] + >=dev-python/markdown-3.4.1[${PYTHON_USEDEP}] + >=dev-python/markdown-include-0.7.0[${PYTHON_USEDEP}] + >=dev-python/mkdocs-material-8.4.0[${PYTHON_USEDEP}] + >=dev-python/mkdocstrings-python-legacy-0.2.3[${PYTHON_USEDEP}] + >=dev-python/netaddr-0.8.0[${PYTHON_USEDEP}] + >=dev-python/pillow-9.2.0[${PYTHON_USEDEP}] + dev-python/psycopg:2[${PYTHON_USEDEP}] + >=dev-python/pyyaml-6.0[${PYTHON_USEDEP}] + >=dev-python/sentry-sdk-1.9.5[${PYTHON_USEDEP}] + >=dev-python/social-auth-app-django-5.0.0[${PYTHON_USEDEP}] + >=dev-python/social-auth-core-4.3.0[${PYTHON_USEDEP}] + >=dev-python/svgwrite-1.4.3[${PYTHON_USEDEP}] + >=dev-python/tablib-3.2.1[${PYTHON_USEDEP}] + >=dev-python/tzdata-2022.1[${PYTHON_USEDEP}] + >=dev-python/jsonschema-3.2.0[${PYTHON_USEDEP}] + >=dev-python/pytz-2022.1[${PYTHON_USEDEP}] + ldap? ( >=dev-python/django-auth-ldap-4.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, set the appropriate +use flag when emerging netbox to install the dependency for it. + +Once that is done, you should be able to add the netbox service to the +default runlevel and start it. + +If you want to use webhooks, 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/ +" + +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} + 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 + for LAST_PREVIOUS_VERSION in $REPLACING_VERSIONS; do + if [[ "$LAST_PREVIOUS_VERSION" = "2.5.10" ]]; then + ewarn "The home directory of the netbox user is now /var/lib/netbox" + ewarn "Please adjust your system." + fi + done + + if [ -z "${LAST_PREVIOUS_VERSION}" ]; then + exit + fi + + LAST_BASE_DIRECTORY="/opt/netbox-${LAST_PREVIOUS_VERSION}" + NBCP="su -l ${PN} -s /bin/sh -c cp" + if [ -f "${LAST_BASE_DIRECTORY}/local_requirements.txt}" ]; then + ${NBCP} "${LAST_BASE_DIRECTORY}/local_requirements.txt}" /opt/netbox + fi + if [ -f "${LAST_BASE_DIRECTORY}/netbox/netbox/ldap_config.py" ]; then + ${NBCP} "${LAST_BASE_DIRECTORY}/netbox/netbox/ldap_config.py" /opt/netbox/netbox/netbox/ + fi + if [ -d "${LAST_BASE_DIRECTORY}/netbox/media" ]; then + ${NBCP} -pr "${LAST_BASE_DIRECTORY}/netbox/media" /opt/netbox/netbox/ + fi + if [ -d "${LAST_BASE_DIRECTORY}/netbox/scripts" ]; then + ${NBCP} -pr "${LAST_BASE_DIRECTORY}/netbox/scripts" /opt/netbox/netbox/ + fi + if [ -d "${LAST_BASE_DIRECTORY}/netbox/reports" ]; then + ${NBCP} -pr "${LAST_BASE_DIRECTORY}/netbox/reports" /opt/netbox/netbox/ + fi + su -p -s /bin/sh -c "/opt/${P}/upgrade.sh" "${PN}" +}