diff --git a/CHANGELOG.md b/CHANGELOG.md index 5a12e0202f..7d37585794 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,9 @@ Our versioning scheme is `YEAR.N` where `N` is incremented whenever a new releas ## [??? (unreleased)] + +## [2020.6] - 2020-04-30 + ### Added - libaktualizr API and aktualizr-primary command line parameter to provide custom hardware information in JSON format: [PR](https://github.com/advancedtelematic/aktualizr/pull/1644) @@ -13,6 +16,14 @@ Our versioning scheme is `YEAR.N` where `N` is incremented whenever a new releas ### Changed - Improved garage-deploy object fetching performance by reusing the curl handle: [PR](https://github.com/advancedtelematic/aktualizr/pull/1643) +- Added an SQL busy handler with 2 seconds timeout: [PR](https://github.com/advancedtelematic/aktualizr/pull/1648) +- Improved internal exception handling: [PR #1654](https://github.com/advancedtelematic/aktualizr/pull/1654) and [PR #1658](https://github.com/advancedtelematic/aktualizr/pull/1658) + +### Fixed + +- Prevented more failure states from resulting in an installation loop: [PR #1632](https://github.com/advancedtelematic/aktualizr/pull/1632) and [PR #1635](https://github.com/advancedtelematic/aktualizr/pull/1635) +- Allow installaton of 0-byte binary files: [PR](https://github.com/advancedtelematic/aktualizr/pull/1652) +- Refuse to download OSTree targets with the fake/binary package manager: [PR](https://github.com/advancedtelematic/aktualizr/pull/1653) ### Removed diff --git a/docs/README.adoc b/docs/README.adoc index 8da85b6e50..4f92fb96e2 100644 --- a/docs/README.adoc +++ b/docs/README.adoc @@ -37,6 +37,7 @@ The link above is for the doxygen docs on master. Doxygen docs for the following * https://advancedtelematic.github.io/aktualizr/2020.3/index.html[2020.3] * https://advancedtelematic.github.io/aktualizr/2020.4/index.html[2020.4] * https://advancedtelematic.github.io/aktualizr/2020.5/index.html[2020.5] +* https://advancedtelematic.github.io/aktualizr/2020.6/index.html[2020.6] ==== == Release process diff --git a/docs/ota-client-guide/antora.yml b/docs/ota-client-guide/antora.yml index 10f514436c..e767d2647d 100644 --- a/docs/ota-client-guide/antora.yml +++ b/docs/ota-client-guide/antora.yml @@ -1,6 +1,6 @@ name: ota-client title: OTA Connect Developer Guide version: latest -display_version: 2020.5 (latest) +display_version: 2020.6 (latest) nav: - modules/ROOT/nav.adoc diff --git a/docs/ota-client-guide/modules/ROOT/pages/_partials/aktualizr-version.adoc b/docs/ota-client-guide/modules/ROOT/pages/_partials/aktualizr-version.adoc index af7cf60494..f77f98cfd1 100644 --- a/docs/ota-client-guide/modules/ROOT/pages/_partials/aktualizr-version.adoc +++ b/docs/ota-client-guide/modules/ROOT/pages/_partials/aktualizr-version.adoc @@ -3,7 +3,7 @@ // the version being viewed, but when we are referencing aktualizr from // the other, non-versioned docs, we want to make sure we're using the // latest version. -:aktualizr-version: 2020.5 +:aktualizr-version: 2020.6 :yocto-version: 3.0 diff --git a/docs/ota-client-guide/modules/ROOT/pages/add-meta-updater-to-vendors-sdk.adoc b/docs/ota-client-guide/modules/ROOT/pages/add-meta-updater-to-vendors-sdk.adoc index 5911472075..45da89ef69 100644 --- a/docs/ota-client-guide/modules/ROOT/pages/add-meta-updater-to-vendors-sdk.adoc +++ b/docs/ota-client-guide/modules/ROOT/pages/add-meta-updater-to-vendors-sdk.adoc @@ -7,7 +7,7 @@ We recommend that you link:https://docs.ota.here.com/ota-client/latest/{docname} ==== endif::[] -include::_partials/aktualizr-version.adoc[] +include::partial$aktualizr-version.adoc[] To avoid conflicts and certain classes of bugs, we require the use of `usrmerge`, even on systems that do not use systemd. In the https://www.yoctoproject.org/docs/{yocto-version}/mega-manual/mega-manual.html[Yocto] ecosystem, it is a general best practice to write `do_install()` functions that install to the variable `\{bindir}`, but some recipes still hard-code the location of `/bin`. diff --git a/docs/ota-client-guide/modules/ROOT/pages/add-ota-functonality-existing-yocto-project.adoc b/docs/ota-client-guide/modules/ROOT/pages/add-ota-functonality-existing-yocto-project.adoc index 312fc9b11d..f3f94cc289 100644 --- a/docs/ota-client-guide/modules/ROOT/pages/add-ota-functonality-existing-yocto-project.adoc +++ b/docs/ota-client-guide/modules/ROOT/pages/add-ota-functonality-existing-yocto-project.adoc @@ -7,7 +7,7 @@ We recommend that you link:https://docs.ota.here.com/ota-client/latest/{docname} ==== endif::[] -include::_partials/aktualizr-version.adoc[] +include::partial$aktualizr-version.adoc[] :page-layout: page :page-categories: [quickstarts] diff --git a/docs/ota-client-guide/modules/ROOT/pages/aktualizr-config-options.adoc b/docs/ota-client-guide/modules/ROOT/pages/aktualizr-config-options.adoc index 2757599ebb..0d8d578b35 100644 --- a/docs/ota-client-guide/modules/ROOT/pages/aktualizr-config-options.adoc +++ b/docs/ota-client-guide/modules/ROOT/pages/aktualizr-config-options.adoc @@ -7,7 +7,7 @@ We recommend that you link:https://docs.ota.here.com/ota-client/latest/{docname} ==== endif::[] -include::_partials/aktualizr-version.adoc[] +include::partial$aktualizr-version.adoc[] :page-layout: page :page-categories: [client-config] diff --git a/docs/ota-client-guide/modules/ROOT/pages/build-agl.adoc b/docs/ota-client-guide/modules/ROOT/pages/build-agl.adoc index 3bbdea950e..2485e8e52d 100644 --- a/docs/ota-client-guide/modules/ROOT/pages/build-agl.adoc +++ b/docs/ota-client-guide/modules/ROOT/pages/build-agl.adoc @@ -8,6 +8,8 @@ We recommend that you link:https://docs.ota.here.com/ota-client/latest/{docname} ==== endif::[] +include::ota-client::partial$aktualizr-version.adoc[] + :page-layout: page :page-categories: [quickstarts] @@ -22,7 +24,7 @@ endif::[] // Most of the content here is the same as the Raspberry Pi instructions, so we re-use the chunks we can. -include::build-raspberry.adoc[tags=prereqs] +include::ota-client::page$build-raspberry.adoc[tags=prereqs] == Create your AGL Yocto build environment @@ -33,7 +35,7 @@ First, use the manifest file for AGL's Itchy Icefish release to download the req ---- mkdir myproject cd myproject -repo init -b icefish -m icefish_9.0.0.xml -u https://gerrit.automotivelinux.org/gerrit/AGL/AGL-repo +repo init -b icefish -m icefish_9.0.1.xml -u https://gerrit.automotivelinux.org/gerrit/AGL/AGL-repo repo sync ---- @@ -55,24 +57,7 @@ source meta-agl/scripts/aglsetup.sh -m agl-sota <1> IMPORTANT: Only `raspberrypi3` and `qemux86-64` will work out of the box. If you want to create an {product-name-short}-compatible build for one of the other architectures AGL supports, you may need to write a BSP layer for that board. You can take the link:https://github.com/advancedtelematic/meta-updater-raspberrypi/tree/morty/recipes-bsp[Raspberry Pi BSP] as an example of what's needed. You can also link:mailto:otaconnect.support@here.com[contact us directly] to inquire about commercial development of BSP layers for specific boards. -=== Additional configuration for Raspberry Pi 3 - -As described in the link:https://docs.automotivelinux.org/docs/en/master/getting_started/reference/getting-started/machines/raspberrypi.html#sota[AGL documentation], you will need to edit your `bblayers.conf` to add `meta-updater-raspberrypi`. - -=== Additional configuration for QEMU - -// This has been moved upstream: -// https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/23953 -// But it's only in master at present, not even the initial icefish release. -// See 99c55be1635a8ff30317417093da54fbcd8eb250 in the icefish branch of meta-agl. - -By default, AGL for QEMU boots into an initrd before loading the root filesystem, but as of thud, meta-updater by default uses an initramfs. You will need to force the build to use an initramfs by adding this to your `local.conf`: - ----- -AGL_DEFAULT_INITRAMFS_FSTYPES = "cpio.gz" ----- - -include::build-raspberry.adoc[tags=config] +include::ota-client::page$build-raspberry.adoc[tags=config] == Bitbake @@ -105,4 +90,4 @@ TIP: You can also write the image using `dd`, but since the wrong kind of typo i You can now run the image in QEMU using the same method as described for a xref:build-qemu.adoc#_run_the_built_image_with_qemu[regular QEMU build]. However, the exact image you'll need will vary depending on the architecture you're building forfootnote:[For example, building the `agl-image-minimal` target for QEMU creates an image at `build/tmp/deploy/images/qemux86-64/agl-image-minimal-qemux86-64.ota-ext4`.], but it will be located in the `/tmp/deploy/images` directory under your build directory. -include::partial$recommended-steps.adoc[tags=firstbuild-nextstep] +include::ota-client::partial$recommended-steps.adoc[tags=firstbuild-nextstep] diff --git a/docs/ota-client-guide/modules/ROOT/pages/build-qemu.adoc b/docs/ota-client-guide/modules/ROOT/pages/build-qemu.adoc index 8c129f6085..622c2c5176 100644 --- a/docs/ota-client-guide/modules/ROOT/pages/build-qemu.adoc +++ b/docs/ota-client-guide/modules/ROOT/pages/build-qemu.adoc @@ -8,6 +8,7 @@ We recommend that you link:https://docs.ota.here.com/ota-client/latest/{docname} ==== endif::[] +include::ota-client::partial$aktualizr-version.adoc[] :page-layout: page :page-categories: [quickstarts] diff --git a/docs/ota-client-guide/modules/ROOT/pages/build-raspberry.adoc b/docs/ota-client-guide/modules/ROOT/pages/build-raspberry.adoc index 2bddf6ae2b..e9c41998d3 100644 --- a/docs/ota-client-guide/modules/ROOT/pages/build-raspberry.adoc +++ b/docs/ota-client-guide/modules/ROOT/pages/build-raspberry.adoc @@ -8,7 +8,7 @@ We recommend that you link:https://docs.ota.here.com/ota-client/latest/{docname} ==== endif::[] -include::_partials/aktualizr-version.adoc[] +include::partial$aktualizr-version.adoc[] :page-layout: page :page-categories: [quickstarts] diff --git a/docs/ota-client-guide/modules/ROOT/pages/customise-targets-metadata.adoc b/docs/ota-client-guide/modules/ROOT/pages/customise-targets-metadata.adoc index a825c66ef8..b598ad5960 100644 --- a/docs/ota-client-guide/modules/ROOT/pages/customise-targets-metadata.adoc +++ b/docs/ota-client-guide/modules/ROOT/pages/customise-targets-metadata.adoc @@ -7,7 +7,7 @@ We recommend that you link:https://docs.ota.here.com/ota-client/latest/{docname} ==== endif::[] -include::_partials/aktualizr-version.adoc[] +include::partial$aktualizr-version.adoc[] In some cases, you might find it useful to include extra metadata about your software inside the signed Uptane metadata that OTA Connect delivers to your device. Some reasons you might want to do this include: diff --git a/docs/ota-client-guide/modules/ROOT/pages/pushing-updates.adoc b/docs/ota-client-guide/modules/ROOT/pages/pushing-updates.adoc index 8372262b81..2ac9ae7966 100644 --- a/docs/ota-client-guide/modules/ROOT/pages/pushing-updates.adoc +++ b/docs/ota-client-guide/modules/ROOT/pages/pushing-updates.adoc @@ -8,7 +8,7 @@ We recommend that you link:https://docs.ota.here.com/ota-client/latest/{docname} ==== endif::[] -include::_partials/aktualizr-version.adoc[] +include::partial$aktualizr-version.adoc[] Every time you bitbake a new image, it is automatically pushed to {product-name}. You can then send the updated image out to any of your devices. In this guide, you learn a few ways to push updated system images from your build machine or workstation to {product-name-short}. diff --git a/docs/ota-client-guide/modules/ROOT/pages/setup-boot-image-for-ostree.adoc b/docs/ota-client-guide/modules/ROOT/pages/setup-boot-image-for-ostree.adoc index b39c7adb9f..fbdd7d1034 100644 --- a/docs/ota-client-guide/modules/ROOT/pages/setup-boot-image-for-ostree.adoc +++ b/docs/ota-client-guide/modules/ROOT/pages/setup-boot-image-for-ostree.adoc @@ -7,7 +7,7 @@ We recommend that you link:https://docs.ota.here.com/ota-client/latest/{docname} ==== endif::[] -include::_partials/aktualizr-version.adoc[] +include::partial$aktualizr-version.adoc[] This is the second step in getting a new board running after xref:add-board-class.adoc[adding a new board class for the new target board in meta-updater]. diff --git a/docs/ota-client-guide/modules/ROOT/pages/troubleshooting-bsp-integration.adoc b/docs/ota-client-guide/modules/ROOT/pages/troubleshooting-bsp-integration.adoc index 0073742b39..163b186613 100644 --- a/docs/ota-client-guide/modules/ROOT/pages/troubleshooting-bsp-integration.adoc +++ b/docs/ota-client-guide/modules/ROOT/pages/troubleshooting-bsp-integration.adoc @@ -7,7 +7,7 @@ We recommend that you link:https://docs.ota.here.com/ota-client/latest/{docname} ==== endif::[] -include::_partials/aktualizr-version.adoc[] +include::partial$aktualizr-version.adoc[] == U-Boot loading the wrong config file diff --git a/docs/ota-client-guide/modules/ROOT/pages/troubleshooting.adoc b/docs/ota-client-guide/modules/ROOT/pages/troubleshooting.adoc index 9a140ea309..a360a39937 100644 --- a/docs/ota-client-guide/modules/ROOT/pages/troubleshooting.adoc +++ b/docs/ota-client-guide/modules/ROOT/pages/troubleshooting.adoc @@ -7,7 +7,7 @@ We recommend that you link:https://docs.ota.here.com/ota-client/latest/{docname} ==== endif::[] -include::_partials/aktualizr-version.adoc[] +include::partial$aktualizr-version.adoc[] :page-layout: page :page-categories: [tips] diff --git a/docs/ota-client-guide/modules/ROOT/pages/yocto-release-branches.adoc b/docs/ota-client-guide/modules/ROOT/pages/yocto-release-branches.adoc index 6c084b42b2..2d8e4ea2ee 100644 --- a/docs/ota-client-guide/modules/ROOT/pages/yocto-release-branches.adoc +++ b/docs/ota-client-guide/modules/ROOT/pages/yocto-release-branches.adoc @@ -12,6 +12,7 @@ endif::[] Yocto has a number of release branches. Their details are documented in the https://wiki.yoctoproject.org/wiki/Releases[Yocto wiki]. HERE OTA Connect currently actively supports the following branches: +* dunfell * zeus * warrior * thud