diff options
author | Scott Murray <scott.murray@konsulko.com> | 2022-03-07 16:21:05 -0500 |
---|---|---|
committer | Jan-Simon Moeller <jsmoeller@linuxfoundation.org> | 2022-03-08 14:49:45 +0000 |
commit | 6cce1d8fcff72bd429a6f0aea23fc5666fd67878 (patch) | |
tree | 3d9992258a8877afcc5bb90a0def2706a83816ab /recipes-config | |
parent | 8e02ea4d58b42e6d1bad629399b25713e34e55e9 (diff) |
Restore cluster and telematics demo images
Changes:
- Restore the image recipes for the agl-cluster-demo-platform and
agl-telematics-demo-platform images, with updates to them and
their associated packagegroups for the app framework removal.
- Restore updated recipes required for the above, including:
* cluster-dashboard
* cluster-receiver
* qt-cluster-receiver
* tbtnavi
- Simple systemd unit files have been added for the cluster
applications and are installed as user session units. Starting
of cluster-dashboard (the XDG version) and cluster-receiver in
the AGL user session is enabled by default.
- The recipes to install the dedicated network configuration for
the cluster demo have been restored so that the
agl-cluster-demo-support and agl-demo-preload features will do
what is expected again.
Known outstanding issues:
- The previous signal-composer binding support has been removed
from cluster-dashboard, so related functionality (i.e. driving
it from CAN) is disabled until replacement is worked out.
- While tbtnavi builds, the previous use of the navigation binding
is stubbed out in libqtappfw, so it will not receive location
and route information from ondemandnavi.
- Nothing has been added yet to start tbtnavi in the AGL user
session, the plan is to do so with a systemd user unit once a
new mechanism for controlling it from ondemandnavi has been
implemented.
- The telematics-recorder application has not yet been updated
to replace its signal-composer, gps, and network binding use.
The intent is to address these issues in the 13.0.x point releases.
Bug-AGL: SPEC-4283
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Change-Id: I520c23775b21504cb7dd92538319cc5bf826ff64
Diffstat (limited to 'recipes-config')
3 files changed, 62 insertions, 0 deletions
diff --git a/recipes-config/cluster-demo-network-config/cluster-demo-network-config_1.0.bb b/recipes-config/cluster-demo-network-config/cluster-demo-network-config_1.0.bb new file mode 100644 index 000000000..8d737282d --- /dev/null +++ b/recipes-config/cluster-demo-network-config/cluster-demo-network-config_1.0.bb @@ -0,0 +1,33 @@ +SUMMARY = "Setting files for cluster network for the AGL Demonstrator" +DESCRIPTION = "Setting files for cluster network for the AGL Demonstrator" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +inherit systemd allarch + +SRC_URI = "file://cluster-demo-network-conf@.service \ + file://cluster-demo-network-conf.sh \ +" + +# Network device for dedicated connection to cluster +AGL_CLUSTER_NET_DEVICE ?= "eth1" + +do_configure[noexec] = "1" +do_compile[noexec] = "1" + +do_install() { + # Install helper script + install -d ${D}${sbindir} + install -m 0755 ${WORKDIR}/cluster-demo-network-conf.sh ${D}${sbindir}/ + + # Install service unit + install -d ${D}${systemd_system_unitdir} + install -m 0644 ${WORKDIR}/cluster-demo-network-conf@.service ${D}${systemd_system_unitdir}/ + + # Add symlink to network.target.wants + install -d ${D}${sysconfdir}/systemd/system/network.target.wants + ln -s ${systemd_system_unitdir}/cluster-demo-network-conf@.service \ + ${D}${sysconfdir}/systemd/system/network.target.wants/cluster-demo-network-conf@${AGL_CLUSTER_NET_DEVICE}.service +} + +FILES:${PN} += "${systemd_system_unitdir}" diff --git a/recipes-config/cluster-demo-network-config/files/cluster-demo-network-conf.sh b/recipes-config/cluster-demo-network-config/files/cluster-demo-network-conf.sh new file mode 100644 index 000000000..3f538175f --- /dev/null +++ b/recipes-config/cluster-demo-network-config/files/cluster-demo-network-conf.sh @@ -0,0 +1,17 @@ +#!/bin/sh + +CONNMAN_CONF=/etc/connman/main.conf +CLUSTER_ADDRESS=192.168.20.93 + +if [ -z "$1" ]; then + echo "Usage: $0 <network device>" + exit 1 +fi + +# Need to blacklist given device with connman if it isn't already, +# otherwise connman will over-ride address configuration. +if ! grep '^NetworkInterfaceBlacklist=' ${CONNMAN_CONF} | grep -q $1; then + sed -i "s/^\(NetworkInterfaceBlacklist=.*\)/\1,$1/" ${CONNMAN_CONF} +fi + +/sbin/ifconfig $1 ${CLUSTER_ADDRESS} diff --git a/recipes-config/cluster-demo-network-config/files/cluster-demo-network-conf@.service b/recipes-config/cluster-demo-network-config/files/cluster-demo-network-conf@.service new file mode 100644 index 000000000..5fc29b7a0 --- /dev/null +++ b/recipes-config/cluster-demo-network-config/files/cluster-demo-network-conf@.service @@ -0,0 +1,12 @@ +[Unit] +Description=Configure dedicated link for cluster demo network +After=sys-subsystem-net-devices-%i.device +Requires=sys-subsystem-net-devices-%i.device +Before=network.target + +[Service] +ExecStart=/usr/sbin/cluster-demo-network-conf.sh %i +Type=oneshot + +[Install] +WantedBy=network.target |