attendedsysupgrade-common: add package 5104/head
authorPaul Spooren <paul@spooren.de>
Sun, 5 Nov 2017 17:45:44 +0000 (18:45 +0100)
committerPaul Spooren <paul@spooren.de>
Sun, 12 Nov 2017 00:10:09 +0000 (01:10 +0100)
due to various clients and the existence of rpcd-mod-rpcsys the package
rpcd-mod-attendedsysupgrade is superflous.

From now on the attendedsysupgrade-common package should be dependencie
of all kinds of clients.

Currently active or planned:
- luci-app-attendedsysupgrade
- attendedsysupgrade cli in shell
- attendedsysupgrade cli in c

Signed-off-by: Paul Spooren <paul@spooren.de>
utils/attendedsysupgrade-common/Makefile [new file with mode: 0644]
utils/attendedsysupgrade-common/files/attendedsysupgrade.defaults [new file with mode: 0644]
utils/rpcd-mod-attendedsysupgrade/Makefile [deleted file]
utils/rpcd-mod-attendedsysupgrade/files/attendedsysupgrade.acl [deleted file]
utils/rpcd-mod-attendedsysupgrade/files/attendedsysupgrade.defaults [deleted file]
utils/rpcd-mod-attendedsysupgrade/files/attendedsysupgrade.rpcd [deleted file]

diff --git a/utils/attendedsysupgrade-common/Makefile b/utils/attendedsysupgrade-common/Makefile
new file mode 100644 (file)
index 0000000..2594dfc
--- /dev/null
@@ -0,0 +1,56 @@
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=attendedsysupgrade-common
+PKG_VERSION:=0.1
+PKG_RELEASE:=1
+PKG_LICENSE:=GPL-2.0
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/attendedsysupgrade-common
+  SECTION:=utils
+  CATEGORY:=Base system
+  TITLE:=Common files neede by attendedsysupgrade packages
+  MAINTAINER:=Paul Spooren <paul@spooren.de>
+  DEPENDS:=rpcd +rpcd-mod-rpcsys +rpcd-mod-packagelist
+endef
+
+define Package/attendedsysupgrade-common/description
+       Common needed files for attendedsysupgrade tool
+
+       Manages dependencies and brings settings used by clients.
+
+       UCI options:
+
+       attendedsysupgrade.server.url
+       URL of compatible upgrade server [1]
+
+       attendedsysupgrade.client.upgrade_packages
+       Client should request image also if no new release but new packages upgrade are available.
+
+       attendedsysupgrade.client.advanced_mode
+       Offer advanced options like editing packages before request and show additional information.
+
+       attendedsysupgrade.client.auto_search
+       Tells the client to automattically search for upgrades
+       This can be done when opening luci or login in to console - depends on client.
+
+       [1]: https://github.com/aparcar/gsoc17-attended-sysupgrade
+endef
+
+define Build/Compile
+endef
+
+define Build/Configure
+endef
+
+define Package/attendedsysupgrade-common/install
+       $(INSTALL_DIR) $(1)/etc/uci-defaults/
+       $(INSTALL_BIN) ./files/attendedsysupgrade.defaults $(1)/etc/uci-defaults/attendedsysupgrade
+endef
+
+$(eval $(call BuildPackage,attendedsysupgrade-common))
diff --git a/utils/attendedsysupgrade-common/files/attendedsysupgrade.defaults b/utils/attendedsysupgrade-common/files/attendedsysupgrade.defaults
new file mode 100644 (file)
index 0000000..f7fb1eb
--- /dev/null
@@ -0,0 +1,17 @@
+#!/bin/sh
+
+[ -e /etc/config/attendedsysupgrade ] && return 0
+
+touch /etc/config/attendedsysupgrade
+
+uci -q batch <<EOF
+set attendedsysupgrade.server=server
+set attendedsysupgrade.server.url='https://example.org'
+
+set attendedsysupgrade.client=client
+set attendedsysupgrade.client.upgrade_packages='1'
+set attendedsysupgrade.client.auto_search='0'
+set attendedsysupgrade.client.advanced_mode='0'
+
+commit attendedsysupgrade
+EOF
diff --git a/utils/rpcd-mod-attendedsysupgrade/Makefile b/utils/rpcd-mod-attendedsysupgrade/Makefile
deleted file mode 100644 (file)
index 4cde4dd..0000000
+++ /dev/null
@@ -1,73 +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:=rpcd-mod-attendedsysupgrade
-PKG_VERSION:=1.1
-PKG_RELEASE:=2
-PKG_LICENSE:=GPL-2.0
-
-include $(INCLUDE_DIR)/package.mk
-
-define Package/rpcd-mod-attendedsysupgrade
-  SECTION:=utils
-  CATEGORY:=Base system
-  TITLE:=OpenWrt ubus RPC backend server (attendedsysupgrade)
-  MAINTAINER:=Paul Spooren <paul@spooren.de>
-  DEPENDS:=rpcd +cgi-io +rpcd-mod-packagelist
-endef
-
-define Package/rpcd-mod-attendedsysupgrade/description
-       Implements a sysupgrade procedure which can be used to invoke sysupgrade via ubus calls
-       The     sysupgrade image must be placed at /tmp/sysupgrade.bin
-       After a successfull installation the device will perform a restart.
-
-       Usage:
-
-       ubus call attendedsysupgrade sysupgrade
-
-       Example output:
-
-       {
-               "message": "starting sysupgrade"
-       }
-
-       Possible parameters:
-
-       keep_settings: bool # preserve /config/
-
-       UCI options:
-
-       attendedsysupgrade.server.url
-       URL of compatible upgrade server [1]
-
-       attendedsysupgrade.client.upgrade_packages
-       Client should request image also if no new release but new packages upgrade are available.
-
-       attendedsysupgrade.client.advanced_mode
-       Offer advanced options like editing packages before request and show additional information.
-
-       attendedsysupgrade.client.auto_search
-       Tells the client to automattically search for upgrades
-       This can be done when opening luci or login in to console - depends on client.
-
-       [1]: https://github.com/aparcar/gsoc17-attended-sysupgrade
-endef
-
-define Build/Compile
-endef
-
-define Build/Configure
-endef
-
-define Package/rpcd-mod-attendedsysupgrade/install
-       $(INSTALL_DIR) $(1)/usr/libexec/rpcd/
-       $(INSTALL_BIN) ./files/attendedsysupgrade.rpcd $(1)/usr/libexec/rpcd/attendedsysupgrade
-
-       $(INSTALL_DIR) $(1)/etc/uci-defaults/
-       $(INSTALL_BIN) ./files/attendedsysupgrade.defaults $(1)/etc/uci-defaults/attendedsysupgrade
-endef
-
-$(eval $(call BuildPackage,rpcd-mod-attendedsysupgrade))
diff --git a/utils/rpcd-mod-attendedsysupgrade/files/attendedsysupgrade.acl b/utils/rpcd-mod-attendedsysupgrade/files/attendedsysupgrade.acl
deleted file mode 100644 (file)
index fdb05b7..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-{
-       "attendedsysupgrade": {
-               "description": "attended sysupgrade via rpcd",
-               "read": {
-                       "ubus": {
-                               "attendedsysupgrade": [
-                                       "sysupgrade"
-                               ], 
-                               "system": [
-                                       "board"
-                               ],
-                               "uci": [ 
-                                       "get" 
-                               ]
-                       },
-                       "uci": [ 
-                               "*" 
-                       ]
-               },
-               "write": {
-                       "cgi-io": [
-                               "upload"
-                       ]
-               }
-       }
-}
diff --git a/utils/rpcd-mod-attendedsysupgrade/files/attendedsysupgrade.defaults b/utils/rpcd-mod-attendedsysupgrade/files/attendedsysupgrade.defaults
deleted file mode 100644 (file)
index f7fb1eb..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/bin/sh
-
-[ -e /etc/config/attendedsysupgrade ] && return 0
-
-touch /etc/config/attendedsysupgrade
-
-uci -q batch <<EOF
-set attendedsysupgrade.server=server
-set attendedsysupgrade.server.url='https://example.org'
-
-set attendedsysupgrade.client=client
-set attendedsysupgrade.client.upgrade_packages='1'
-set attendedsysupgrade.client.auto_search='0'
-set attendedsysupgrade.client.advanced_mode='0'
-
-commit attendedsysupgrade
-EOF
diff --git a/utils/rpcd-mod-attendedsysupgrade/files/attendedsysupgrade.rpcd b/utils/rpcd-mod-attendedsysupgrade/files/attendedsysupgrade.rpcd
deleted file mode 100755 (executable)
index d538620..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-#!/bin/sh
-
-. /usr/share/libubox/jshn.sh
-
-case "$1" in
-       list)
-               json_init
-               json_add_object "sysupgrade"
-               json_add_boolean "keep_settings" 1
-               json_close_object
-               json_dump
-               ;;
-       call)
-               case "$2" in
-                       sysupgrade)
-                               read input;
-                               json_load "$input"
-                               json_get_var keep_settings keep_settings
-
-                               if [ -f "/tmp/sysupgrade.bin" ]; then
-                                       json_init
-                                       json_add_string "message" "starting sysupgrade"
-                                       json_dump
-
-                                       /etc/init.d/uhttpd stop
-                                       /etc/init.d/dropbear stop
-                                       sleep 1;
-                                       if [ "$keep_settings" -eq "0" ]; then
-                                               keep_settings_param="-n"
-                                       fi
-                                       /sbin/sysupgrade $keep_settings_param /tmp/sysupgrade.bin
-                               fi
-                               json_init
-                               json_add_string "message" "could not find /tmp/sysupgrade.bin"
-                               json_dump
-               esac
-               ;;
-esac
-