package/mender-connect: new package
mender-connect is a daemon responsible for handling bidirectional (websocket) communication with the Mender server. The daemon is responsible for implementing a range of troubleshooting features to the device as well as several enhancement to the mender-client. Signed-off-by: Adam Duskett <aduskett@gmail.com> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
This commit is contained in:
parent
5691b74f4c
commit
d9ef4fb315
@ -2569,6 +2569,7 @@ menu "System tools"
|
||||
source "package/lxc/Config.in"
|
||||
source "package/makedumpfile/Config.in"
|
||||
source "package/mender/Config.in"
|
||||
source "package/mender-connect/Config.in"
|
||||
source "package/mender-grubenv/Config.in"
|
||||
source "package/mfoc/Config.in"
|
||||
source "package/moby-buildkit/Config.in"
|
||||
|
33
package/mender-connect/Config.in
Normal file
33
package/mender-connect/Config.in
Normal file
@ -0,0 +1,33 @@
|
||||
config BR2_PACKAGE_MENDER_CONNECT
|
||||
bool "mender-connect"
|
||||
depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS
|
||||
depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS
|
||||
depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2, mender
|
||||
depends on BR2_USE_WCHAR # libglib2 -> gettext
|
||||
depends on BR2_USE_MMU # dbus -> fork()
|
||||
select BR2_PACKAGE_DBUS # runtime
|
||||
select BR2_PACKAGE_LIBGLIB2
|
||||
select BR2_PACKAGE_MENDER # runtime
|
||||
select BR2_PACKAGE_OPENSSL
|
||||
help
|
||||
mender-connect is a daemon responsible for handling
|
||||
bidirectional (websocket) communication with the Mender
|
||||
server. The daemon is responsible for implementing a range of
|
||||
troubleshooting features to the device as well as several
|
||||
enhancement to the mender-client.
|
||||
|
||||
Mender Connect is loosely coupled with the Mender Client. The
|
||||
main information passed between mender-client and
|
||||
mender-connect is the device authorization status. Since only
|
||||
accepted devices can interact with the Mender Server, the
|
||||
Mender Client passes over DBus the authorization token which
|
||||
Mender Connect uses to establish a Websocket connection to the
|
||||
server.
|
||||
|
||||
https://github.com/mendersoftware/mender-connect
|
||||
|
||||
comment "mender-connect needs a toolchain w/ threads, wchar"
|
||||
depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS
|
||||
depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS
|
||||
depends on BR2_USE_MMU
|
||||
depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR
|
53
package/mender-connect/S43mender-connect
Normal file
53
package/mender-connect/S43mender-connect
Normal file
@ -0,0 +1,53 @@
|
||||
#!/bin/sh
|
||||
DAEMON="mender-connect"
|
||||
DAEMON_PATH="/usr/bin/mender-connect"
|
||||
PIDFILE="/var/run/${DAEMON}.pid"
|
||||
|
||||
MENDER_CONNECT_ARGS=""
|
||||
|
||||
# shellcheck source=/dev/null
|
||||
[ -r "/etc/default/$DAEMON" ] && . "/etc/default/$DAEMON"
|
||||
|
||||
start() {
|
||||
printf 'Starting %s: ' "${DAEMON}"
|
||||
umask 077
|
||||
# shellcheck disable=SC2086 # we need the word splitting
|
||||
start-stop-daemon -bmSqp "$PIDFILE" -x ${DAEMON_PATH} \
|
||||
-- -daemon ${DAEMON_ARGS}
|
||||
status=$?
|
||||
if [ "$status" -eq 0 ]; then
|
||||
echo "OK"
|
||||
else
|
||||
echo "FAIL"
|
||||
fi
|
||||
return "$status"
|
||||
}
|
||||
|
||||
stop() {
|
||||
printf 'Stopping %s: ' "${DAEMON}"
|
||||
start-stop-daemon -K -q -p "$PIDFILE"
|
||||
status=$?
|
||||
if [ "$status" -eq 0 ]; then
|
||||
echo "OK"
|
||||
else
|
||||
echo "FAIL"
|
||||
fi
|
||||
return "$status"
|
||||
}
|
||||
|
||||
restart() {
|
||||
stop
|
||||
sleep 1
|
||||
start
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start|stop|restart)
|
||||
"$1";;
|
||||
reload)
|
||||
# Restart, since there is no true "reload" feature.
|
||||
restart;;
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|restart|reload}"
|
||||
exit 1
|
||||
esac
|
34
package/mender-connect/mender-connect.hash
Normal file
34
package/mender-connect/mender-connect.hash
Normal file
@ -0,0 +1,34 @@
|
||||
# Locally computed:
|
||||
sha256 6410bcd76cebd21e9f18fe5768928d67163e4bb2b6ae76d0e20815400d907657 mender-connect-2.0.2.tar.gz
|
||||
sha256 78b3954421ec6499c3f9735b96d52288574ae80c747416a52548d7f526f26e8c LIC_FILES_CHKSUM.sha256
|
||||
|
||||
# Vendor licenses
|
||||
# Generated with sed '/^[A-Za-z0-9_]/s/^/sha256 /' LIC_FILES_CHKSUM.sha256
|
||||
|
||||
#
|
||||
# Apache-2.0
|
||||
sha256 1033348db7606a7e61b6484f293847cf8d7a35766efebb97e304d4bd5d7f3f6b LICENSE
|
||||
sha256 3eb823230e5d112e1bd032ccc82ae765cf676d0d6d46a1a1daa2d658b3005b67 vendor/github.com/mendersoftware/go-lib-micro/LICENSE
|
||||
#
|
||||
# BSD-2-Clause
|
||||
sha256 2be1b548b0387ca8948e1bb9434e709126904d15f622cc2d0d8e7f186e4d122d vendor/github.com/gorilla/websocket/LICENSE
|
||||
sha256 8d427fd87bc9579ea368fde3d49f9ca22eac857f91a9dec7e3004bdfab7dee86 vendor/github.com/pkg/errors/LICENSE
|
||||
sha256 1530185dd39cdde7cb2f786a7a5fcf8bc34368b6ae73c15e72bafe88fd80b9a2 vendor/github.com/vmihailenco/msgpack/v5/LICENSE
|
||||
sha256 0f02aac22084ef463aa5f42f566feeec6aa4c99653519744a8c25cb079da5b5d vendor/github.com/vmihailenco/tagparser/v2/LICENSE
|
||||
#
|
||||
# BSD-3-Clause
|
||||
sha256 2eb550be6801c1ea434feba53bf6d12e7c71c90253e0a9de4a4f46cf88b56477 vendor/github.com/pmezard/go-difflib/LICENSE
|
||||
sha256 2d36597f7117c38b006835ae7f537487207d8ec407aa9d9980794b2030cbc067 vendor/golang.org/x/sys/LICENSE
|
||||
#
|
||||
# ISC
|
||||
sha256 1b93a317849ee09d3d7e4f1d20c2b78ddb230b4becb12d7c224c927b9d470251 vendor/github.com/davecgh/go-spew/LICENSE
|
||||
#
|
||||
# MIT
|
||||
sha256 a2a1cea59d9c2d71908082f516f86bb560abf857646ecf69d70c121ead14aef4 vendor/github.com/creack/pty/LICENSE
|
||||
sha256 caa932df46551b53643952fe03b351d55db97be73b5393b986dcf6b05d3c416a vendor/github.com/go-ozzo/ozzo-validation/v4/LICENSE
|
||||
sha256 92a328e1d5f3269b42e2ce32b4494eafdb3132f204a911c5c95cf3d8465490e4 vendor/github.com/satori/go.uuid/LICENSE
|
||||
sha256 51a0c9ec7f8b7634181b8d4c03e5b5d204ac21d6e72f46c313973424664b2e6b vendor/github.com/sirupsen/logrus/LICENSE
|
||||
sha256 b2663894033a05fd80261176cd8da1d72546e25842d5c1abcc852ca23b6b61b0 vendor/github.com/stretchr/objx/LICENSE
|
||||
sha256 f8e536c1c7b695810427095dc85f5f80d44ff7c10535e8a9486cf393e2599189 vendor/github.com/stretchr/testify/LICENSE
|
||||
sha256 da277af11b85227490377fbcac6afccc68be560c4fff36ac05ca62de55345fd7 vendor/github.com/urfave/cli/v2/LICENSE
|
||||
sha256 d18f6323b71b0b768bb5e9616e36da390fbd39369a81807cca352de4e4e6aa0b vendor/gopkg.in/yaml.v3/LICENSE
|
59
package/mender-connect/mender-connect.mk
Normal file
59
package/mender-connect/mender-connect.mk
Normal file
@ -0,0 +1,59 @@
|
||||
################################################################################
|
||||
#
|
||||
# mender-connect
|
||||
#
|
||||
################################################################################
|
||||
|
||||
MENDER_CONNECT_VERSION = 2.0.2
|
||||
MENDER_CONNECT_SITE = $(call github,mendersoftware,mender-connect,$(MENDER_CONNECT_VERSION))
|
||||
MENDER_CONNECT_LICENSE = Apache-2.0, BSD-2-Clause, BSD-3-Clause, ISC, MIT
|
||||
|
||||
# Vendor license paths generated with:
|
||||
# awk '{print $2}' LIC_FILES_CHKSUM.sha256 | grep vendor
|
||||
MENDER_CONNECT_LICENSE_FILES = \
|
||||
LIC_FILES_CHKSUM.sha256 \
|
||||
LICENSE \
|
||||
vendor/github.com/mendersoftware/go-lib-micro/LICENSE \
|
||||
vendor/github.com/gorilla/websocket/LICENSE \
|
||||
vendor/github.com/pkg/errors/LICENSE \
|
||||
vendor/github.com/vmihailenco/msgpack/v5/LICENSE \
|
||||
vendor/github.com/vmihailenco/tagparser/v2/LICENSE \
|
||||
vendor/github.com/pmezard/go-difflib/LICENSE \
|
||||
vendor/golang.org/x/sys/LICENSE \
|
||||
vendor/github.com/davecgh/go-spew/LICENSE \
|
||||
vendor/github.com/creack/pty/LICENSE \
|
||||
vendor/github.com/go-ozzo/ozzo-validation/v4/LICENSE \
|
||||
vendor/github.com/satori/go.uuid/LICENSE \
|
||||
vendor/github.com/sirupsen/logrus/LICENSE \
|
||||
vendor/github.com/stretchr/objx/LICENSE \
|
||||
vendor/github.com/stretchr/testify/LICENSE \
|
||||
vendor/github.com/urfave/cli/v2/LICENSE \
|
||||
vendor/gopkg.in/yaml.v3/LICENSE
|
||||
|
||||
MENDER_CONNECT_DEPENDENCIES = \
|
||||
dbus \
|
||||
libglib2 \
|
||||
mender \
|
||||
openssl
|
||||
|
||||
MENDER_CONNECT_LDFLAGS = -X github.com/mendersoftware/mender-connect/config.Version=$(MENDER_CONNECT_VERSION)
|
||||
|
||||
define MENDER_CONNECT_INSTALL_CONFIG_FILES
|
||||
$(INSTALL) -d -m 755 $(TARGET_DIR)/etc/mender
|
||||
|
||||
$(INSTALL) -D -m 0644 $(@D)/examples/mender-connect.conf \
|
||||
$(TARGET_DIR)/etc/mender/mender-connect.conf
|
||||
endef
|
||||
MENDER_CONNECT_POST_INSTALL_TARGET_HOOKS += MENDER_CONNECT_INSTALL_CONFIG_FILES
|
||||
|
||||
define MENDER_CONNECT_INSTALL_INIT_SYSTEMD
|
||||
$(INSTALL) -D -m 0644 $(@D)/support/mender-connect.service \
|
||||
$(TARGET_DIR)/usr/lib/systemd/system/mender-connect.service
|
||||
endef
|
||||
|
||||
define MENDER_CONNECT_INSTALL_INIT_SYSV
|
||||
$(INSTALL) -D -m 0755 $(MENDER_CONNECT_PKGDIR)/S43mender-connect \
|
||||
$(TARGET_DIR)/etc/init.d/S43mender-connect
|
||||
endef
|
||||
|
||||
$(eval $(golang-package))
|
Loading…
Reference in New Issue
Block a user