On 9/23/20 6:37 PM, Michael Olbrich wrote:
> On Wed, Sep 23, 2020 at 01:39:34PM +0200, Bastian Krause wrote:
>> Signed-off-by: Bastian Krause <[email protected]>
>> ---
>>  .../etc/rauc-hawkbit-updater/config.conf      | 43 +++++++++++
>>  rules/rauc-hawkbit-updater.in                 | 15 ++++
>>  rules/rauc-hawkbit-updater.make               | 72 +++++++++++++++++++
>>  3 files changed, 130 insertions(+)
>>  create mode 100644 projectroot/etc/rauc-hawkbit-updater/config.conf
>>  create mode 100644 rules/rauc-hawkbit-updater.in
>>  create mode 100644 rules/rauc-hawkbit-updater.make
>>
>> diff --git a/projectroot/etc/rauc-hawkbit-updater/config.conf 
>> b/projectroot/etc/rauc-hawkbit-updater/config.conf
>> new file mode 100644
>> index 000000000..a1dfa97ef
>> --- /dev/null
>> +++ b/projectroot/etc/rauc-hawkbit-updater/config.conf
>> @@ -0,0 +1,43 @@
>> +[client]
>> +# host or IP and optional port
>> +hawkbit_server            = 10.10.0.254:8080
>> +
>> +# true = HTTPS, false = HTTP
>> +ssl                       = false
>> +
>> +# validate ssl certificate (only use if ssl is true)
>> +ssl_verify                = false
>> +
>> +# Tenant id
>> +tenant_id                 = DEFAULT
>> +
>> +# Target name (controller id)
>> +target_name               = test-target
>> +
>> +# Security token
>> +auth_token                = cb115a721af28f781b493fa467819ef5
> 
> What is this token for? Does it matter if everybody just used this default
> value? Because if this just works then it probably won't be changed.

This configuration is just the sample configuration [1]. It won't work
as is. To make the auth token method work (as opposed to the commented
gateway_token method) you need to create a target via the hawkBit web UI
or management API. During this step hawkBit generates a unique
auth_token which must be set as auth_token here.

I've merely added the config to the package to make rauc-hawkbit-updater
run (admittedly querying a probably inexistent instance of hawkBit at
10.10.0.254:8080 with a invalid auth_token). This should allow BSPs to
ship their own config including a valid hawkbit_server and auth_token or
switching to gateway_token mode.

[1]
https://github.com/rauc/rauc-hawkbit-updater/blob/master/config.conf.example

> 
>> +
>> +# Or gateway_token can be used instead of auth_token
>> +#gateway_token             = cb115a721af28f781b493fa467819ef5
>> +
>> +# Temporay file RAUC bundle should be downloaded to
>> +bundle_download_location  = /tmp/bundle.raucb
>> +
>> +# time in seconds to wait before retrying
>> +retry_wait                = 60
>> +
>> +# connection timeout in seconds
>> +connect_timeout           = 20
>> +
>> +# request timeout in seconds
>> +timeout                   = 60
>> +
>> +# debug, info, message, critical, error, fatal
>> +log_level                 = message
>> +
>> +# Every key / value under [device] is sent to HawkBit (target attributes),
>> +# and can be used in target filter.
>> +[device]
>> +mac_address               = ff:ff:ff:ff:ff:ff
>> +hw_revision               = 2
>> +model                     = T1
>> diff --git a/rules/rauc-hawkbit-updater.in b/rules/rauc-hawkbit-updater.in
>> new file mode 100644
>> index 000000000..ff8d157a6
>> --- /dev/null
>> +++ b/rules/rauc-hawkbit-updater.in
>> @@ -0,0 +1,15 @@
>> +## SECTION=applications
>> +
>> +config RAUC_HAWKBIT_UPDATER
>> +    tristate
>> +    prompt "rauc-hawkbit-updater"
>> +    select HOST_CMAKE
>> +    select DBUS
>> +    select JSON_GLIB
>> +    select LIBCURL
>> +    select LIBCURL_HTTP
>> +    select LIBCURL_SSL
>> +    select RAUC
>> +    select RAUC_SERVICE
>> +    help
>> +      Daemon operating as an interface between the RAUC D-Bus API and the 
>> hawkBit DDI API.
>> diff --git a/rules/rauc-hawkbit-updater.make 
>> b/rules/rauc-hawkbit-updater.make
>> new file mode 100644
>> index 000000000..354fb8150
>> --- /dev/null
>> +++ b/rules/rauc-hawkbit-updater.make
>> @@ -0,0 +1,72 @@
>> +# -*-makefile-*-
>> +#
>> +# Copyright (C) 2020 by Bastian Krause <[email protected]>
>> +#
>> +# For further information about the PTXdist project and license conditions
>> +# see the README file.
>> +#
>> +
>> +#
>> +# We provide this package
>> +#
>> +PACKAGES-$(PTXCONF_RAUC_HAWKBIT_UPDATER) += rauc-hawkbit-updater
>> +
>> +#
>> +# Paths and names
>> +#
>> +RAUC_HAWKBIT_UPDATER_VERSION                := 2020-09-09-gb38f5a5
>> +RAUC_HAWKBIT_UPDATER_MD5            := c2accd9bdcab813dbf9850e6ed63085e
>> +RAUC_HAWKBIT_UPDATER                        := 
>> rauc-hawkbit-updater-$(RAUC_HAWKBIT_UPDATER_VERSION)
>> +RAUC_HAWKBIT_UPDATER_SUFFIX         := tar.gz
>> +RAUC_HAWKBIT_UPDATER_URL            := 
>> https://github.com/rauc/rauc-hawkbit-updater/archive/$(RAUC_HAWKBIT_UPDATER).$(RAUC_HAWKBIT_UPDATER_SUFFIX)
>> +RAUC_HAWKBIT_UPDATER_SOURCE         := 
>> $(SRCDIR)/$(RAUC_HAWKBIT_UPDATER).$(RAUC_HAWKBIT_UPDATER_SUFFIX)
>> +RAUC_HAWKBIT_UPDATER_DIR            := $(BUILDDIR)/$(RAUC_HAWKBIT_UPDATER)
>> +RAUC_HAWKBIT_UPDATER_LICENSE                := LGPL-2.1-or-later
>> +RAUC_HAWKBIT_UPDATER_LICENSE_FILES  := 
>> file://LICENSE;md5=1a6d268fd218675ffea8be556788b780
>> +
>> +# 
>> ----------------------------------------------------------------------------
>> +# Prepare
>> +# 
>> ----------------------------------------------------------------------------
>> +
>> +#
>> +# cmake
>> +#
>> +RAUC_HAWKBIT_UPDATER_CONF_TOOL      := cmake
>> +RAUC_HAWKBIT_UPDATER_CONF_OPT       := \
>> +    $(CROSS_CMAKE_USR) \
>> +    -DWITH_SYSTEMD=$(call ptx/onoff,PTXCONF_INITMETHOD_SYSTEMD) \
>> +    -DBUILD_DOC=OFF \
>> +    -DQA_BUILD=ON \
>> +    --with-systemdsystemunitdir=/usr/lib/systemd/system
>> +
>> +# 
>> ----------------------------------------------------------------------------
>> +# Target-Install
>> +# 
>> ----------------------------------------------------------------------------
>> +
>> +$(STATEDIR)/rauc-hawkbit-updater.targetinstall:
>> +    @$(call targetinfo)
>> +
>> +    @$(call install_init, rauc-hawkbit-updater)
>> +    @$(call install_fixup, rauc-hawkbit-updater,PRIORITY,optional)
>> +    @$(call install_fixup, rauc-hawkbit-updater,SECTION,base)
>> +    @$(call install_fixup, rauc-hawkbit-updater,AUTHOR,"Bastian Krause 
>> <[email protected]>")
>> +    @$(call install_fixup, rauc-hawkbit-updater,DESCRIPTION,missing)
>> +
>> +    @$(call install_copy, rauc-hawkbit-updater, 0, 0, 0755, -, \
>> +            /usr/bin/rauc-hawkbit-updater)
>> +
>> +    @$(call install_alternative, rauc-hawkbit-updater, 0, 0, 0644, \
>> +            /etc/rauc-hawkbit-updater/config.conf)
>> +
>> +ifdef PTXCONF_INITMETHOD_SYSTEMD
> 
> You should have a package option here.

Will do.

Regards,
Bastian

> 
> Michael
> 
>> +    @$(call install_alternative, rauc-hawkbit-updater, 0, 0, 0644, \
>> +            /usr/lib/systemd/system/rauc-hawkbit-updater.service)
>> +    @$(call install_link, rauc-hawkbit-updater, 
>> ../rauc-hawkbit-updater.service, \
>> +            
>> /usr/lib/systemd/system/multi-user.target.wants/rauc-hawkbit-updater.service)
>> +endif
>> +
>> +    @$(call install_finish, rauc-hawkbit-updater)
>> +
>> +    @$(call touch)
>> +
>> +# vim: syntax=make
>> -- 
>> 2.28.0
>>
>>
>> _______________________________________________
>> ptxdist mailing list
>> [email protected]
>> To unsubscribe, send a mail with subject "unsubscribe" to 
>> [email protected]
>>
> 


-- 
Pengutronix e.K.                           |                             |
Steuerwalder Str. 21                       | http://www.pengutronix.de/  |
31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

_______________________________________________
ptxdist mailing list
[email protected]
To unsubscribe, send a mail with subject "unsubscribe" to 
[email protected]

Reply via email to