aboutsummaryrefslogtreecommitdiffstats
path: root/recipes-containers/crun/crun_git.bb
AgeCommit message (Collapse)Author
2021-10-18crun: fix offline buildshonister-netBruce Ashfield
The 'autogen.sh' script of crun was fetching dependencies that we already have in our SRC_URI. We want the OE git fetcher to manage the source, not scripts in the source of a package. We grab the two lines out of autogen.sh that we need, and use them directly in the configure_prepend. We also add yajl to the source code dependencies as the package DEPENDS is not enough as crun is explicitly building source that looks for the yajl code. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-08-27crun: update to 0.21-latestBruce Ashfield
Bumping crun to version 0.21-15-g360f5d0, which comprises the following commits: 2199d10 tests: update containerd version 1798d5a cgroup: chown cgroup to root b5cdeb5 cgroupv1: add support for setting memory.use_hierarchy 7cfdf09 Makefile.am: link libcrun to $(FOUND_LIBS) d4d1825 linux: treat pidfd_open EINVAL as ESRCH 62149b3 Update nixpkgs ac00581 Dockerfile: delete file c4c3cdf NEWS: release 0.21 69bd7dc Doc: cgroups v2 and RT processes unsupported 6397998 krun/kvm: crun should silently/gracefully switch to krun when needed. 92499bd container: wrap execv in retry-on-eintr b04a335 cgroup: lookup pids controller as well 448494e README.md: drop travis badge 1bbf562 Reflect #696 in crun's manpage e836219 rpm: fix license 2b88faa status: add fields for owner and created timestamp b07c389 criu: fix error check 09401bb linux: fix unitialized variable b222968 cgroup: fix a memory leak Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-08-02global: overrides syntax conversionBruce Ashfield
OEcore/bitbake are moving to use the clearer ":" as an overrides separator. This is pass one of updating the meta-virt recipes to use that syntax. This has only been minimally build/runtime tested, more changes will be required for missed overrides, or incorrect conversions Note: A recent bitbake is required: commit 75fad23fc06c008a03414a1fc288a8614c6af9ca Author: Richard Purdie <richard.purdie@linuxfoundation.org> Date: Sun Jul 18 12:59:15 2021 +0100 bitbake: data_smart/parse: Allow ':' characters in variable/function names It is becomming increasingly clear we need to find a way to show what is/is not an override in our syntax. We need to do this in a way which is clear to users, readable and in a way we can transition to. The most effective way I've found to this is to use the ":" charater to directly replace "_" where an override is being specified. This includes "append", "prepend" and "remove" which are effectively special override directives. This patch simply adds the character to the parser so bitbake accepts the value but maps it back to "_" internally so there is no behaviour change. This change is simple enough it could potentially be backported to older version of bitbake meaning layers using the new syntax/markup could work with older releases. Even if other no other changes are accepted at this time and we don't backport, it does set us on a path where at some point in future we could require a more explict syntax. I've tested this patch by converting oe-core/meta-yocto to the new syntax for overrides (9000+ changes) and then seeing that builds continue to work with this patch. (Bitbake rev: 0dbbb4547cb2570d2ce607e9a53459df3c0ac284) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-07-14crun: adjust image-spec repository from master to mainBruce Ashfield
We need to change our branch to avoid parse errors. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-06-30crun: add seccomp distro features checkBruce Ashfield
Since seccomp depends on libseccomp, and seccomp is only available when the distro feature is enabled, we add the same dependency and distro feature check to this recipe. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-06-21crun: update to latestBruce Ashfield
Bumping crun to version 0.20.1-7-g7ef74c9, which comprises the following commits: b07c389 criu: fix error check 09401bb linux: fix unitialized variable b222968 cgroup: fix a memory leak 1182975 cgroup: honor memory swappiness set to 0 38271d1 NEWS: tag 0.20.1 923447b container: ignore resetting keyring SELinux label b26493f Dockerfile: install required python3-jinja2 package 0d42f11 NEWS: tag 0.20 9042ac5 seccomp: drop SECCOMP_FILTER_FLAG_LOG by default 0f4156f cgroup: Refactor libcrun-cgroup-destory to support picking subsystems dynamically and clean custom controllers. d6be344 cgroup: ignore devices errors in a userns 6e187fb cgroup: do not join empty controller badb23d seccomp: report correct action in error message 5201956 container: apply SELinux label to keyring 4b664e9 linux: attempt to open existing dev file first dd1c419 libocispec: sync from upstream 5f74e2a Makefile.am: make sure libocispec uses main branch f0c76e1 utils: close_range fallbacks to close on EPERM 1596ab1 Update crun manual with recently added flags 1d84d62 Fix type for LinuxDeviceCgroup.linux.resources.devices.allow in default Spec 62d251d container: call prestart hooks before rootfs is RO 48bc33d Exec: Add --process-label and --apparmor to allow modifying selinux_label and apparmor_profile 0e53e87 Exec: Add --no-new-privs to and adhere if noNewPriviledges is false in basespec config 2de8b43 Fix SIGSEGV for rootless container caused by case when def->linux is defined but def->linux->cgroups_path is NULL 54e77c2 Add support for spec --bundle ae11886 cgroup: fix regression in mode detection 194b72d kill: fix race condition with pidfd_open 2910d9b cgroup: add custom annotation run.oci.delegate-cgroup 407eef9 cgroup: drop argument from function 0485de6 cgroup: report error if the cgroup path was set bf5020a cgroup: improve error message a131715 cgroup: fix recursive cleanup 6e95060 cgroup: kill procs in cgroup on EBUSY 0274d6f tests: disable go modules 1272eaf tests: skip podman create --pull 04f1a6a container: read the error from the init process 29afcd6 Update README.md 9863a8e Update README.md 55f5ed5 utils: use /proc/self/fd to open unix socket fa40930 contrib: fix warning from the rust compiler 1535fed NEWS: tag 0.19.1 227e0be spec: add cgroup ns if on cgroup v2 3fbe777 libcrun: add const to spec_file eb34661 libcrun: annotate cgroup_mode < 0 checks 92bcc81 tests: add fuzzing tests af3509d cgroup: support array of strings 9effaeb On exec, honor additional_gids from the process spec, not the container definition Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-06-21crun: switch to main as specified branchBruce Ashfield
The upstream project has moved from master to main, so we adjust our recipe accordingly. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-05-19crun: switch branch to mainBruce Ashfield
crun has renamed master -> main, so we adjust our fetching to match. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-04-26crun: use REQUIRED_DISTRO_FEATURES to indicate systemd dependencyBruce Ashfield
crun has a hard dependency on systemd, we need to add it to the recipe to avoid failing package QA checks. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-04-12crun: bump to latestBruce Ashfield
As part of this update to crun, we now much run autogen.sh before running configure. Otherwise, these are incremental changes and comprise the following commits: 9effaeb On exec, honor additional_gids from the process spec, not the container definition c25a2db tests: add explicit python3-pip dependency e67a756 NEWS: tag 0.19 18c0274 gitignore: update 471a7b8 libocispec: update from upstream f642968 tests: fix check for cgroup v2 3e7fa1d linux: always remount bind mounts 78aeac9 linux: ignore unknown capabilities f11d742 Add linuxdevicecgroup to maintain parity with runc spec 9aa382b cgroup: skip parsing empty file d9c9fd0 container: initialize tmp_err 00371ae src: initialize statx struct 2e88d19 src: initialize first_arg 5e4efb7 seccomp: always NUL terminate lowercase_arch 7812572 tests: add test for seccomp listener f80e98d init: add check for seccomp listener 5d9010b init: fix check for nargs 5a627f4 seccomp: support notify listener c3361c1 status: use function to convert from yajl errors 873b62d container: use new error function for hooks JSON 14083ab error: new function to convert from yajl errors 6e19235 linux: pass own pid to container process 8fd3320 contrib: new tool to test seccomp notifications 8722858 crun: always use absolute path for the bundle ae9ea92 container: improve OOM error message 919aac9 utils: receive fd detect closed connection a52e480 cgroup: new function to detect OOM 2e37d2a sync-libocispec 75ad96b Let autogen.sh generate m4 14c260f libcrun_warn if newuidmap/newgidmap invoke fails 5598401 README.md: drop pids limit comparison 9ea6857 github: add fuzzing test 0fd03ba tests: add container image for fuzzing libcrun bbd5c7d fuzzer: reap child processes c7350ef tests: add more fuzzing tests 816f95b fuzzer: merge two tests effa508 linux: cleanup zombie on errors b32f1eb linux: release only on error 5ca72f5 status: attempt open again on interrupts 9b5d4c1 Added static analysis Adding clang compilation Fixing comparison of integers of different signs 3b199ef Update GNUmakefile dcd1a34 linux: label the tmpfs for masked directories edf7f15 seccomp: check if the action supports errnoRet bc222b6 seccomp: fail if no default action specified 0c5b920 seccomp: honor default errno value 92c0afe yajl: support static link of containers/yajl f3d920d src: fix unitialized variable 7d89a02 src: add error check 765971c status: fix memory leak on error 31274d8 utils: fix check for fd 62d1c4d tests: add test to feed honggfuzz ab75091 ebpf: return the program instead of NULL 8b16552 src: check if seccomp is defined f721efb container: fix error ownership 4472e35 container: allow config from memory 6b369b8 container: fix memory leak 0fede0f container: initialize variable 2b6c0b6 container: fix dereference of def->linux if NULL 1dd9b5b container: check for def->process before deref 1b1a691 fix: cross-compiling for Android b25cb2d tests: add device access test 86251b0 ebpf: handle access(dev_name, F_OK) call correctly e2d79dc fix: access violate if ret < -2 4f35406 cgroup: read controllers from /proc/self/cgroup Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-02-24crun: update to 0.18Bruce Ashfield
Bumping to the release, which pulls in the 808420e release: distribute CHECKSUMS file c2b0064 build-aux: provide arm build without systemd 7cc03f7 .gitignore: update file f5274bd NEWS: tag 0.18 94e8364 src: add missing definitions baed691 libocispec: sync from upstream 8d0ebf6 Add arm64 static binary build b66d5d9 tests: fix make check in a user namespace e10205e linux: remove temporary mount logic 7819f4c linux: use targetfd for move_mount 891cd3c linux: use safe_openat for masked/readonly paths 6c5577f linux: use new function 9aa264d utils: add function to safely create and open 436daef src: add function to cleanup container struct c955ece src: pull function out 7bd51a0 build: check for linux/openat2.h dcb1914 utils: add function to remove initial slashes a1c958c utils: memoize check result 25c6f07 container: rename function to get_root_in_the_userns f08bd31 src: fix leak of the descriptors buffer df88061 tests: disable more Podman flaky tests 052bab7 utils: set HOME to root if the user not found efe35f1 linux: ignore ENOSYS on keyctl 1b65163 tests: enable asan sanitizer a0f322a tests: build init always statically a656698 configure.ac: allow to disable dl support 6adb26b tests: disable hooks_stdin for oci-validation 06199c7 tests: update to podman 3.0 bc888b9 tests: disable podman pull test f1373f9 tests: install crun under /usr/bin 257f442 Fix permission error when using both user namespaces & NOTIFY_SOCKET 617a212 cgroup: skip +cpu on EINVAL in cgroup root b6ac8de linux: use safe_openat for tmpcopyup 2d1f910 utils: avoid reopening the root during lookup 3ce74e8 utils: fix symlink lookup cbb67ae container: set working directory for libkrun df01709 seccomp: custom annotation to load raw bpf b229dca linux: refactor allocate_tmp_mounts 68bb50f linux: disable temporary mounts with [r]slave d6ae36b libocispec: update from upstream 487e792 github: enable clang-format checks 61d6844 src: run make clang-format 1d559d0 clang-format: change ColumnLimit to 0 643d05b linux: disable temporary mounts with [r]shared de6082f cgroup: fix conversion from blkio to io 1db8312 Update nix pin with `make nixpkgs` 540444c Makefile.am: crun depends on libocispec.la 1df96e5 linux: fix build without CLONE_NEWCGROUP Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-02-06crun: update to 0.17Bruce Ashfield
We bump crun, and its dependency repositories to their latest revisions. Along with the code changes, we have a new systemd dependency (or the build fails), and the License was incorrectly set to GPLv3 previously, and we correct it to v2 as part of this update. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2019-10-13crun: introduce crun (OCI runtime provider)Bruce Ashfield
Create the initial recipe to provide crun as an alternative OCI runtime provider. This currently has a depdenency on seccomp, but it would be nice if we can make that optional in the future to avoid pulling in all of meta-security as a dependency. Example: % skopeo copy docker://busybox oci:busybox-oci:latest % mkdir busybox-bundle % oci-image-tool create --ref platform.os=linux busybox-oci busybox-bundle % cd busybox-bundle/ % rm config.json % runc spec % runc run foo ^D % crun run foo ^D Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>