summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorcajun-rat <p@beta16.co.uk>2017-05-26 10:08:39 +0200
committerGitHub <noreply@github.com>2017-05-26 10:08:39 +0200
commit6eef5801f5db9338c10d36cec0a98d90275cc7d3 (patch)
tree7555665ecc38743f0a9dcaf899ad6e89d8eaf701
parent0bba62210d1f4d91b1e36f13d5669b606a8fabc6 (diff)
parent1c53ba362775c6f658406ab3f2333cdee260de79 (diff)
downloadmeta-updater-6eef5801f5db9338c10d36cec0a98d90275cc7d3.tar.gz
Merge pull request #68 from advancedtelematic/feat/manual-prov-aktualizr
Support Aktualizr in manual-provisioning mode
-rw-r--r--classes/image_types_ota.bbclass2
-rw-r--r--recipes-sota/aktualizr/aktualizr_git.bb32
-rw-r--r--recipes-sota/aktualizr/files/aktualizr-manual-provision.service13
3 files changed, 38 insertions, 9 deletions
diff --git a/classes/image_types_ota.bbclass b/classes/image_types_ota.bbclass
index cb71899..306a3c0 100644
--- a/classes/image_types_ota.bbclass
+++ b/classes/image_types_ota.bbclass
@@ -99,6 +99,8 @@ IMAGE_CMD_otaimg () {
99 tar --xattrs --xattrs-include='*' -C ${HOME_TMP} -xf ${DEPLOY_DIR_IMAGE}/${IMAGE_LINK_NAME}.rootfs.ostree.tar.bz2 ./usr/homedirs ./var/sota || true 99 tar --xattrs --xattrs-include='*' -C ${HOME_TMP} -xf ${DEPLOY_DIR_IMAGE}/${IMAGE_LINK_NAME}.rootfs.ostree.tar.bz2 ./usr/homedirs ./var/sota || true
100 mv ${HOME_TMP}/var/sota ${PHYS_SYSROOT}/ostree/deploy/${OSTREE_OSNAME}/var/ || true 100 mv ${HOME_TMP}/var/sota ${PHYS_SYSROOT}/ostree/deploy/${OSTREE_OSNAME}/var/ || true
101 mv ${HOME_TMP}/usr/homedirs/home ${PHYS_SYSROOT}/ || true 101 mv ${HOME_TMP}/usr/homedirs/home ${PHYS_SYSROOT}/ || true
102 # Ensure that /var/local exists (AGL symlinks /usr/local to /var/local)
103 install -d ${PHYS_SYSROOT}/ostree/deploy/${OSTREE_OSNAME}/var/local
102 rm -rf ${HOME_TMP} 104 rm -rf ${HOME_TMP}
103 105
104 # Calculate image type 106 # 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"
2DESCRIPTION = "SOTA Client application written in C++" 2DESCRIPTION = "SOTA Client application written in C++"
3HOMEPAGE = "https://github.com/advancedtelematic/aktualizr" 3HOMEPAGE = "https://github.com/advancedtelematic/aktualizr"
4SECTION = "base" 4SECTION = "base"
5
6LICENSE = "MPL-2.0" 5LICENSE = "MPL-2.0"
7LIC_FILES_CHKSUM = "file://${S}/LICENSE;md5=9741c346eef56131163e13b9db1241b3" 6LIC_FILES_CHKSUM = "file://${S}/LICENSE;md5=9741c346eef56131163e13b9db1241b3"
7DEPENDS = "boost curl openssl jansson libsodium ostree"
8SRCREV = "4e9344ae375a444f02b964dca52fe808010d17df"
9PV = "1.0+git${SRCPV}"
8 10
9inherit cmake systemd 11SRC_URI = " \
12 git://github.com/advancedtelematic/aktualizr \
13 file://aktualizr-manual-provision.service \
14 "
10 15
11S = "${WORKDIR}/git" 16S = "${WORKDIR}/git"
12PV = "1.0+git${SRCPV}" 17SYSTEMD_SERVICE_${PN} = "aktualizr.service"
13 18
14SRCREV = "4e9344ae375a444f02b964dca52fe808010d17df" 19inherit cmake systemd
15 20
16SRC_URI = "git://github.com/advancedtelematic/aktualizr" 21EXTRA_OECMAKE = "-DWARNING_AS_ERROR=OFF -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTS=OFF -DBUILD_OSTREE=ON"
17 22
18DEPENDS = "boost curl openssl jansson libsodium ostree" 23export SOTA_AUTOPROVISION_CREDENTIALS
19RDEPENDS = ""
20 24
21EXTRA_OECMAKE = "-DWARNING_AS_ERROR=OFF -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTS=OFF -DBUILD_OSTREE=ON" 25do_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
34RDEPENDS = ""
22 35
23FILES_${PN} = " \ 36FILES_${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]
2Description=Aktualizr SOTA Client
3Wants=network-online.target
4After=network.target network-online.target
5Requires=network-online.target
6
7[Service]
8RestartSec=10
9Restart=always
10ExecStart=/usr/bin/aktualizr --config /sysroot/boot/sota.toml --loglevel 2
11
12[Install]
13WantedBy=multi-user.target