summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* aktualizr: Upgrade to 2020.10 releaseAnatoliy Odukha2020-10-291-4/+4
| | | | Signed-off-by: Anatoliy Odukha <aodukha@gmail.com>
* Merge pull request #779 from advancedtelematic/fix/unused-configsPatrick Vacek2020-10-214-9/+6
|\ | | | | aktualizr: Don't put unused configs in the image.
| * aktualizr: Don't put unused configs in the image.fix/unused-configsPatrick Vacek2020-10-214-9/+6
|/ | | | | | | | | | | | | | | | | Because every aktualizr package was depending on aktualizr-configs, all of the default configs were getting installed to /usr/lib/sota, despite that by default none of them were ever used on the device. That dependency has been removed. The provisioning recipes still install the recipes they need to the default location that aktualizr actually uses (/usr/lib/sota/conf.d). If you want to use anything else, a specific recipe should be created to do so. This change rendered the aktualizr-host-tools package useless, so it has been removed. Signed-off-by: Patrick Vacek <patrickvacek@gmail.com>
* Merge pull request #776 from shr-project/jansa/dunfellPatrick Vacek2020-10-151-2/+2
|\ | | | | networkd-dhcp-conf: fix REQUIRED_DISTRO_FEATURES
| * networkd-dhcp-conf: fix REQUIRED_DISTRO_FEATURESMartin Jansa2020-10-151-2/+2
|/ | | | | | | | | | | | | | | * it's REQUIRED_DISTRO_FEATURES not REQUIRED_DISTRO_FEATURES_ * inherit features_check to actually respect REQUIRED_DISTRO_FEATURES and fix: ERROR: networkd-dhcp-conf-1.0-r1 do_package_qa: QA Issue: networkd-dhcp-conf: recipe doesn't inherit features_check [unhandled-features-check] * fix: commit 4ae9917bf2475c118e8015ec7a2ce10bd01a0124 Author: Mykhaylo Sul <ext-mykhaylo.sul@here.com> Date: Fri Nov 1 11:44:44 2019 +0100 OTA-3988: Don't build the networkd-dhcp recipe if systemd is not included into the disto feature list Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* Merge pull request #775 from advancedtelematic/feat/rm-upstreamed-packagesPatrick Vacek2020-09-286-146/+0
|\ | | | | Feat/rm upstreamed packages
| * softhsm: remove since it was added to meta-openembedded last year.feat/rm-upstreamed-packagesPatrick Vacek2020-09-281-26/+0
| | | | | | | | | | | | It appears to be an almost straight copy of this recipe. Signed-off-by: Patrick Vacek <patrickvacek@gmail.com>
| * libssh2: Remove redundant bbappend.Patrick Vacek2020-09-281-2/+0
| | | | | | | | | | | | The version in meta-openembedded already supports a native build. Signed-off-by: Patrick Vacek <patrickvacek@gmail.com>
| * gpgme: Remove redundant bbappend.Patrick Vacek2020-09-281-1/+0
| | | | | | | | | | | | The version in poky already supports a native build. Signed-off-by: Patrick Vacek <patrickvacek@gmail.com>
| * lshw: remove since it's been in meta-openembedded for a long time.Patrick Vacek2020-09-283-117/+0
|/ | | | | | And it's a newer version at that! Signed-off-by: Patrick Vacek <patrickvacek@gmail.com>
* Merge pull request #773 from ↵Anatoliy Odukha2020-09-072-2/+6
|\ | | | | | | | | liuming50/introduce-OSTREE_MULTI_DEVICETREE_SUPPORT-for-dunfell sota: introduce OSTREE_MULTI_DEVICETREE_SUPPORT
| * sota: introduce OSTREE_MULTI_DEVICETREE_SUPPORTMing Liu2020-09-072-2/+6
|/ | | | | | | | | | | | | | | ostree supports multiple devicetrees provided that there is no /lib/modules/$kversion/devicetree installed on rootfs, in which case, a uboot variable 'fdtdir' would be written to /boot/loader/uEnv.txt instead of fdt_file. Introduce OSTREE_MULTI_DEVICETREE_SUPPORT to control that, when it's set to '0', there is no functional changes with current implementation, while it's set to '1', then /lib/modules/$kversion/devicetree would not be installed and the end users need set their own fdtfile/fdt_file in boot script to locate the devicetree in 'fdtdir'. Signed-off-by: Ming Liu <ming.liu@toradex.com>
* Merge pull request #767 from advancedtelematic/feat/dunfell/2020.9Patrick Vacek2020-09-046-8/+18
|\ | | | | Feat/dunfell/2020.9
| * aktualizr: Upgrade to 2020.9 release.feat/dunfell/2020.9Patrick Vacek2020-08-261-4/+4
| | | | | | | | Signed-off-by: Patrick Vacek <patrickvacek@gmail.com>
| * image_repo_manifest.bbclass: fix build when there is no repo on hostMartin Jansa2020-08-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * failing "which repo" causes the run.buildinfo_manifest task to fail before it even reaches the test for empty repotool variable: dash -x some-image/1.0-r2/temp/run.buildinfo_manifest.80233 + export systemd_system_unitdir=/usr/lib/systemd/system + export systemd_unitdir=/usr/lib/systemd + export systemd_user_unitdir=/usr/lib/systemd/user + buildinfo_manifest + which repo + repotool= + bb_sh_exit_handler + ret=1 + [ 1 != 0 ] + echo WARNING: exit code 1 from a shell command. WARNING: exit code 1 from a shell command. + exit 1 causing nasty long python exception from do_image task with this fix, it just shows an warning again: dash -x some-image/1.0-r2/temp/run.buildinfo_manifest.80233 + export systemd_user_unitdir=/usr/lib/systemd/user + buildinfo_manifest + which repo + true + repotool= + [ -n ] + bbwarn Android repo tool not found; manifest not copied. + [ -p some-image/1.0-r2/temp/fifo.80233 ] + echo WARNING: Android repo tool not found; manifest not copied. WARNING: Android repo tool not found; manifest not copied. + ret=0 + trap 0 + exit 0 Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
| * image_repo_manifest.bbclass: explicitly call python3Ming Liu2020-08-261-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | Now we have changed to inherit python3native to provide python3 binary for repo, then we need explicitly call python3 to execute repo, or else it will firstly try to locate python which will fail if python is not in HOSTTOOLS. This fixes a following warning: | Android repo tool failed to run; manifest not copied Signed-off-by: Ming Liu <ming.liu@toradex.com>
| * Inherit python3native instead of using HOSTTOOLS.Patrick Vacek2020-08-264-1/+7
| | | | | | | | Signed-off-by: Patrick Vacek <patrickvacek@gmail.com>
| * qemucommand: Restore custom booloader parameter.Patrick Vacek2020-08-261-1/+4
|/ | | | | | | The functionality was (presumably unintentionally) removed, but the option was still present. Signed-off-by: Patrick Vacek <patrickvacek@gmail.com>
* Merge pull request #764 from advancedtelematic/feat/dunfell/headersPatrick Vacek2020-08-121-2/+4
|\ | | | | aktualizr: Bump to latest and install headers in dev package.
| * aktualizr: Bump to latest and install headers in dev package.feat/dunfell/headersPatrick Vacek2020-08-111-2/+4
|/ | | | Signed-off-by: Patrick Vacek <patrickvacek@gmail.com>
* Merge pull request #763 from liuming50/cherry-pick-nfs-utils-fixes-to-dunfellPatrick Vacek2020-08-112-0/+38
|\ | | | | Cherry pick nfs utils fixes to dunfell
| * nfs-utils: don't add nfs-home-mount.service without sota enabledMartin Jansa2020-08-111-4/+4
| | | | | | | | | | | | | | | | | | | | | | * nfs-home-mount.service is installed by do_install_append_sota, so only when sota is enabled but it was always added to SYSTEMD_SERVICE_ even when sota wasn't enabled resulting in do_patch failure: nfs-utils-2.5.1-r0 do_package: SYSTEMD_SERVICE_nfs-utils value nfs-home-mount.service does not exist * use sota override everywhere Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
| * nfs-utils: fix nfs systemd daemons runtime issuesMing Liu2020-08-112-0/+38
|/ | | | | | | | | | | | | | | | nfs-mountd.service and nfs-statd.service rely on /var/lib/nfs to be present in rootfs, or else they would run into problems for some files missing in it. But a ostree/ota rootfs does not have that directory (removed during do_image), to fix that, we now copy them to /var/local/lib/nfs and mount it to /var/lib/nfs at runtime, which is done in nfs-home-mount.service. nfs-mountd.service and nfs-statd.service need run after nfs-home-mount.service. Signed-off-by: Ming Liu <ming.liu@toradex.com>
* Merge pull request #761 from psaavedra/dunfellPatrick Vacek2020-08-102-60/+0
|\ | | | | Remove boost 1.72 bbappend
| * Remove boost 1.72 bbappendLaurent Bonnans2020-08-102-60/+0
|/ | | | | | poky switched to 1.73 which includes this patch Signed-off-by: Laurent Bonnans <laurent.bonnans@here.com>
* Merge pull request #758 from advancedtelematic/fix/rpi-bootfiles-pathPatrick Vacek2020-08-041-2/+3
|\ | | | | sota_raspberrypi: Use new variable for bootfiles path.
| * sota_raspberrypi: Use new variable for bootfiles path.fix/rpi-bootfiles-pathPatrick Vacek2020-08-041-2/+3
|/ | | | | | | | This was changed in a907c3261ef583f898803706cd596d372c6644cb of meta-raspberrypi. This also requires 0b5292d13692ba074dc85227233e3a819d944204 in meta-updater-raspberrypi. Signed-off-by: Patrick Vacek <patrickvacek@gmail.com>
* Merge pull request #749 from advancedtelematic/feat/dunfell/2020.8Patrick Vacek2020-07-1421-54/+122
|\ | | | | Feat/dunfell/2020.8
| * aktualizr: Bump to 2020.8 release.feat/dunfell/2020.8Patrick Vacek2020-07-091-4/+4
| | | | | | | | Signed-off-by: Patrick Vacek <patrickvacek@gmail.com>
| * ostree-kernel-initramfs: fix devicetree deploymentantznin2020-07-081-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Following the changes in ostree's deployment of the kernel, initramfs and devicetree in /lib/modules/$kver, the deployment method of the device tree also changed. Instead of picking the first device tree it finds at a given location, ostree looks at a file named devicetree, next to kernel and initramfs in /lib/modules/$kver. This commit modifies ostree-kernel-initramfs to deploy the devicetree from the sota-defined variable OSTREE_DEVICETREE. It will pick the first one from the list of device trees that OSTREE_DEVICETREE defines, and copy it to /lib/modules/$kver. Note that since OSTREE_DEVICETREE equals to KERNEL_DEVICETREE when it isn't explicitly defined, it could indeed be a list of device trees. Signed-off-by: antznin <agodard@witekio.com>
| * image_types_ota.bbclass: change IMAGE_BASENAME to PNMing Liu2020-07-081-1/+1
| | | | | | | | | | | | | | | | | | When setting intertask dependencies, we should use PN instead of IMAGE_BASENAME to refer to a image recipe, since PN is generated from recipe file name, while IMAGE_BASENAME is a variable that could be changed, it's not guaranteed to always equal to PN. Signed-off-by: Ming Liu <ming.liu@toradex.com>
| * ostree-kernel-initramfs: skip recipe when OSTREE_KERNEL is not definedMartin Jansa2020-07-081-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * otherwise it fails with useless error: ostree-kernel-initramfs/0.0.1-r0/temp/run.do_install.3011' failed with exit code 1: cp: -r not specified; omitting directory 'tmp-glibc/deploy/images/qemux86/' WARNING: exit code 1 from a shell command. because of cp ${DEPLOY_DIR_IMAGE}/${OSTREE_KERNEL} $kerneldir/vmlinuz in do_install will try to copy whole ${DEPLOY_DIR_IMAGE}/ when ${OSTREE_KERNEL} is empty as reported in: https://github.com/advancedtelematic/meta-updater/pull/740#issuecomment-651952735 Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
| * ostree-kernel-initramfs: deploy dtbs from OSTREE_DEVICETREEantznin2020-07-081-1/+1
| | | | | | | | Signed-off-by: antznin <agodard@witekio.com>
| * ostree-kernel-initramfs: fix parsing for MACHINEs which don't define ↵Martin Jansa2020-07-081-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | INITRAMFS_IMAGE * when INITRAMFS_IMAGE isn't defined at all, the "d.getVar('INITRAMFS_IMAGE') == ''" part doesn't do anything useful, because the unexpanded version of this ends in do_install[depends] variable and breaks parsing: meta-updater/recipes-sota/ostree-kernel-initramfs/ostree-kernel-initramfs_0.0.1.bb:do_install[depends], dependency ''][d.getVar('INITRAMFS_IMAGE') in 'virtual/kernel:do_deploy ${@['${INITRAMFS_IMAGE}:do_image_complete', ''][d.getVar('INITRAMFS_IMAGE') == '']} virtual/fakeroot-native:do_populate_sysroot' does not contain exactly one ':' character. Task 'depends' should be specified in the form 'packagename:task' Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
| * Put aktualizr-info in a separate package and use it in Secondaries.Patrick Vacek2020-07-083-9/+9
| | | | | | | | | | | | | | | | | | We did the work a while ago to make aktualizr-info work for Secondaries, but until now we weren't putting the tool into the secondary-image we use for testing. Now it's there. Actually, it's in every image that inherits from sota.bbclass, which is probably a good thing. Signed-off-by: Patrick Vacek <patrickvacek@gmail.com>
| * meta: introduce ostree-kernel-initramfs recipeMing Liu2020-07-084-26/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We package kernel image, devicetrees, initramfs and install them to /usr/lib/modules/${KERNEL_VERSION}, which is the preferred location according to ostree's new implementation, this could simplify the deployment. Reference: https://github.com/ostreedev/ostree/commit/3ab0d5e6644885440bac6abd17b6d2637df5435f To let initramfs-ostree-image be able to be depended by ostree-kernel-initramfs, it must inherit nopackages to avoid a annoying QA warning like the follows: | WARNING: initramfs-ostree-image-0.0.1-r0 do_package: Manifest ...initramfs-ostree-image.packagedata | not found in colibri_imx6 armv7ahf-neon-imx armv7at2hf-neon-imx armv7at2hf-neon armv7ahf-neon armv7at2hf-vfp | armv7ahf-vfp armv6thf-vfp armv6hf-vfp armv5tehf-vfp armv5ehf-vfp armv5thf-vfp armv5hf-vfp allarch | x86_64_x86_64-nativesdk (variant '')? Also we need define OSTREE_KERNEL, OSTREE_DEPLOY_DEVICETREE and OSTREE_DEVICETREE in sota.bbclass so they could be accessed in other recipes as well as in image recipes. Signed-off-by: Stefan Agner <stefan.agner@toradex.com> Signed-off-by: Ming Liu <ming.liu@toradex.com>
| * meta: change virtual/network-configuration to network-configurationMing Liu2020-07-0812-15/+15
| | | | | | | | | | | | | | | | | | | | The name 'virtual' is a recipe specific concept but not a package specific one, it's confusing that a package provides 'virtual/' names. Let's drop 'virtual/' from network-configuration, to keep consistent with yocto naming styles. Signed-off-by: Ming Liu <ming.liu@toradex.com>
| * aktualizr: make use of boot-complete.targetStefan Agner2020-07-081-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | From the systemd.special(7) man page section boot-complete.target: This target is intended as generic synchronization point for services that shall determine or act on whether the boot process completed successfully. Let's make use of the target. Since aktualizr by default marks a boot as successful, we consider aktualizr.service a service which needs to be executed on successful boot (hence after the boot-complete.target). This allows to declare a service as crucial by simply ordering it before the boot-complete.target. The systemd example service systemd-boot-check-no-failures.service can serve as an example. This change does not add any service dependency by default as boot-complete.target by default does not has any extra dependencies. Note that rebooting in the failure case is not handled by this mechanism. This can be added by using FailureAction. Boot assessement infrastructure got introduced with systemd 240. See also: https://systemd.io/AUTOMATIC_BOOT_ASSESSMENT/ Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
| * Add recipe to build images with binary primariesLaurent Bonnans2020-07-082-0/+23
| | | | | | | | Signed-off-by: Laurent Bonnans <laurent.bonnans@here.com>
| * image_types_ostree: allow specifying a device tree to deployantznin2020-07-081-3/+4
|/ | | | | | | | | | | When setting `OSTREE_DEPLOY_DEVICETREE` to 1, it will by default deploy all the device tree blobs present in `KERNEL_DEVICETREE`. Adding `OSTREE_DEVICETREE` would allow specifying a specific device tree blob (or several dtbs), thus resulting in only the specified ones in the image. This is particularely useful because ostree selects the first device tree it finds in /boot, and discards the remaining ones. Signed-off-by: antznin <agodard@witekio.com>
* Merge pull request #731 from advancedtelematic/feat/dunfell/2020.7lbonn2020-06-039-54/+110
|\ | | | | 2020.7 on dunfell
| * Update garage-push invocation for new clifeat/dunfell/2020.7Laurent Bonnans2020-06-021-1/+1
| | | | | | | | Signed-off-by: Laurent Bonnans <laurent.bonnans@here.com>
| * Bump aktualizr to 2020.7 revisionLaurent Bonnans2020-06-021-4/+4
| | | | | | | | | | | | And garage-sign to 0.7.1-4 Signed-off-by: Laurent Bonnans <laurent.bonnans@here.com>
| * image_types_ostree: allow to add layer specific OSTree commit argumentsStefan Agner2020-06-021-1/+2
| | | | | | | | | | | | | | | | | | | | The OSTree commit command allows to add metadata to the commit. This might be customized in a distro layer for distribution specific needs. Allow to pass extra arguments using EXTRA_OSTREE_COMMIT variable (using a variable named similar to EXTRA_OEMAKE used to pass extra make arguments). Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
| * Adding collectd coniguration for aktualizrLaurent Bonnans2020-06-023-0/+35
| | | | | | | | Signed-off-by: Laurent Bonnans <laurent.bonnans@here.com>
| * image_types_ota: use named referenceStefan Agner2020-06-021-1/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use named reference when deploying the device tree. This makes sure that this reference will end up in the deployments .origin file, which will be visible by the user in ostree admin status. This reference will also be used when running ostree admin upgrade. This is not really required when using aktualizr, but can be useful during test/debugging when using pure OSTree updates. Make sure to make ${OSTREE_REPO} accessible via http and add a remote on the device called ${OSTREE_OSNAME} pointing to the http exposed archive OSTree. With that ostree admin upgrade should work. Note: We could use the name reference in ostree pull-local already, but this is potentially racy if multiple builds are committing to the same branch. Use the OSTree commit hash to get the actual commit and recreate a local reference to this commit. This makes absolutely sure that we use the same OSTree commit this bitbake execution committed during the do_image_ostreecommit task. Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
| * image_types_ostree/ota: use hash from ostree commitStefan Agner2020-06-022-13/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Relying on a OSTree branch reference has been problematic in the past and addressed by adding more attributes to it in commit 202a8c70ba8c ("image_types_ostree: Add a unique ref to fix simultaneous bitbaking."). However, depening on what kind of OpenEmbedded builds are running in parallel, even more attributes would need to be taken into account. Instead of relying on a reference, store the exact ostree commit hash in a manifest file and reuse it in the do_image_ota deploy task. This guarantees that the correct reference gets picked even when two builds with the exact same machine/image name run in parallel. Note: This gets rid of the second branch name again. If the branch name with image name is preferred, the variable OSTREE_BRANCHNAME can be used: OSTREE_BRANCHNAME = "${SOTA_HARDWARE_ID}-${IMAGE_BASENAME}" Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
| * initramfs-ostree-image: drop qemuboot from IMAGE_CLASSESMing Liu2020-06-021-1/+1
| | | | | | | | | | | | | | To avoid generating a qemuboot.conf for qemu machines, it's useless for a initramfs image. Signed-off-by: Ming Liu <ming.liu@toradex.com>
| * sota_sanity.bbclass: introduce sota_check_boolean_variableMing Liu2020-06-024-13/+20
| | | | | | | | | | | | | | | | | | | | The current sanity check are too strict for some boolean variables, introduce sota_check_boolean_variable to allow a boolean value to be set like yes/y/true/t/1 or no/n/false/f/0. Also change to use oe.types.boolean to check their values. Signed-off-by: Ming Liu <ming.liu@toradex.com>
| * image_types_ostree/ota: move home physically to /var/rootdirs/homeStefan Agner2020-06-022-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of using the double indirection mode /home -> /var/rootdirs/home -> /sysroot/home move the home directory physically into /var/rootdirs. This allows to use the --modern flag when initializing the file system. The "old" style is still supported, and does make sense in case the home directories need to be shared between multiple deployments. Since multiple deployments is not a use case in meta-updater use the /var approach. See also: https://github.com/ostreedev/ostree/issues/2085. The modern flag also gets rid of dev, proc, root, run, sys and tmp. All of them have been empty and unused. Note: This change cannot be pushed through updates as this is an initial deployment setting. Only devices provisioned with images built with this change applied will use the new layout. Updates will continue to work on both systems as the symlink from the deployment stays the same (first indirection is still /home -> /var/rootdirs/home). Signed-off-by: Stefan Agner <stefan.agner@toradex.com>