diff options
-rw-r--r-- | classes/image_types_ota.bbclass | 2 | ||||
-rw-r--r-- | recipes-sota/aktualizr/aktualizr_git.bb | 32 | ||||
-rw-r--r-- | recipes-sota/aktualizr/files/aktualizr-manual-provision.service | 13 |
3 files changed, 38 insertions, 9 deletions
diff --git a/classes/image_types_ota.bbclass b/classes/image_types_ota.bbclass index c5f3c85..8108d51 100644 --- a/classes/image_types_ota.bbclass +++ b/classes/image_types_ota.bbclass | |||
@@ -101,6 +101,8 @@ IMAGE_CMD_otaimg () { | |||
101 | # Create /var/sota if it doesn't exist yet | 101 | # Create /var/sota if it doesn't exist yet |
102 | mkdir -p ${PHYS_SYSROOT}/ostree/deploy/${OSTREE_OSNAME}/var/sota || true | 102 | mkdir -p ${PHYS_SYSROOT}/ostree/deploy/${OSTREE_OSNAME}/var/sota || true |
103 | mv ${HOME_TMP}/usr/homedirs/home ${PHYS_SYSROOT}/ || true | 103 | mv ${HOME_TMP}/usr/homedirs/home ${PHYS_SYSROOT}/ || true |
104 | # Ensure that /var/local exists (AGL symlinks /usr/local to /var/local) | ||
105 | install -d ${PHYS_SYSROOT}/ostree/deploy/${OSTREE_OSNAME}/var/local | ||
104 | rm -rf ${HOME_TMP} | 106 | rm -rf ${HOME_TMP} |
105 | 107 | ||
106 | # Calculate image type | 108 | # Calculate image type |
diff --git a/recipes-sota/aktualizr/aktualizr_git.bb b/recipes-sota/aktualizr/aktualizr_git.bb index e8a1a5e..fa71af8 100644 --- a/recipes-sota/aktualizr/aktualizr_git.bb +++ b/recipes-sota/aktualizr/aktualizr_git.bb | |||
@@ -2,24 +2,38 @@ SUMMARY = "Aktualizr SOTA Client" | |||
2 | DESCRIPTION = "SOTA Client application written in C++" | 2 | DESCRIPTION = "SOTA Client application written in C++" |
3 | HOMEPAGE = "https://github.com/advancedtelematic/aktualizr" | 3 | HOMEPAGE = "https://github.com/advancedtelematic/aktualizr" |
4 | SECTION = "base" | 4 | SECTION = "base" |
5 | |||
6 | LICENSE = "MPL-2.0" | 5 | LICENSE = "MPL-2.0" |
7 | LIC_FILES_CHKSUM = "file://${S}/LICENSE;md5=9741c346eef56131163e13b9db1241b3" | 6 | LIC_FILES_CHKSUM = "file://${S}/LICENSE;md5=9741c346eef56131163e13b9db1241b3" |
7 | DEPENDS = "boost curl openssl jansson libsodium ostree" | ||
8 | SRCREV = "4e9344ae375a444f02b964dca52fe808010d17df" | ||
9 | PV = "1.0+git${SRCPV}" | ||
8 | 10 | ||
9 | inherit cmake systemd | 11 | SRC_URI = " \ |
12 | git://github.com/advancedtelematic/aktualizr \ | ||
13 | file://aktualizr-manual-provision.service \ | ||
14 | " | ||
10 | 15 | ||
11 | S = "${WORKDIR}/git" | 16 | S = "${WORKDIR}/git" |
12 | PV = "1.0+git${SRCPV}" | 17 | SYSTEMD_SERVICE_${PN} = "aktualizr.service" |
13 | 18 | ||
14 | SRCREV = "4e9344ae375a444f02b964dca52fe808010d17df" | 19 | inherit cmake systemd |
15 | 20 | ||
16 | SRC_URI = "git://github.com/advancedtelematic/aktualizr" | 21 | EXTRA_OECMAKE = "-DWARNING_AS_ERROR=OFF -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTS=OFF -DBUILD_OSTREE=ON" |
17 | 22 | ||
18 | DEPENDS = "boost curl openssl jansson libsodium ostree" | 23 | export SOTA_AUTOPROVISION_CREDENTIALS |
19 | RDEPENDS = "" | ||
20 | 24 | ||
21 | EXTRA_OECMAKE = "-DWARNING_AS_ERROR=OFF -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTS=OFF -DBUILD_OSTREE=ON" | 25 | do_install_append() { |
26 | if [ -n "$SOTA_AUTOPROVISION_CREDENTIALS" ]; then | ||
27 | bbwarn "Aktualizr recipe currently lacks support for SOTA_AUTOPROVISION_CREDENTIALS. No systemd service will be created" | ||
28 | else | ||
29 | install -d ${D}/${systemd_unitdir}/system | ||
30 | install -m 0644 ${WORKDIR}/aktualizr-manual-provision.service ${D}/${systemd_unitdir}/system/aktualizr.service | ||
31 | fi | ||
32 | } | ||
33 | |||
34 | RDEPENDS = "" | ||
22 | 35 | ||
23 | FILES_${PN} = " \ | 36 | FILES_${PN} = " \ |
24 | ${bindir}/aktualizr \ | 37 | ${bindir}/aktualizr \ |
25 | " | 38 | ${systemd_unitdir}/system/aktualizr.service \ |
39 | " | ||
diff --git a/recipes-sota/aktualizr/files/aktualizr-manual-provision.service b/recipes-sota/aktualizr/files/aktualizr-manual-provision.service new file mode 100644 index 0000000..a70f2f9 --- /dev/null +++ b/recipes-sota/aktualizr/files/aktualizr-manual-provision.service | |||
@@ -0,0 +1,13 @@ | |||
1 | [Unit] | ||
2 | Description=Aktualizr SOTA Client | ||
3 | Wants=network-online.target | ||
4 | After=network.target network-online.target | ||
5 | Requires=network-online.target | ||
6 | |||
7 | [Service] | ||
8 | RestartSec=10 | ||
9 | Restart=always | ||
10 | ExecStart=/usr/bin/aktualizr --config /sysroot/boot/sota.toml --loglevel 2 | ||
11 | |||
12 | [Install] | ||
13 | WantedBy=multi-user.target | ||