Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

crun: add package crun #15306

Merged
merged 4 commits into from
Mar 29, 2021
Merged

crun: add package crun #15306

merged 4 commits into from
Mar 29, 2021

Conversation

oskarirauta
Copy link
Contributor

Maintainer: Oskari Rauta / @oskarirauta
Compile tested: 86_64, xeon powered server, OpenWRT snapshot (recent)
Run tested: 86_64, xeon powered server, OpenWRT snapshot (recent), tested: works as supposed

Description:
A fast and low-memory footprint OCI Container Runtime fully written in C.

Crun is preferred (by podman) alternative to runc. I wrote myself as a maintainer, but I don't have issue if Daniel Golle, @dangowrt wants to take over from here ;)

@dangowrt
Copy link
Member

I wrote myself as a maintainer, but I don't have issue if Daniel Golle, @dangowrt wants to take over from here ;)

I'd be very glad if you can take care of it, and even more if you'd like to take over podman and conmon as well ;)
I currently focus on getting uxc (ie. procd-ujail + frontent) to work well enough to pass test cases in https://github.com/opencontainers/runtime-tools.git which should then also allow using that instead of runc or crun (currently even runc fails more than half of the tests when running on OpenWrt, so there is work to do...).

@oskarirauta
Copy link
Contributor Author

oskarirauta commented Mar 29, 2021

I'd be very glad if you can take care of it, and even more if you'd like to take over podman and conmon as well ;)
I currently focus on getting uxc (ie. procd-ujail + frontent) to work well enough to pass test cases in https://github.com/opencontainers/runtime-tools.git which should then also allow using that instead of runc or crun (currently even runc fails more than half of the tests when running on OpenWrt, so there is work to do...).

That works too, except that formatting these pr's correctly takes more time than coding ;) Well, getting there, this on already went way better than previous one. Although, help is still required. One of tests: arc_archs fails to error of unknown machine type. How do I get my way around that? Where should I let it know the machine type? By machine type, does it mean like router, has, desktop types?

It also doesn't seem to fail on crun, it fails on decency libseccomp....

@oskarirauta
Copy link
Contributor Author

oskarirauta commented Mar 29, 2021

Thanks :) That was a valuable lesson :)

But now it's broken.....

@oskarirauta
Copy link
Contributor Author

Also podman requires veth, but upcoming pr already has it in depends..

dangowrt and others added 4 commits March 29, 2021 23:20
ARC architecture is not yet supported by libseccomp.

Signed-off-by: Daniel Golle <[email protected]>
cni-plugins makes use of veth, make sure kernel module is installed.

Signed-off-by: Daniel Golle <[email protected]>
crun is the prefered container run-time of podman, it's faster than
runc and has a much lower memory footprint.

Signed-off-by: Daniel Golle <[email protected]>
Signed-off-by: Oskari Rauta <[email protected]>
Now that 'crun' has been packaged, add support for it in podman.

Signed-off-by: Daniel Golle <[email protected]>
@oskarirauta
Copy link
Contributor Author

I'll submit pr for updated podman after this is pushed.

@dangowrt
Copy link
Member

Nice, I'll merge this once tests have completed and I gave the resulting artifacts a test-run on aarch64-cortex53. First tests looked like it all works :)

@oskarirauta
Copy link
Contributor Author

Actually, I'll do it tomorrow- it's starting to get real late....

@dangowrt
Copy link
Member

test-suite results on aarch64-cortexa53

Using runc:

Suites:   26 failed, 12 passed, 20 skip, 58 of 58 completed
Asserts:  91 failed, 59 passed, 20 skip, of 170
Time:     1m

Using crun:

Suites:   22 failed, 15 passed, 21 skip, 58 of 58 completed
Asserts:  53 failed, 65 passed, 21 skip, of 139
Time:     1m

@dangowrt dangowrt merged commit 954be76 into openwrt:master Mar 29, 2021
@senlisu
Copy link

senlisu commented Mar 30, 2021

@dangowrt Any plans to backport this (crun port) to 21.02?

@dangowrt
Copy link
Member

@senlisu Yes, I'll backport this to 21.02.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants