diff options
-rw-r--r-- | classes/image_types_ostree.bbclass | 28 | ||||
-rw-r--r-- | classes/image_types_ota.bbclass | 14 | ||||
-rw-r--r-- | classes/sota_sanity.bbclass | 23 | ||||
-rw-r--r-- | recipes-core/images/initramfs-ostree-image.bb | 2 | ||||
-rw-r--r-- | recipes-extended/collectd/collectd_%.bbappend | 5 | ||||
-rw-r--r-- | recipes-sota/aktualizr/aktualizr-collectd.bb | 21 | ||||
-rw-r--r-- | recipes-sota/aktualizr/aktualizr-shared-prov.bb | 2 | ||||
-rw-r--r-- | recipes-sota/aktualizr/aktualizr_git.bb | 12 | ||||
-rw-r--r-- | recipes-sota/aktualizr/files/aktualizr-collectd.conf | 9 | ||||
-rw-r--r-- | recipes-sota/aktualizr/files/aktualizr.service | 3 | ||||
-rw-r--r-- | recipes-sota/config/aktualizr-binary-pacman.bb | 21 | ||||
-rw-r--r-- | recipes-sota/config/files/10-pacman.toml | 2 | ||||
-rw-r--r-- | recipes-support/boost/boost_1.72.0.bbappend | 4 | ||||
-rw-r--r-- | recipes-support/boost/files/0001-add-typedef-executor_type.patch | 56 |
14 files changed, 107 insertions, 95 deletions
diff --git a/classes/image_types_ostree.bbclass b/classes/image_types_ostree.bbclass index a8a6c39..051dcf9 100644 --- a/classes/image_types_ostree.bbclass +++ b/classes/image_types_ostree.bbclass | |||
@@ -10,6 +10,7 @@ OSTREE_COMMIT_BODY ??= "" | |||
10 | OSTREE_COMMIT_VERSION ??= "${DISTRO_VERSION}" | 10 | OSTREE_COMMIT_VERSION ??= "${DISTRO_VERSION}" |
11 | OSTREE_UPDATE_SUMMARY ??= "0" | 11 | OSTREE_UPDATE_SUMMARY ??= "0" |
12 | OSTREE_DEPLOY_DEVICETREE ??= "0" | 12 | OSTREE_DEPLOY_DEVICETREE ??= "0" |
13 | OSTREE_DEVICETREE ??= "${KERNEL_DEVICETREE}" | ||
13 | 14 | ||
14 | BUILD_OSTREE_TARBALL ??= "1" | 15 | BUILD_OSTREE_TARBALL ??= "1" |
15 | 16 | ||
@@ -141,9 +142,9 @@ IMAGE_CMD_ostree () { | |||
141 | checksum=$(sha256sum ${DEPLOY_DIR_IMAGE}/${OSTREE_KERNEL} | cut -f 1 -d " ") | 142 | checksum=$(sha256sum ${DEPLOY_DIR_IMAGE}/${OSTREE_KERNEL} | cut -f 1 -d " ") |
142 | touch boot/initramfs-${checksum} | 143 | touch boot/initramfs-${checksum} |
143 | else | 144 | else |
144 | if [ "${OSTREE_DEPLOY_DEVICETREE}" = "1" ] && [ -n "${KERNEL_DEVICETREE}" ]; then | 145 | if [ ${@ oe.types.boolean('${OSTREE_DEPLOY_DEVICETREE}')} = True ] && [ -n "${OSTREE_DEVICETREE}" ]; then |
145 | checksum=$(cat ${DEPLOY_DIR_IMAGE}/${OSTREE_KERNEL} ${DEPLOY_DIR_IMAGE}/${INITRAMFS_IMAGE}-${MACHINE}.${INITRAMFS_FSTYPES} ${KERNEL_DEVICETREE} | sha256sum | cut -f 1 -d " ") | 146 | checksum=$(cat ${DEPLOY_DIR_IMAGE}/${OSTREE_KERNEL} ${DEPLOY_DIR_IMAGE}/${INITRAMFS_IMAGE}-${MACHINE}.${INITRAMFS_FSTYPES} ${OSTREE_DEVICETREE} | sha256sum | cut -f 1 -d " ") |
146 | for DTS_FILE in ${KERNEL_DEVICETREE}; do | 147 | for DTS_FILE in ${OSTREE_DEVICETREE}; do |
147 | DTS_FILE_BASENAME=$(basename ${DTS_FILE}) | 148 | DTS_FILE_BASENAME=$(basename ${DTS_FILE}) |
148 | cp ${DEPLOY_DIR_IMAGE}/${DTS_FILE_BASENAME} boot/devicetree-${DTS_FILE_BASENAME}-${checksum} | 149 | cp ${DEPLOY_DIR_IMAGE}/${DTS_FILE_BASENAME} boot/devicetree-${DTS_FILE_BASENAME}-${checksum} |
149 | done | 150 | done |
@@ -168,25 +169,20 @@ IMAGE_CMD_ostreecommit () { | |||
168 | fi | 169 | fi |
169 | 170 | ||
170 | # Commit the result | 171 | # Commit the result |
171 | ostree --repo=${OSTREE_REPO} commit \ | 172 | ostree_target_hash=$(ostree --repo=${OSTREE_REPO} commit \ |
172 | --tree=dir=${OSTREE_ROOTFS} \ | 173 | --tree=dir=${OSTREE_ROOTFS} \ |
173 | --skip-if-unchanged \ | 174 | --skip-if-unchanged \ |
174 | --branch=${OSTREE_BRANCHNAME} \ | 175 | --branch=${OSTREE_BRANCHNAME} \ |
175 | --subject="${OSTREE_COMMIT_SUBJECT}" \ | 176 | --subject="${OSTREE_COMMIT_SUBJECT}" \ |
176 | --body="${OSTREE_COMMIT_BODY}" \ | 177 | --body="${OSTREE_COMMIT_BODY}" \ |
177 | --add-metadata-string=version="${OSTREE_COMMIT_VERSION}" \ | 178 | --add-metadata-string=version="${OSTREE_COMMIT_VERSION}" \ |
178 | --bind-ref="${OSTREE_BRANCHNAME}-${IMAGE_BASENAME}" | 179 | ${EXTRA_OSTREE_COMMIT}) |
179 | 180 | ||
180 | if [ "${OSTREE_UPDATE_SUMMARY}" = "1" ]; then | 181 | echo $ostree_target_hash > ${WORKDIR}/ostree_manifest |
182 | |||
183 | if [ ${@ oe.types.boolean('${OSTREE_UPDATE_SUMMARY}')} = True ]; then | ||
181 | ostree --repo=${OSTREE_REPO} summary -u | 184 | ostree --repo=${OSTREE_REPO} summary -u |
182 | fi | 185 | fi |
183 | |||
184 | # To enable simultaneous bitbaking of two images with the same branch name, | ||
185 | # create a new ref in the repo using the basename of the image. (This first | ||
186 | # requires deleting it if it already exists.) Fixes OTA-2211. | ||
187 | ostree --repo=${OSTREE_REPO} refs --delete ${OSTREE_BRANCHNAME}-${IMAGE_BASENAME} | ||
188 | ostree_target_hash=$(cat ${OSTREE_REPO}/refs/heads/${OSTREE_BRANCHNAME}) | ||
189 | ostree --repo=${OSTREE_REPO} refs --create=${OSTREE_BRANCHNAME}-${IMAGE_BASENAME} ${ostree_target_hash} | ||
190 | } | 186 | } |
191 | 187 | ||
192 | IMAGE_TYPEDEP_ostreepush = "ostreecommit" | 188 | IMAGE_TYPEDEP_ostreepush = "ostreecommit" |
@@ -201,7 +197,7 @@ IMAGE_CMD_ostreepush () { | |||
201 | 197 | ||
202 | if [ -n "${SOTA_PACKED_CREDENTIALS}" ]; then | 198 | if [ -n "${SOTA_PACKED_CREDENTIALS}" ]; then |
203 | if [ -e ${SOTA_PACKED_CREDENTIALS} ]; then | 199 | if [ -e ${SOTA_PACKED_CREDENTIALS} ]; then |
204 | garage-push -vv --repo=${OSTREE_REPO} \ | 200 | garage-push --loglevel 0 --repo=${OSTREE_REPO} \ |
205 | --ref=${OSTREE_BRANCHNAME} \ | 201 | --ref=${OSTREE_BRANCHNAME} \ |
206 | --credentials=${SOTA_PACKED_CREDENTIALS} \ | 202 | --credentials=${SOTA_PACKED_CREDENTIALS} \ |
207 | --cacert=${STAGING_ETCDIR_NATIVE}/ssl/certs/ca-certificates.crt \ | 203 | --cacert=${STAGING_ETCDIR_NATIVE}/ssl/certs/ca-certificates.crt \ |
@@ -236,7 +232,7 @@ IMAGE_CMD_garagesign () { | |||
236 | --home-dir ${GARAGE_SIGN_REPO} \ | 232 | --home-dir ${GARAGE_SIGN_REPO} \ |
237 | --credentials ${SOTA_PACKED_CREDENTIALS} | 233 | --credentials ${SOTA_PACKED_CREDENTIALS} |
238 | 234 | ||
239 | ostree_target_hash=$(cat ${OSTREE_REPO}/refs/heads/${OSTREE_BRANCHNAME}-${IMAGE_BASENAME}) | 235 | ostree_target_hash=$(cat ${WORKDIR}/ostree_manifest) |
240 | 236 | ||
241 | # Use OSTree target hash as version if none was provided by the user | 237 | # Use OSTree target hash as version if none was provided by the user |
242 | target_version=${ostree_target_hash} | 238 | target_version=${ostree_target_hash} |
@@ -312,7 +308,7 @@ IMAGE_CMD_garagecheck () { | |||
312 | # if credentials are issued by a server that doesn't support offline signing, exit silently | 308 | # if credentials are issued by a server that doesn't support offline signing, exit silently |
313 | unzip -p ${SOTA_PACKED_CREDENTIALS} root.json targets.pub targets.sec tufrepo.url 2>&1 >/dev/null || exit 0 | 309 | unzip -p ${SOTA_PACKED_CREDENTIALS} root.json targets.pub targets.sec tufrepo.url 2>&1 >/dev/null || exit 0 |
314 | 310 | ||
315 | ostree_target_hash=$(cat ${OSTREE_REPO}/refs/heads/${OSTREE_BRANCHNAME}-${IMAGE_BASENAME}) | 311 | ostree_target_hash=$(cat ${WORKDIR}/ostree_manifest) |
316 | 312 | ||
317 | garage-check --ref=${ostree_target_hash} \ | 313 | garage-check --ref=${ostree_target_hash} \ |
318 | --credentials=${SOTA_PACKED_CREDENTIALS} \ | 314 | --credentials=${SOTA_PACKED_CREDENTIALS} \ |
diff --git a/classes/image_types_ota.bbclass b/classes/image_types_ota.bbclass index 374ddc2..a8a19b5 100644 --- a/classes/image_types_ota.bbclass +++ b/classes/image_types_ota.bbclass | |||
@@ -64,15 +64,25 @@ IMAGE_CMD_ota () { | |||
64 | bbfatal "Invalid bootloader: ${OSTREE_BOOTLOADER}" | 64 | bbfatal "Invalid bootloader: ${OSTREE_BOOTLOADER}" |
65 | fi | 65 | fi |
66 | 66 | ||
67 | ostree_target_hash=$(cat ${OSTREE_REPO}/refs/heads/${OSTREE_BRANCHNAME}-${IMAGE_BASENAME}) | 67 | ostree_target_hash=$(cat ${WORKDIR}/ostree_manifest) |
68 | 68 | ||
69 | # Use OSTree hash to avoid any potential race conditions between | ||
70 | # multiple builds accessing the same ${OSTREE_REPO}. | ||
69 | ostree --repo=${OTA_SYSROOT}/ostree/repo pull-local --remote=${OSTREE_OSNAME} ${OSTREE_REPO} ${ostree_target_hash} | 71 | ostree --repo=${OTA_SYSROOT}/ostree/repo pull-local --remote=${OSTREE_OSNAME} ${OSTREE_REPO} ${ostree_target_hash} |
70 | kargs_list="" | 72 | kargs_list="" |
71 | for arg in ${OSTREE_KERNEL_ARGS}; do | 73 | for arg in ${OSTREE_KERNEL_ARGS}; do |
72 | kargs_list="${kargs_list} --karg-append=$arg" | 74 | kargs_list="${kargs_list} --karg-append=$arg" |
73 | done | 75 | done |
74 | 76 | ||
75 | ostree admin --sysroot=${OTA_SYSROOT} deploy ${kargs_list} --os=${OSTREE_OSNAME} ${ostree_target_hash} | 77 | # Create the same reference on the device we use in the archive OSTree |
78 | # repo in ${OSTREE_REPO}. This reference will show up when showing the | ||
79 | # deployment on the device: | ||
80 | # ostree admin status | ||
81 | # If a remote with the name ${OSTREE_OSNAME} is configured, this also | ||
82 | # will allow to use: | ||
83 | # ostree admin upgrade | ||
84 | ostree --repo=${OTA_SYSROOT}/ostree/repo refs --create=${OSTREE_OSNAME}:${OSTREE_BRANCHNAME} ${ostree_target_hash} | ||
85 | ostree admin --sysroot=${OTA_SYSROOT} deploy ${kargs_list} --os=${OSTREE_OSNAME} ${OSTREE_OSNAME}:${OSTREE_BRANCHNAME} | ||
76 | 86 | ||
77 | cp -a ${IMAGE_ROOTFS}/var/sota ${OTA_SYSROOT}/ostree/deploy/${OSTREE_OSNAME}/var/ || true | 87 | cp -a ${IMAGE_ROOTFS}/var/sota ${OTA_SYSROOT}/ostree/deploy/${OSTREE_OSNAME}/var/ || true |
78 | # Create /var/sota if it doesn't exist yet | 88 | # Create /var/sota if it doesn't exist yet |
diff --git a/classes/sota_sanity.bbclass b/classes/sota_sanity.bbclass index 74973eb..02ca2e7 100644 --- a/classes/sota_sanity.bbclass +++ b/classes/sota_sanity.bbclass | |||
@@ -1,5 +1,12 @@ | |||
1 | # Sanity check the sota setup for common misconfigurations | 1 | # Sanity check the sota setup for common misconfigurations |
2 | 2 | ||
3 | def sota_check_boolean_variable(var, d): | ||
4 | try: | ||
5 | oe.types.boolean(d.getVar(var)) | ||
6 | except: | ||
7 | return False | ||
8 | return True | ||
9 | |||
3 | def sota_check_overrides(status, d): | 10 | def sota_check_overrides(status, d): |
4 | for var in (d.getVar('SOTA_OVERRIDES_BLACKLIST') or "").split(): | 11 | for var in (d.getVar('SOTA_OVERRIDES_BLACKLIST') or "").split(): |
5 | if var in d.getVar('OVERRIDES').split(':'): | 12 | if var in d.getVar('OVERRIDES').split(':'): |
@@ -47,14 +54,14 @@ def sota_check_variables_validity(status, d): | |||
47 | path = os.path.abspath(credentials) | 54 | path = os.path.abspath(credentials) |
48 | if not os.path.exists(path): | 55 | if not os.path.exists(path): |
49 | status.addresult("SOTA_PACKED_CREDENTIALS is not set correctly. The zipped credentials file does not exist.\n") | 56 | status.addresult("SOTA_PACKED_CREDENTIALS is not set correctly. The zipped credentials file does not exist.\n") |
50 | if d.getVar("OSTREE_UPDATE_SUMMARY") and d.getVar("OSTREE_UPDATE_SUMMARY") not in ("0", "1", ""): | 57 | if not sota_check_boolean_variable("OSTREE_UPDATE_SUMMARY", d): |
51 | status.addresult("OSTREE_UPDATE_SUMMARY should be set to 0 or 1.\n") | 58 | status.addresult("OSTREE_UPDATE_SUMMARY (=%s) should be set to yes/y/true/t/1 or no/n/false/f/0.\n" % d.getVar("OSTREE_UPDATE_SUMMARY")) |
52 | if d.getVar("OSTREE_DEPLOY_DEVICETREE") and d.getVar("OSTREE_DEPLOY_DEVICETREE") not in ("0", "1", ""): | 59 | if not sota_check_boolean_variable("OSTREE_DEPLOY_DEVICETREE", d): |
53 | status.addresult("OSTREE_DEPLOY_DEVICETREE should be set to 0 or 1.\n") | 60 | status.addresult("OSTREE_DEPLOY_DEVICETREE (=%s) should be set to yes/y/true/t/1 or no/n/false/f/0.\n" % d.getVar("OSTREE_DEPLOY_DEVICETREE")) |
54 | if d.getVar("GARAGE_SIGN_AUTOVERSION") and d.getVar("GARAGE_SIGN_AUTOVERSION") not in ("0", "1", ""): | 61 | if not sota_check_boolean_variable("GARAGE_SIGN_AUTOVERSION", d): |
55 | status.addresult("GARAGE_SIGN_AUTOVERSION should be set to 0 or 1.\n") | 62 | status.addresult("GARAGE_SIGN_AUTOVERSION (=%s) should be set to yes/y/true/t/1 or no/n/false/f/0.\n" % d.getVar("GARAGE_SIGN_AUTOVERSION")) |
56 | if d.getVar("SOTA_DEPLOY_CREDENTIALS") and d.getVar("SOTA_DEPLOY_CREDENTIALS") not in ("0", "1", ""): | 63 | if not sota_check_boolean_variable("SOTA_DEPLOY_CREDENTIALS", d): |
57 | status.addresult("SOTA_DEPLOY_CREDENTIALS should be set to 0 or 1.\n") | 64 | status.addresult("SOTA_DEPLOY_CREDENTIALS (=%s) should be set to yes/y/true/t/1 or no/n/false/f/0.\n" % d.getVar("SOTA_DEPLOY_CREDENTIALS")) |
58 | 65 | ||
59 | def sota_raise_sanity_error(msg, d): | 66 | def sota_raise_sanity_error(msg, d): |
60 | if d.getVar("SANITY_USE_EVENTS") == "1": | 67 | if d.getVar("SANITY_USE_EVENTS") == "1": |
diff --git a/recipes-core/images/initramfs-ostree-image.bb b/recipes-core/images/initramfs-ostree-image.bb index 936c59a..bc21ed3 100644 --- a/recipes-core/images/initramfs-ostree-image.bb +++ b/recipes-core/images/initramfs-ostree-image.bb | |||
@@ -13,7 +13,7 @@ IMAGE_LINGUAS = "" | |||
13 | 13 | ||
14 | LICENSE = "MIT" | 14 | LICENSE = "MIT" |
15 | 15 | ||
16 | IMAGE_CLASSES_remove = "image_repo_manifest" | 16 | IMAGE_CLASSES_remove = "image_repo_manifest qemuboot" |
17 | 17 | ||
18 | IMAGE_FSTYPES = "${INITRAMFS_FSTYPES}" | 18 | IMAGE_FSTYPES = "${INITRAMFS_FSTYPES}" |
19 | 19 | ||
diff --git a/recipes-extended/collectd/collectd_%.bbappend b/recipes-extended/collectd/collectd_%.bbappend new file mode 100644 index 0000000..fb3e6c4 --- /dev/null +++ b/recipes-extended/collectd/collectd_%.bbappend | |||
@@ -0,0 +1,5 @@ | |||
1 | do_install_append() { | ||
2 | printf "<Include \"${sysconfdir}/collectd.conf.d\">\nFilter \"*.conf\"\n</Include>\n" >> ${D}/${sysconfdir}/collectd.conf | ||
3 | |||
4 | install -d ${D}/${sysconfdir}/collectd.conf.d | ||
5 | } | ||
diff --git a/recipes-sota/aktualizr/aktualizr-collectd.bb b/recipes-sota/aktualizr/aktualizr-collectd.bb new file mode 100644 index 0000000..c1fc717 --- /dev/null +++ b/recipes-sota/aktualizr/aktualizr-collectd.bb | |||
@@ -0,0 +1,21 @@ | |||
1 | SUMMARY = "Aktualizr metric collection" | ||
2 | HOMEPAGE = "https://github.com/advancedtelematic/aktualizr" | ||
3 | SECTION = "base" | ||
4 | LICENSE = "MPL-2.0" | ||
5 | LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MPL-2.0;md5=815ca599c9df247a0c7f619bab123dad" | ||
6 | |||
7 | RDEPENDS_${PN} = "collectd" | ||
8 | |||
9 | SRC_URI = " file://aktualizr-collectd.conf" | ||
10 | |||
11 | S = "${WORKDIR}" | ||
12 | |||
13 | do_install() { | ||
14 | install -d ${D}${sysconfdir}/collectd.conf.d | ||
15 | install -m 0644 ${WORKDIR}/aktualizr-collectd.conf ${D}${sysconfdir}/collectd.conf.d/aktualizr.conf | ||
16 | } | ||
17 | |||
18 | FILES_${PN} = " \ | ||
19 | ${sysconfdir}/collectd.conf.d \ | ||
20 | ${sysconfdir}/collectd.conf.d/aktualizr.conf \ | ||
21 | " | ||
diff --git a/recipes-sota/aktualizr/aktualizr-shared-prov.bb b/recipes-sota/aktualizr/aktualizr-shared-prov.bb index 2ee47a1..0f712df 100644 --- a/recipes-sota/aktualizr/aktualizr-shared-prov.bb +++ b/recipes-sota/aktualizr/aktualizr-shared-prov.bb | |||
@@ -10,7 +10,7 @@ inherit allarch | |||
10 | # We need to get the config files from the aktualizr-host-tools package built by | 10 | # We need to get the config files from the aktualizr-host-tools package built by |
11 | # the aktualizr (target) recipe. | 11 | # the aktualizr (target) recipe. |
12 | DEPENDS = "aktualizr" | 12 | DEPENDS = "aktualizr" |
13 | RDEPENDS_${PN}_append = "${@' aktualizr-shared-prov-creds' if d.getVar('SOTA_DEPLOY_CREDENTIALS') == '1' else ''}" | 13 | RDEPENDS_${PN}_append = "${@' aktualizr-shared-prov-creds' if oe.types.boolean(d.getVar('SOTA_DEPLOY_CREDENTIALS')) else ''}" |
14 | 14 | ||
15 | # If the config file from aktualizr used here is changed, you will need to bump | 15 | # If the config file from aktualizr used here is changed, you will need to bump |
16 | # the version here because of SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS! | 16 | # the version here because of SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS! |
diff --git a/recipes-sota/aktualizr/aktualizr_git.bb b/recipes-sota/aktualizr/aktualizr_git.bb index b1bee82..4f32887 100644 --- a/recipes-sota/aktualizr/aktualizr_git.bb +++ b/recipes-sota/aktualizr/aktualizr_git.bb | |||
@@ -17,7 +17,7 @@ PRIVATE_LIBS_${PN}-ptest = "libaktualizr.so libaktualizr_secondary.so" | |||
17 | PV = "1.0+git${SRCPV}" | 17 | PV = "1.0+git${SRCPV}" |
18 | PR = "7" | 18 | PR = "7" |
19 | 19 | ||
20 | GARAGE_SIGN_PV = "0.7.1" | 20 | GARAGE_SIGN_PV = "0.7.1-4-gf10c1da" |
21 | 21 | ||
22 | SRC_URI = " \ | 22 | SRC_URI = " \ |
23 | gitsm://github.com/advancedtelematic/aktualizr;branch=${BRANCH};name=aktualizr \ | 23 | gitsm://github.com/advancedtelematic/aktualizr;branch=${BRANCH};name=aktualizr \ |
@@ -26,13 +26,13 @@ SRC_URI = " \ | |||
26 | file://aktualizr-secondary.service \ | 26 | file://aktualizr-secondary.service \ |
27 | file://aktualizr-serialcan.service \ | 27 | file://aktualizr-serialcan.service \ |
28 | file://10-resource-control.conf \ | 28 | file://10-resource-control.conf \ |
29 | ${@ d.expand("https://tuf-cli-releases.ota.here.com/cli-${GARAGE_SIGN_PV}.tgz;unpack=0;name=garagesign") if d.getVar('GARAGE_SIGN_AUTOVERSION') != '1' else ''} \ | 29 | ${@ d.expand("https://tuf-cli-releases.ota.here.com/cli-${GARAGE_SIGN_PV}.tgz;unpack=0;name=garagesign") if not oe.types.boolean(d.getVar('GARAGE_SIGN_AUTOVERSION')) else ''} \ |
30 | " | 30 | " |
31 | 31 | ||
32 | SRC_URI[garagesign.md5sum] = "febc186527b324b23c5be3affcf90e54" | 32 | SRC_URI[garagesign.md5sum] = "5f8eea81d1559d6fcb28d49c4298727c" |
33 | SRC_URI[garagesign.sha256sum] = "a87c3f39d61492d6f813754159ed7ef1e59966c15726edef4cd188a63cde60d6" | 33 | SRC_URI[garagesign.sha256sum] = "8b2f5bb164f19b41972069d3377e39c2eb9edffd471777161691039e12a71738" |
34 | 34 | ||
35 | SRCREV = "a6392dec3fb9dda3cb8ab8aa10a81b2c0494cb3c" | 35 | SRCREV = "cf44da79555d1897115eb350cbc43db1e213db03" |
36 | BRANCH ?= "master" | 36 | BRANCH ?= "master" |
37 | 37 | ||
38 | S = "${WORKDIR}/git" | 38 | S = "${WORKDIR}/git" |
@@ -49,7 +49,7 @@ SYSTEMD_SERVICE_${PN}-secondary = "aktualizr-secondary.service" | |||
49 | 49 | ||
50 | EXTRA_OECMAKE = "-DCMAKE_BUILD_TYPE=Release ${@bb.utils.contains('PTEST_ENABLED', '1', '-DTESTSUITE_VALGRIND=on', '', d)}" | 50 | EXTRA_OECMAKE = "-DCMAKE_BUILD_TYPE=Release ${@bb.utils.contains('PTEST_ENABLED', '1', '-DTESTSUITE_VALGRIND=on', '', d)}" |
51 | 51 | ||
52 | GARAGE_SIGN_OPS = "${@ d.expand('-DGARAGE_SIGN_ARCHIVE=${WORKDIR}/cli-${GARAGE_SIGN_PV}.tgz') if d.getVar('GARAGE_SIGN_AUTOVERSION') != '1' else ''}" | 52 | GARAGE_SIGN_OPS = "${@ d.expand('-DGARAGE_SIGN_ARCHIVE=${WORKDIR}/cli-${GARAGE_SIGN_PV}.tgz') if not oe.types.boolean(d.getVar('GARAGE_SIGN_AUTOVERSION')) else ''}" |
53 | PKCS11_ENGINE_PATH = "${libdir}/engines-1.1/pkcs11.so" | 53 | PKCS11_ENGINE_PATH = "${libdir}/engines-1.1/pkcs11.so" |
54 | 54 | ||
55 | PACKAGECONFIG ?= "ostree ${@bb.utils.filter('SOTA_CLIENT_FEATURES', 'hsm serialcan ubootenv', d)}" | 55 | PACKAGECONFIG ?= "ostree ${@bb.utils.filter('SOTA_CLIENT_FEATURES', 'hsm serialcan ubootenv', d)}" |
diff --git a/recipes-sota/aktualizr/files/aktualizr-collectd.conf b/recipes-sota/aktualizr/files/aktualizr-collectd.conf new file mode 100644 index 0000000..35a1f61 --- /dev/null +++ b/recipes-sota/aktualizr/files/aktualizr-collectd.conf | |||
@@ -0,0 +1,9 @@ | |||
1 | <LoadPlugin processes> | ||
2 | Interval 1 | ||
3 | </LoadPlugin> | ||
4 | <Plugin processes> | ||
5 | CollectFileDescriptor true | ||
6 | CollectContextSwitch true | ||
7 | CollectMemoryMaps true | ||
8 | Process "aktualizr" | ||
9 | </Plugin> | ||
diff --git a/recipes-sota/aktualizr/files/aktualizr.service b/recipes-sota/aktualizr/files/aktualizr.service index 3d807a1..ae5d23a 100644 --- a/recipes-sota/aktualizr/files/aktualizr.service +++ b/recipes-sota/aktualizr/files/aktualizr.service | |||
@@ -1,6 +1,7 @@ | |||
1 | [Unit] | 1 | [Unit] |
2 | Description=Aktualizr SOTA Client | 2 | Description=Aktualizr SOTA Client |
3 | After=network-online.target nss-lookup.target | 3 | After=network-online.target nss-lookup.target boot-complete.target |
4 | Requires=boot-complete.target | ||
4 | Wants=network-online.target | 5 | Wants=network-online.target |
5 | 6 | ||
6 | [Service] | 7 | [Service] |
diff --git a/recipes-sota/config/aktualizr-binary-pacman.bb b/recipes-sota/config/aktualizr-binary-pacman.bb new file mode 100644 index 0000000..36bafb3 --- /dev/null +++ b/recipes-sota/config/aktualizr-binary-pacman.bb | |||
@@ -0,0 +1,21 @@ | |||
1 | DESCRIPTION = "Configure aktualizr with a binary package manager" | ||
2 | LICENSE = "MPL-2.0" | ||
3 | LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MPL-2.0;md5=815ca599c9df247a0c7f619bab123dad" | ||
4 | |||
5 | inherit allarch | ||
6 | |||
7 | SRC_URI = "\ | ||
8 | file://10-pacman.toml \ | ||
9 | " | ||
10 | |||
11 | FILES_${PN} = " \ | ||
12 | ${libdir}/sota/conf.d \ | ||
13 | ${libdir}/sota/conf.d/10-pacman.toml \ | ||
14 | " | ||
15 | |||
16 | PR = "1" | ||
17 | |||
18 | do_install() { | ||
19 | install -m 0700 -d ${D}${libdir}/sota/conf.d | ||
20 | install -m 0644 ${WORKDIR}/10-pacman.toml ${D}${libdir}/sota/conf.d/10-pacman.toml | ||
21 | } | ||
diff --git a/recipes-sota/config/files/10-pacman.toml b/recipes-sota/config/files/10-pacman.toml new file mode 100644 index 0000000..a24fd39 --- /dev/null +++ b/recipes-sota/config/files/10-pacman.toml | |||
@@ -0,0 +1,2 @@ | |||
1 | [pacman] | ||
2 | type = "none" | ||
diff --git a/recipes-support/boost/boost_1.72.0.bbappend b/recipes-support/boost/boost_1.72.0.bbappend deleted file mode 100644 index 73ee73d..0000000 --- a/recipes-support/boost/boost_1.72.0.bbappend +++ /dev/null | |||
@@ -1,4 +0,0 @@ | |||
1 | FILESEXTRAPATHS_prepend := "${THISDIR}/files:" | ||
2 | |||
3 | SRC_URI += "file://0001-add-typedef-executor_type.patch \ | ||
4 | " | ||
diff --git a/recipes-support/boost/files/0001-add-typedef-executor_type.patch b/recipes-support/boost/files/0001-add-typedef-executor_type.patch deleted file mode 100644 index 1b326a4..0000000 --- a/recipes-support/boost/files/0001-add-typedef-executor_type.patch +++ /dev/null | |||
@@ -1,56 +0,0 @@ | |||
1 | From 99ad3ebac0b7466d57c98fb9583fbe8789729691 Mon Sep 17 00:00:00 2001 | ||
2 | From: Patrick Vacek <patrickvacek@gmail.com> | ||
3 | Date: Wed, 4 Mar 2020 12:41:02 +0000 | ||
4 | Subject: [PATCH] add typedef executor_type | ||
5 | |||
6 | Backported from here: | ||
7 | https://github.com/boostorg/process/commit/6a4d2ff72114ef47c7afaf92e1042aca3dfa41b0 | ||
8 | |||
9 | Suggested-by: Kostiantyn Bushko <kbushko@intellias.com> | ||
10 | Signed-off-by: Patrick Vacek <patrickvacek@gmail.com> | ||
11 | --- | ||
12 | boost/process/async_pipe.hpp | 2 ++ | ||
13 | boost/process/detail/posix/async_pipe.hpp | 1 + | ||
14 | boost/process/detail/windows/async_pipe.hpp | 1 + | ||
15 | 3 files changed, 4 insertions(+) | ||
16 | |||
17 | diff --git a/boost/process/async_pipe.hpp b/boost/process/async_pipe.hpp | ||
18 | index 101fe1d..a562432 100644 | ||
19 | --- a/boost/process/async_pipe.hpp | ||
20 | +++ b/boost/process/async_pipe.hpp | ||
21 | @@ -47,6 +47,8 @@ public: | ||
22 | */ | ||
23 | typedef platform_specific handle_type; | ||
24 | |||
25 | + typedef typename handle_type::executor_type executor_type; | ||
26 | + | ||
27 | /** Construct a new async_pipe, does automatically open the pipe. | ||
28 | * Initializes source and sink with the same io_context. | ||
29 | * @note Windows creates a named pipe here, where the name is automatically generated. | ||
30 | diff --git a/boost/process/detail/posix/async_pipe.hpp b/boost/process/detail/posix/async_pipe.hpp | ||
31 | index 725a078..a82c057 100644 | ||
32 | --- a/boost/process/detail/posix/async_pipe.hpp | ||
33 | +++ b/boost/process/detail/posix/async_pipe.hpp | ||
34 | @@ -23,6 +23,7 @@ class async_pipe | ||
35 | public: | ||
36 | typedef int native_handle_type; | ||
37 | typedef ::boost::asio::posix::stream_descriptor handle_type; | ||
38 | + typedef typename handle_type::executor_type executor_type; | ||
39 | |||
40 | inline async_pipe(boost::asio::io_context & ios) : async_pipe(ios, ios) {} | ||
41 | |||
42 | diff --git a/boost/process/detail/windows/async_pipe.hpp b/boost/process/detail/windows/async_pipe.hpp | ||
43 | index 06d5f2d..0b447f9 100644 | ||
44 | --- a/boost/process/detail/windows/async_pipe.hpp | ||
45 | +++ b/boost/process/detail/windows/async_pipe.hpp | ||
46 | @@ -48,6 +48,7 @@ class async_pipe | ||
47 | public: | ||
48 | typedef ::boost::winapi::HANDLE_ native_handle_type; | ||
49 | typedef ::boost::asio::windows::stream_handle handle_type; | ||
50 | + typedef typename handle_type::executor_type executor_type; | ||
51 | |||
52 | async_pipe(boost::asio::io_context & ios) : async_pipe(ios, ios, make_pipe_name(), true) {} | ||
53 | async_pipe(boost::asio::io_context & ios_source, boost::asio::io_context & ios_sink) | ||
54 | -- | ||
55 | 2.11.0 | ||
56 | |||