summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPatrick Vacek <patrickvacek@gmail.com>2018-06-12 09:57:37 +0200
committerPatrick Vacek <patrickvacek@gmail.com>2018-06-12 10:23:29 +0200
commit8cf40b82f9e7eb6850290700f9f011d77f3a99c8 (patch)
treea4ff86029b9da89abc26908b554e41829533b6c9
parent9e9daab4cecdc69ee0d0020d130811f1608549d0 (diff)
downloadmeta-updater-8cf40b82f9e7eb6850290700f9f011d77f3a99c8.tar.gz
aktualizr-*-prov: read config files from STAGING_DIR_HOST.
STAGING_DIR_NATIVE does not get populated as I had previously believed. Native recipes do not get packaged, so although we want to use a native executable, we need to get the config files from the aktualizr-host-tools package built by the aktualizr (target) recipe. Thanks to Andre McCurdy and Khem Raj for insight on how to get this right.
-rw-r--r--lib/oeqa/selftest/cases/updater.py12
-rw-r--r--recipes-sota/aktualizr/aktualizr-ca-implicit-prov.bb7
-rw-r--r--recipes-sota/aktualizr/aktualizr-hsm-prov.bb7
-rw-r--r--recipes-sota/aktualizr/aktualizr-implicit-prov.bb7
4 files changed, 15 insertions, 18 deletions
diff --git a/lib/oeqa/selftest/cases/updater.py b/lib/oeqa/selftest/cases/updater.py
index 0253a84..83a45fb 100644
--- a/lib/oeqa/selftest/cases/updater.py
+++ b/lib/oeqa/selftest/cases/updater.py
@@ -115,8 +115,8 @@ class AktualizrToolsTests(OESelftestTestCase):
115 bb_vars = get_bb_vars(['SOTA_PACKED_CREDENTIALS', 'T'], 'aktualizr-native') 115 bb_vars = get_bb_vars(['SOTA_PACKED_CREDENTIALS', 'T'], 'aktualizr-native')
116 creds = bb_vars['SOTA_PACKED_CREDENTIALS'] 116 creds = bb_vars['SOTA_PACKED_CREDENTIALS']
117 temp_dir = bb_vars['T'] 117 temp_dir = bb_vars['T']
118 bb_vars_prov = get_bb_vars(['STAGING_DIR_NATIVE', 'libdir'], 'aktualizr-implicit-prov') 118 bb_vars_prov = get_bb_vars(['STAGING_DIR_HOST', 'libdir'], 'aktualizr-implicit-prov')
119 config = bb_vars_prov['STAGING_DIR_NATIVE'] + bb_vars_prov['libdir'] + '/sota/sota_implicit_prov.toml' 119 config = bb_vars_prov['STAGING_DIR_HOST'] + bb_vars_prov['libdir'] + '/sota/sota_implicit_prov.toml'
120 120
121 akt_native_run(self, 'aktualizr_cert_provider -c {creds} -r -l {temp} -g {config}' 121 akt_native_run(self, 'aktualizr_cert_provider -c {creds} -r -l {temp} -g {config}'
122 .format(creds=creds, temp=temp_dir, config=config)) 122 .format(creds=creds, temp=temp_dir, config=config))
@@ -392,8 +392,8 @@ class ImplProvTests(OESelftestTestCase):
392 # Run cert_provider. 392 # Run cert_provider.
393 bb_vars = get_bb_vars(['SOTA_PACKED_CREDENTIALS'], 'aktualizr-native') 393 bb_vars = get_bb_vars(['SOTA_PACKED_CREDENTIALS'], 'aktualizr-native')
394 creds = bb_vars['SOTA_PACKED_CREDENTIALS'] 394 creds = bb_vars['SOTA_PACKED_CREDENTIALS']
395 bb_vars_prov = get_bb_vars(['STAGING_DIR_NATIVE', 'libdir'], 'aktualizr-implicit-prov') 395 bb_vars_prov = get_bb_vars(['STAGING_DIR_HOST', 'libdir'], 'aktualizr-implicit-prov')
396 config = bb_vars_prov['STAGING_DIR_NATIVE'] + bb_vars_prov['libdir'] + '/sota/sota_implicit_prov.toml' 396 config = bb_vars_prov['STAGING_DIR_HOST'] + bb_vars_prov['libdir'] + '/sota/sota_implicit_prov.toml'
397 397
398 akt_native_run(self, 'aktualizr_cert_provider -c {creds} -t root@localhost -p {port} -s -g {config}' 398 akt_native_run(self, 'aktualizr_cert_provider -c {creds} -t root@localhost -p {port} -s -g {config}'
399 .format(creds=creds, port=self.qemu.ssh_port, config=config)) 399 .format(creds=creds, port=self.qemu.ssh_port, config=config))
@@ -473,8 +473,8 @@ class HsmTests(OESelftestTestCase):
473 # Run cert_provider. 473 # Run cert_provider.
474 bb_vars = get_bb_vars(['SOTA_PACKED_CREDENTIALS'], 'aktualizr-native') 474 bb_vars = get_bb_vars(['SOTA_PACKED_CREDENTIALS'], 'aktualizr-native')
475 creds = bb_vars['SOTA_PACKED_CREDENTIALS'] 475 creds = bb_vars['SOTA_PACKED_CREDENTIALS']
476 bb_vars_prov = get_bb_vars(['STAGING_DIR_NATIVE', 'libdir'], 'aktualizr-hsm-prov') 476 bb_vars_prov = get_bb_vars(['STAGING_DIR_HOST', 'libdir'], 'aktualizr-hsm-prov')
477 config = bb_vars_prov['STAGING_DIR_NATIVE'] + bb_vars_prov['libdir'] + '/sota/sota_hsm_prov.toml' 477 config = bb_vars_prov['STAGING_DIR_HOST'] + bb_vars_prov['libdir'] + '/sota/sota_hsm_prov.toml'
478 478
479 akt_native_run(self, 'aktualizr_cert_provider -c {creds} -t root@localhost -p {port} -r -s -g {config}' 479 akt_native_run(self, 'aktualizr_cert_provider -c {creds} -t root@localhost -p {port} -r -s -g {config}'
480 .format(creds=creds, port=self.qemu.ssh_port, config=config)) 480 .format(creds=creds, port=self.qemu.ssh_port, config=config))
diff --git a/recipes-sota/aktualizr/aktualizr-ca-implicit-prov.bb b/recipes-sota/aktualizr/aktualizr-ca-implicit-prov.bb
index 4d5ff79..e00d41a 100644
--- a/recipes-sota/aktualizr/aktualizr-ca-implicit-prov.bb
+++ b/recipes-sota/aktualizr/aktualizr-ca-implicit-prov.bb
@@ -9,8 +9,7 @@ SECTION = "base"
9LICENSE = "MPL-2.0" 9LICENSE = "MPL-2.0"
10LIC_FILES_CHKSUM = "file://${WORKDIR}/LICENSE;md5=9741c346eef56131163e13b9db1241b3" 10LIC_FILES_CHKSUM = "file://${WORKDIR}/LICENSE;md5=9741c346eef56131163e13b9db1241b3"
11 11
12DEPENDS = "aktualizr-native openssl-native" 12DEPENDS = "aktualizr aktualizr-native openssl-native"
13RDEPENDS_${PN} = "aktualizr"
14 13
15SRC_URI = " \ 14SRC_URI = " \
16 file://LICENSE \ 15 file://LICENSE \
@@ -52,7 +51,7 @@ do_install() {
52 fi 51 fi
53 52
54 install -m 0700 -d ${D}${localstatedir}/sota 53 install -m 0700 -d ${D}${localstatedir}/sota
55 install -m 0644 ${STAGING_DIR_NATIVE}${libdir}/sota/sota_implicit_prov_ca.toml \ 54 install -m 0644 ${STAGING_DIR_HOST}${libdir}/sota/sota_implicit_prov_ca.toml \
56 ${D}${libdir}/sota/conf.d/20-sota_implicit_prov_ca.toml 55 ${D}${libdir}/sota/conf.d/20-sota_implicit_prov_ca.toml
57 aktualizr_cert_provider --credentials ${SOTA_PACKED_CREDENTIALS} \ 56 aktualizr_cert_provider --credentials ${SOTA_PACKED_CREDENTIALS} \
58 --device-ca ${SOTA_CACERT_PATH} \ 57 --device-ca ${SOTA_CACERT_PATH} \
@@ -60,7 +59,7 @@ do_install() {
60 --root-ca \ 59 --root-ca \
61 --server-url \ 60 --server-url \
62 --local ${D}${localstatedir}/sota \ 61 --local ${D}${localstatedir}/sota \
63 --config ${STAGING_DIR_NATIVE}${libdir}/sota/sota_implicit_prov_ca.toml 62 --config ${STAGING_DIR_HOST}${libdir}/sota/sota_implicit_prov_ca.toml
64} 63}
65 64
66FILES_${PN} = " \ 65FILES_${PN} = " \
diff --git a/recipes-sota/aktualizr/aktualizr-hsm-prov.bb b/recipes-sota/aktualizr/aktualizr-hsm-prov.bb
index d526cd2..98bed94 100644
--- a/recipes-sota/aktualizr/aktualizr-hsm-prov.bb
+++ b/recipes-sota/aktualizr/aktualizr-hsm-prov.bb
@@ -5,8 +5,7 @@ SECTION = "base"
5LICENSE = "MPL-2.0" 5LICENSE = "MPL-2.0"
6LIC_FILES_CHKSUM = "file://${WORKDIR}/LICENSE;md5=9741c346eef56131163e13b9db1241b3" 6LIC_FILES_CHKSUM = "file://${WORKDIR}/LICENSE;md5=9741c346eef56131163e13b9db1241b3"
7 7
8DEPENDS = "aktualizr-native" 8DEPENDS = "aktualizr aktualizr-native"
9RDEPENDS_${PN} = "aktualizr"
10 9
11SRC_URI = " \ 10SRC_URI = " \
12 file://LICENSE \ 11 file://LICENSE \
@@ -19,11 +18,11 @@ require credentials.inc
19 18
20do_install() { 19do_install() {
21 install -m 0700 -d ${D}${libdir}/sota/conf.d 20 install -m 0700 -d ${D}${libdir}/sota/conf.d
22 install -m 0644 ${STAGING_DIR_NATIVE}${libdir}/sota/sota_hsm_prov.toml \ 21 install -m 0644 ${STAGING_DIR_HOST}${libdir}/sota/sota_hsm_prov.toml \
23 ${D}${libdir}/sota/conf.d/20-sota_hsm_prov.toml 22 ${D}${libdir}/sota/conf.d/20-sota_hsm_prov.toml
24 if [ -n "${SOTA_PACKED_CREDENTIALS}" ]; then 23 if [ -n "${SOTA_PACKED_CREDENTIALS}" ]; then
25 aktualizr_implicit_writer -c ${SOTA_PACKED_CREDENTIALS} --no-root-ca \ 24 aktualizr_implicit_writer -c ${SOTA_PACKED_CREDENTIALS} --no-root-ca \
26 -i ${STAGING_DIR_NATIVE}${libdir}/sota/sota_hsm_prov.toml \ 25 -i ${STAGING_DIR_HOST}${libdir}/sota/sota_hsm_prov.toml \
27 -o ${D}${libdir}/sota/conf.d/30-implicit_server.toml -p ${D} 26 -o ${D}${libdir}/sota/conf.d/30-implicit_server.toml -p ${D}
28 fi 27 fi
29} 28}
diff --git a/recipes-sota/aktualizr/aktualizr-implicit-prov.bb b/recipes-sota/aktualizr/aktualizr-implicit-prov.bb
index e08eeef..85212de 100644
--- a/recipes-sota/aktualizr/aktualizr-implicit-prov.bb
+++ b/recipes-sota/aktualizr/aktualizr-implicit-prov.bb
@@ -5,8 +5,7 @@ SECTION = "base"
5LICENSE = "MPL-2.0" 5LICENSE = "MPL-2.0"
6LIC_FILES_CHKSUM = "file://${WORKDIR}/LICENSE;md5=9741c346eef56131163e13b9db1241b3" 6LIC_FILES_CHKSUM = "file://${WORKDIR}/LICENSE;md5=9741c346eef56131163e13b9db1241b3"
7 7
8DEPENDS = "aktualizr-native" 8DEPENDS = "aktualizr aktualizr-native"
9RDEPENDS_${PN} = "aktualizr"
10 9
11SRC_URI = " \ 10SRC_URI = " \
12 file://LICENSE \ 11 file://LICENSE \
@@ -19,11 +18,11 @@ require credentials.inc
19 18
20do_install() { 19do_install() {
21 install -m 0700 -d ${D}${libdir}/sota/conf.d 20 install -m 0700 -d ${D}${libdir}/sota/conf.d
22 install -m 0644 ${STAGING_DIR_NATIVE}${libdir}/sota/sota_implicit_prov.toml \ 21 install -m 0644 ${STAGING_DIR_HOST}${libdir}/sota/sota_implicit_prov.toml \
23 ${D}${libdir}/sota/conf.d/20-sota_implicit_prov.toml 22 ${D}${libdir}/sota/conf.d/20-sota_implicit_prov.toml
24 if [ -n "${SOTA_PACKED_CREDENTIALS}" ]; then 23 if [ -n "${SOTA_PACKED_CREDENTIALS}" ]; then
25 aktualizr_implicit_writer -c ${SOTA_PACKED_CREDENTIALS} \ 24 aktualizr_implicit_writer -c ${SOTA_PACKED_CREDENTIALS} \
26 -i ${STAGING_DIR_NATIVE}${libdir}/sota/sota_implicit_prov.toml \ 25 -i ${STAGING_DIR_HOST}${libdir}/sota/sota_implicit_prov.toml \
27 -o ${D}${libdir}/sota/conf.d/30-implicit_server.toml -p ${D} 26 -o ${D}${libdir}/sota/conf.d/30-implicit_server.toml -p ${D}
28 fi 27 fi
29} 28}