aboutsummaryrefslogtreecommitdiffstats
path: root/testing/netbox/APKBUILD
blob: 0ef7b9ec786c8b1f603b7b3f991752c38e6fc807 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
# Maintainer:
pkgname=netbox
pkgver=2.3.1
pkgrel=0
pkgdesc="IP address management and data center infrastructure management tool"
url="https://netbox.io"
arch="noarch"
license="Apache-2.0"
depends="py3-django py3-django-cors-headers py3-django-debug-toolbar
	py3-django-filter py3-django-mptt py3-django-rest-swagger py3-django-tables2
	py3-django-rest-framework py-django-timezone-field
	py3-napalm py3-graphviz py3-markdown py3-natsort
	py3-ncclient py3-netaddr py3-paramiko py3-pillow py3-psycopg2 py3-pygfm
	py3-pycryptodome py3-xmltodict py3-gunicorn"
install="$pkgname.pre-install $pkgname.post-upgrade"
subpackages="$pkgname-doc"
options="!check" # no testsuite
pkgusers="netbox"
pkggroups="netbox"
source="$pkgname-$pkgver.tar.gz::https://github.com/digitalocean/netbox/archive/v$pkgver.tar.gz
	gunicorn_config.py
	netbox.nginx-sample
	$pkgname.initd
	$pkgname.logrotated
	set-config-defaults.patch
	"
builddir="$srcdir"/$pkgname-$pkgver

build() {
	return 0
}

package() {
	cd "$builddir"
	local destdir=usr/share/webapps
	local conffile=etc/$pkgname/configuration.py
	mkdir -p "$pkgdir"/$destdir \
		"$pkgdir"/usr/share/doc \
		"$pkgdir"/etc/$pkgname
	mv $pkgname "$pkgdir"/$destdir
	mkdir -p "$pkgdir"/$destdir/$pkgname/static
	mv docs "$pkgdir"/usr/share/doc/$pkgname
	mv "$pkgdir"/$destdir/$pkgname/$pkgname/configuration.example.py \
		"$pkgdir"/$conffile

	# in order to install the static files we need a working config file
	# and temporarily set minimum settings in config file
	ln -s "$pkgdir"/$conffile \
		"$pkgdir"/$destdir/$pkgname/$pkgname/configuration.py
	sed -i "s/SECRET_KEY.*/SECRET_KEY = \'abcdefghk123456789\'/" \
		"$pkgdir"/$conffile

	# install static files
	python3 "$pkgdir"/$destdir/$pkgname/manage.py collectstatic --noinput --clear --link
	# let's move instead of linking static files originating from netbox
	local dir; for dir in "$pkgdir"/$destdir/$pkgname/project-static/*; do
		rm -rf "$pkgdir"/$destdir/$pkgname/static/$(basename $dir)
		mv $dir "$pkgdir"/$destdir/$pkgname/static
	done

	install -m644 "$srcdir"/gunicorn_config.py "$pkgdir"/$destdir/$pkgname
	install -D -m644 "$srcdir"/netbox.nginx-sample "$pkgdir"/etc/nginx/netbox.sample
	install -D -m755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
	install -D -m644 "$srcdir"/$pkgname.logrotated "$pkgdir"/etc/logrotate.d/$pkgname
	install -d -m755 -o netbox -g netbox "$pkgdir"/var/lib/$pkgname/media

	# undo temp stuff
	ln -sf /$conffile "$pkgdir"/$destdir/$pkgname/$pkgname/configuration.py
	sed -i "s/SECRET_KEY.*/SECRET_KEY = \'\'/" "$pkgdir"/$conffile
}

sha512sums="7f939ab5c25ddfbafb096773f944838b1bec7ceb4c0bedc70230c1ef9daec4163607ab0b693e6d6091bb9346a3ef820f3e3a7f94497467eac96ad8eb5429f794  netbox-2.3.1.tar.gz
09d8e40d98d113458ee602de85306ac1a24fbb0015fbc4bb77812dae05096cb7b9c50770f650fd2ac78a388f35d7752ce8021790e952234a39c8b3e73a4ea3db  gunicorn_config.py
b5c3dc0ad2ebaacf43dfa41880dc7d677a763a3fadf1ccd0a6a9ec744d1648ca72f6a55893d09fd843b399559e2411a98b0ded597669f18a34f305f5ccb57c06  netbox.nginx-sample
d4467109d803f42f8d9b088951d6123b9088f0069a4db280c2ca5e5a57bf746d1faa70d0f542154149e60f21891876f7c15da360e07eec8c8a36f5aac65509d3  netbox.initd
a87dd52264f5ea00dbb774e54332480615850aa0056e60e13963481e8390bee73ceb519873fa11d357a29911c4e34a30c4623f4c206f765af6e64f379314e5a8  netbox.logrotated
6b9eb0dcf8d5a267c3c88b81468d1fd7a7971cc084370a44f1ea5b61b08a30e9339f838e97947a0c65f385ed69fc5122592eca0ee5ff6e00cf5ec0f2dbe4c59f  set-config-defaults.patch"