-
Notifications
You must be signed in to change notification settings - Fork 568
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
Cannot build Mariner 2 iso with Ubuntu 18.04/arm64v8 container #6023
Comments
From the logs I could notice |
I was unable to update the rpm tools as the latest version in the container version, Ubuntu 18.04 is 4.14.1. I saw that error and it seems related to sqlite but I'm not sure exactly what it means. Attached is another build output after make clean. Failure looks slightly different but still about $CHROOT. |
Yes, the container mentioned in the title (arm64v8/ubuntu:18.04) is a Docker container. I tried manually creating that env variable with what it looked like the location should be in the Makefile - $BUILD_DIR/worker/chroot, but there was another failure that wasn't as obvious and I thought there was more broken than just a missing variable. I can provide that output if it would be helpful. What additional info can I provide or what do you suggest I try? |
As an additional note, I'm also building Mariner in a Docker Ubuntu 18.04 x86 container and have the same issue. Any info on what might need to be configured or changed in my enviroment is much appreciated. |
Also, I'm using regular build commands in my Docker container, not anything special for "Docker based pipeline." If the build commands or process is different from a regular native build, that may be the issue. I will investigate the build documentation for Docker specific information. |
I think the commands that you are using are specific for a The container has a slightly different handling of the chroots. The docs are w.r.t to a build in the VM. |
I need to cross build arm64 on a x86 system. Rachel Menge provided a document for this using a Docker container on Mariner 1.0, but I need to generate a Mariner 2.0 image. https://github.com/rlmenge/cblmarinerdemo-cross-build I have been using this document but adjusting for 2.0, maybe I missed something. Can I get assistance with building in a container? |
Also, I don't believe the documents clearly state that the commands are only for building in a VM. |
/cc @rlmenge |
I see the container link above has been updated since the document I was provided. I will try these steps and report the results. |
Unfortunately this fails too on add-apt-repo RUN command in the Dockerfile. Although even if it worked, its still creating an environment for Mariner 1.0 and I need to build a Mariner 2.0 image. I will see if I can make some minor mods to get it working. |
So, I updated the files in the link above for 2.0-stable and it fails in the same place eventually with the same test failures and CHROOT_DIR error. Although the changes I made are the same ones I made doing a manual container build for 2.0, so I may have made the same configuration errors or omissions. |
Just some context here, this repo was created in to spin up an ARM container on x86 machines to enable building ARM images locally because CBL-Mariner only builds on native architecture. It is designed to work on 18.04 Ubuntu for CBL-Mariner 1.0 and is not officially supported. That being said, all it does is
|
cbl-mariner builds okay on an aarch64 vm following instructions at https://github.com/microsoft/CBL-Mariner/blob/2.0/toolkit/docs/quick_start/quickstart.md. After installing the prereqs the toolkit was built using build output
The instructions provided at https://github.com/rlmenge/cblmarinerdemo-cross-build are outdated and broken. VM info from the new ISO:
|
I came here with similar issues building the Mariner toolkit inside an Ubuntu container. Having followed the guide for setting-up the environment, the thing that unblock me was to rename the Providing you're running your container with |
Thanks @JamesDawson, I had tried those things as well and my container is priviileged, but still no joy. Happy its working for you. I have some internal network proxy challenges that are more easily overcome with containers, but potentially its still an issue in this unsupported build mode. I'm working on using both a fully external build system and in parallel working on the proxy config to build inside our network. |
Trying to build basic arm iso. Build fails with "ERRO[0000] env variable CHROOT_DIR not defined" after packages are added to chroot. Full build output attached.
build_out.txt
The text was updated successfully, but these errors were encountered: