This package wasn't updated since forever, I'll pack it in a container for easier installation but don't want to maintain it as an OpenWrt package. Signed-off-by: Paul Spooren <mail@aparcar.org>lilik-openwrt-22.03
@ -1,56 +0,0 @@ | |||||
# This is free software, licensed under the GNU General Public License v2. | |||||
# See /LICENSE for more information. | |||||
# | |||||
include $(TOPDIR)/rules.mk | |||||
PKG_NAME:=asu | |||||
PKG_VERSION:=0.2.3 | |||||
PKG_RELEASE:=3 | |||||
PKG_LICENSE:=GPL-3.0 | |||||
PYPI_NAME:=$(PKG_NAME) | |||||
PKG_HASH:=e60027cd531cc5b9b20d3321acc06fdf0cdd894004919800575b8235343ba8ef | |||||
PKG_BUILD_DEPENDS:=python3 | |||||
include ../../lang/python/pypi.mk | |||||
include $(INCLUDE_DIR)/package.mk | |||||
include ../../lang/python/python3-package.mk | |||||
IMAGEBUILDER_DEPENDS:= \ | |||||
@x86_64 +bash +bzip2 +coreutils +coreutils-stat +diffutils +file \ | |||||
+gawk +gcc +getopt +git +git-http +libncurses +make +patch +perl \ | |||||
+perlbase-attributes +perlbase-findbin +perlbase-getopt \ | |||||
+perlbase-thread +python3-light +tar +unzip +wget +xz +xzdiff \ | |||||
+xzgrep +xzless +xz-utils +zlib-dev | |||||
define Package/asu | |||||
SECTION:=devel | |||||
CATEGORY:=Development | |||||
TITLE:=attended sysupgrade image server | |||||
MAINTAINER:=Paul Spooren <paul@spooren.de> | |||||
URL:=http://github.com/aparcar/gsoc17-attended-sysupgrade/ | |||||
DEPENDS:=$(IMAGEBUILDER_DEPENDS) +pgsql-server +psqlodbcw \ | |||||
+python3-ctypes +python3-distutils +python3-flask \ | |||||
+gunicorn3 +python3-openssl +python3-pyodbc +python3-yaml \ | |||||
+libustream-mbedtls +ca-certificates +gnupg | |||||
USERID:=asu:asu | |||||
endef | |||||
define Package/asu/description | |||||
Build server to deliver OpenWrt/LEDE sysupgrade images | |||||
endef | |||||
define Py3Package/asu/install | |||||
$(INSTALL_DIR) $(1)/etc/uci-defaults | |||||
$(INSTALL_BIN) ./files/asu.defaults $(1)/etc/uci-defaults/99-asu | |||||
$(INSTALL_DIR) $(1)/etc/init.d | |||||
$(INSTALL_BIN) ./files/asu.init $(1)/etc/init.d/asu | |||||
$(INSTALL_DIR) $(1)/etc/asu | |||||
$(INSTALL_CONF) $(PKG_BUILD_DIR)/asu/utils/config.yml.default $(1)/etc/asu/config.yml | |||||
endef | |||||
$(eval $(call Py3Package,asu)) | |||||
$(eval $(call BuildPackage,asu)) |
@ -1,22 +0,0 @@ | |||||
#!/bin/sh | |||||
asu_password=$(dd if=/dev/urandom bs=16 count=1 2>/dev/null | sha256sum | cut -d' ' -f1) | |||||
asu_tables="$(ls -1 /usr/lib/python*/site-packages/asu/utils/tables.sql | head -n 1)" | |||||
uci -q batch <<EOF | |||||
del postgresql.asu | |||||
set postgresql.asu=postgres-db | |||||
set postgresql.asu.name=asu | |||||
set postgresql.asu.user=asu | |||||
set postgresql.asu.pass='$asu_password' | |||||
set postgresql.asu.script='$asu_tables' | |||||
commit postgresql | |||||
EOF | |||||
sed -i "s/database_user.*/database_user: asu/" /etc/asu/config.yml | |||||
sed -i "s/database_pass.*/database_pass: $asu_password/" /etc/asu/config.yml | |||||
cp -r /usr/lib/python*/site-packages/asu/utils/distributions /etc/asu/ | |||||
chown -R root:asu /etc/asu | |||||
chmod -R g+rX /etc/asu |
@ -1,40 +0,0 @@ | |||||
#!/bin/sh /etc/rc.common | |||||
START=99 | |||||
STOP=01 | |||||
USE_PROCD=1 | |||||
PROG=/usr/bin/flask | |||||
start_service() { | |||||
. /lib/functions/postgresql.sh | |||||
local pgdata=$(uci get postgresql.config.PGDATA) | |||||
local i=0 | |||||
while ! pg_server_ready "$pgdata"; do | |||||
sleep 1 | |||||
[ $((i++)) -gt 30 ] && return 1 | |||||
done | |||||
i=0 | |||||
while ! pg_test_db asu asu; do | |||||
sleep 1 | |||||
[ $((i++)) -gt 30 ] && return 1 | |||||
done | |||||
FLASK_APP=asu $PROG loaddb | |||||
procd_open_instance asu_main | |||||
procd_set_param user asu | |||||
procd_set_param group asu | |||||
procd_set_param command gunicorn3 asu:app | |||||
procd_close_instance | |||||
procd_open_instance main_worker | |||||
procd_set_param user asu | |||||
procd_set_param group asu | |||||
procd_set_param env FLASK_APP=asu | |||||
procd_set_param command $PROG run_worker | |||||
procd_close_instance | |||||
} |