Fix Qt cluster demo images 74/30174/3
authorScott Murray <scott.murray@konsulko.com>
Thu, 15 Aug 2024 19:39:21 +0000 (15:39 -0400)
committerScott Murray <scott.murray@konsulko.com>
Sat, 17 Aug 2024 13:48:23 +0000 (13:48 +0000)
The rework of the demo images done for SPEC-5138 missed some things
for the Qt cluster demo images, so add the extra demo vs non-demo
configuration file for use in the "preconfigured" image, and update
the image recipes to get things work with respect to developer
expecations.

Additionally:
- The databroker access token for cluster-dashboard was out of date,
  a copy of the one for the Flutter cluster dashboard has been copied
  in to restore expected behavior.
- The Flutter cluster demo has also been tweaked slightly to match
  the style used in the other image recipes.

Bug-AGL: SPEC-5229

Change-Id: I8cc9cfb67c31ace95e6ac36e4259099223f7d802
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl-demo/+/30174
ci-image-build: Jenkins Job builder account
Tested-by: Jenkins Job builder account
ci-image-boot-test: Jenkins Job builder account
Reviewed-by: Naoto YAMAGUCHI <naoto.yamaguchi@aisin.co.jp>
recipes-demo/cluster-dashboard/cluster-dashboard/cluster-dashboard.conf.default [new file with mode: 0644]
recipes-demo/cluster-dashboard/cluster-dashboard/cluster-dashboard.conf.demo [moved from recipes-demo/cluster-dashboard/cluster-dashboard/cluster-dashboard.conf with 100% similarity]
recipes-demo/cluster-dashboard/cluster-dashboard/cluster-dashboard.token
recipes-demo/cluster-dashboard/cluster-dashboard_git.bb
recipes-platform/images/agl-cluster-demo-flutter.bb
recipes-platform/images/agl-cluster-demo-qt-preconfigured.bb
recipes-platform/images/agl-cluster-demo-qt.bb

diff --git a/recipes-demo/cluster-dashboard/cluster-dashboard/cluster-dashboard.conf.default b/recipes-demo/cluster-dashboard/cluster-dashboard/cluster-dashboard.conf.default
new file mode 100644 (file)
index 0000000..8d73b32
--- /dev/null
@@ -0,0 +1,2 @@
+[kuksa-client]
+authorization = "/etc/xdg/AGL/cluster-dashboard/cluster-dashboard.token"
index 770aadc..10fafb5 100644 (file)
@@ -1 +1 @@
-eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJrdWtzYS52YWwiLCJpc3MiOiJFY2xpcHNlIEtVS1NBIERldiIsImFkbWluIjp0cnVlLCJpYXQiOjE1MTYyMzkwMjIsImV4cCI6MTc2NzIyNTU5OSwia3Vrc2EtdnNzIjp7IioiOiJydyJ9fQ.QQcVR0RuRJIoasPXYsMGZhdvhLjUalk4GcRaxhh3-0_j3CtVSZ0lTbv_Z3As5BfIYzaMlwUzFGvCVOq2MXVjRK81XOAZ6wIsyKOxva16zjbZryr2V_m3yZ4twI3CPEzJch11_qnhInirHltej-tGg6ySfLaTYeAkw4xYGwENMBBhN5t9odANpScZP_xx5bNfwdW1so6FkV1WhpKlCywoxk_vYZxo187d89bbiu-xOZUa5D-ycFkd1-1rjPXLGE_g5bc4jcQBvNBc-5FDbvt4aJlTQqjpdeppxhxn_gjkPGIAacYDI7szOLC-WYajTStbksUju1iQCyli11kPx0E66me_ZVwOX07f1lRF6D2brWm1LcMAHM3bQUK0LuyVwWPxld64uSAEsvSKsRyJERc7nZUgLf7COnUrrkxgIUNjukbdT2JVN_I-3l3b4YXg6JVD7Y5g0QYBKgXEFpZrDbBVhzo7PXPAhJD6-c3DcUQyRZExbrnFV56RwWuExphw8lYnbMvxPWImiVmB9nRVgFKD0TYaw1sidPSSlZt8Uw34VZzHWIZQAQY0BMjR33fefg42XQ1YzIwPmDx4GYXLl7HNIIVbsRsibKaJnf49mz2qnLC1K272zXSPljO11Ke1MNnsnKyUH7mcwEs9nhTsnMgEOx_TyMLRYo-VEHBDLuEOiBo
\ No newline at end of file
+eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJsb2NhbCBkZXYiLCJpc3MiOiJjcmVhdGVUb2tlbi5weSIsImF1ZCI6WyJrdWtzYS52YWwiXSwiaWF0IjoxNTE2MjM5MDIyLCJleHAiOjE3NjcyMjU1OTksInNjb3BlIjoicmVhZCJ9.P6tJPRSJWB51UOFDFs8qQ-lGqb1NoWgCekHUKyMiYcs8sR3FGVKSRjSkcqv1tXOlILvqhUwyuTKui25_kFKkTPv47GI0xAqcXtaTmDwHAWZHFC6HWGWGXohu7XvURrim5kMRVHy_VGlzasGgVap0JFk3wmaY-nyFYL_PLDjvGjIQuOwFiUtKK1PfiKviZKyc5EzPUEAoHxFL_BSOsTdDDcaydFe9rSKJzpYrj7qXY0hMJCje2BUGlSUIttR95aSjOZflSxiGystWHME8fKMmDERAx749Jpt37M3taCxBsUzER5olPz65MGzFSikfC-jH_KGmJ4zNYS65_OM1a-CPfW7Ts__pyAXxFULNMHRMIfh8Wiig4UcooMy_ZJO_DN2rq95XdaBbzRua5mxvO2wM6iu5kv4lhNxhjVNGuWFRLLJ_icBUZlvAuC3eqp66B-Y3jJNI0cSnIvsVX8YFVS3ebW8tf40OdeVou8fWZPcQsFAAafBhIxNOW8FbLZ9sRvQ-FGwZy-GyF52IJ5ZKeGfAkeEh9ZLIcyJ2YlGp4q0EOKIdwIBsWfCFtZbAvi2ornO3XvJm94NBqprpvQYN_IB7yyRxDduLjNKqqcFqnrlWYI-ZhvghWH2rEblplgHZdyVD1G9Mbv0_zdNTKFs6J7IP96aV6-4hBOt3kROlS1G7ObA
\ No newline at end of file
index dd0e411..6c33d15 100644 (file)
@@ -19,14 +19,15 @@ PV = "1.0+git${SRCPV}"
 
 SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/agl-cluster-demo-dashboard;protocol=https;branch=${AGL_BRANCH} \
            file://cluster-dashboard.service \
-           file://cluster-dashboard.conf \
+           file://cluster-dashboard.conf.default \
+           file://cluster-dashboard.conf.demo \
            file://cluster-dashboard.token \
 "
 SRCREV  = "137144c447d8adb618f5acbcbafd65f50264d6eb"
 
 S  = "${WORKDIR}/git"
 
-inherit pkgconfig cmake_qt5 systemd
+inherit pkgconfig cmake_qt5 update-alternatives systemd
 
 CLUSTER_DEMO_VSS_HOSTNAME ??= "192.168.10.2"
 
@@ -40,11 +41,29 @@ do_install:append() {
     # until a packaging/sandboxing/MAC scheme is (re)implemented or
     # something like OAuth is plumbed in as an alternative.
     install -d ${D}${sysconfdir}/xdg/AGL/cluster-dashboard
-    install -m 0644 ${WORKDIR}/cluster-dashboard.conf ${D}${sysconfdir}/xdg/AGL/
-    sed -i "s/^server = .*/server = \"${CLUSTER_DEMO_VSS_HOSTNAME}\"/" ${D}${sysconfdir}/xdg/AGL/cluster-dashboard.conf
+    install -m 0644 ${WORKDIR}/cluster-dashboard.conf.default ${D}${sysconfdir}/xdg/AGL/
+    install -m 0644 ${WORKDIR}/cluster-dashboard.conf.demo ${D}${sysconfdir}/xdg/AGL/
     install -m 0644 ${WORKDIR}/cluster-dashboard.token ${D}${sysconfdir}/xdg/AGL/cluster-dashboard/
 }
 
+ALTERNATIVE_LINK_NAME[cluster-dashboard.conf] = "${sysconfdir}/xdg/AGL/cluster-dashboard.conf"
+
+PACKAGE_BEFORE_PN += "${PN}-conf"
+FILES:${PN}-conf += "${sysconfdir}/xdg/AGL/cluster-dashboard.conf.default"
+RDEPENDS:${PN}-conf = "${PN}"
+RPROVIDES:${PN}-conf = "cluster-dashboard.conf"
+ALTERNATIVE:${PN}-conf = "cluster-dashboard.conf"
+ALTERNATIVE_TARGET_${PN}-conf = "${sysconfdir}/xdg/AGL/cluster-dashboard.conf.default"
+
+PACKAGE_BEFORE_PN += "${PN}-conf-demo"
+FILES:${PN}-conf-demo += "${sysconfdir}/xdg/AGL/cluster-dashboard.conf.demo"
+RDEPENDS:${PN}-conf-demo = "${PN}"
+RPROVIDES:${PN}-conf-demo = "cluster-dashboard.conf"
+ALTERNATIVE:${PN}-conf-demo = "cluster-dashboard.conf"
+ALTERNATIVE_TARGET_${PN}-conf-demo = "${sysconfdir}/xdg/AGL/cluster-dashboard.conf.demo"
+
+# NOTE: Not currently used in KVM demo, so no extra configurations packaged here
+
 RDEPENDS:${PN} += " \
     qtwayland \
     qtbase-qmlplugins \
index dfa2562..1459893 100644 (file)
@@ -12,6 +12,10 @@ IMAGE_FEATURES += " \
     kuksa-val-databroker \
 "
 
+AGL_DEVEL_INSTALL = " \
+    simple-can-simulator \
+"
+
 # Generic
 IMAGE_INSTALL += "\
     weston-ini-conf-landscape \
@@ -19,7 +23,7 @@ IMAGE_INSTALL += "\
     packagegroup-agl-networking \
     cluster-receiver \
     \
-    simple-can-simulator \
+    ${@bb.utils.contains("DISTRO_FEATURES", "agl-devel", "${AGL_DEVEL_INSTALL}" , "", d)} \
 "
 
 # Flutter
index c993406..8d295b9 100644 (file)
@@ -12,6 +12,8 @@ IMAGE_INSTALL:remove = "weston-terminal-conf"
 # default compositor configuration needs to be replaced.
 IMAGE_INSTALL:remove = "weston-ini-conf-landscape"
 
+QT_CLUSTER_DASHBOARD_CONF = "cluster-dashboard-conf-demo"
+
 IMAGE_INSTALL += " \
     cluster-demo-config \
     weston-ini-conf-landscape-inverted \
index 03dfb36..225fe32 100644 (file)
@@ -16,10 +16,20 @@ IMAGE_FEATURES += " \
     kuksa-val-databroker \
 "
 
+# Set up for testing with the databroker when using agl-devel
+AGL_DEVEL_INSTALL = " \
+    cluster-demo-config \
+    simple-can-simulator \
+"
+
+QT_CLUSTER_DASHBOARD_CONF = "cluster-dashboard-conf"
+
 # add packages for cluster demo platform (include demo apps) here
 IMAGE_INSTALL += " \
     packagegroup-agl-cluster-demo-platform \
+    ${QT_CLUSTER_DASHBOARD_CONF} \
     kuksa-certificates-agl-ca \
     weston-ini-conf-landscape \
+    ${@bb.utils.contains("DISTRO_FEATURES", "agl-devel", "${AGL_DEVEL_INSTALL}" , "", d)} \
     ${@bb.utils.contains("AGL_FEATURES", "AGLCI", "qemu-set-display", "", d)} \
 "