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

Eden doesn't support the use of custom built image with additional package #572

Open
TheodoreGC opened this issue Mar 31, 2021 · 1 comment

Comments

@TheodoreGC
Copy link

Description

Eden doesn't work when intending to setup a playground using a custom image of an additional package fetched from the dockerhub registry or built locally.

Steps to Reproduce

This is using k3s and a arm64 arch as an example. The targeted device is a Raspberry Pi 4. The tag used doesn't matter but helps illustrating the issue encountered here.

Example with Dockerhub registry

Fetch the docker image:

docker pull lfedge/eve-k3s:a5ec95f0c7d7914bf1a9da91d87fefb6a91ec9a7-arm64

Example with locally built image

In EVE repository:

make eve-k3s

Create a Eden playground:

In EDEN repository

make build
./eden config add default --devmodel RPi4
./eden config set default --key adam.eve-ip --value <your adam external ip>
./eden setup --eve-tag a5ec95f0c7d7914bf1a9da91d87fefb6a91ec9a7 --eve-arch arm64

Actual Results

INFO[0011] GenerateEveCerts done                        
INFO[0011] GenerateEVEConfig done                       
ERRO[0015] cannot download EVE: ImagePull (lfedge/eve:a5ec95f0c7d7914bf1a9da91d87fefb6a91ec9a7-kvm-arm64): imagePull: Error response from daemon: manifest for lfedge/eve:a5ec95f0c7d7914bf1a9da91d87fefb6a91ec9a7-kvm-arm64 not found: manifest unknown: manifest unknown 
To activate EDEN settings run:
* for BASH -- `source ~/.eden/activate.sh`
* for TCSH -- `source ~/.eden/activate.csh`
To deactivate them -- eden_deactivate

Expected Results

INFO[0011] GenerateEveCerts done                        
INFO[0011] GenerateEVEConfig done                       
[...]
NFO[0060] download EVE done: lfedge/eve-k3s:a5ec95f0c7d7914bf1a9da91d87fefb6a91ec9a7-arm64
INFO[0060] Write file /Users/theo/Projects/eden/dist/default-images/eve/live.img to sd (it is in raw format) 
To activate EDEN settings run:
* for BASH -- `source ~/.eden/activate.sh`
* for TCSH -- `source ~/.eden/activate.csh`
To deactivate them -- eden_deactivate

Additional Information

The image can't be found because the link is wrong. EDEN can't "build" the image name properly in this case.

Whether it is an issue with EDEN handling of image nomenclature or the name of the image itself, it is not possible to create a playground with custom image for an additional package out of the box.

References:

  • The custom image retrieved from dockerhub doesn't follow the nomenclature expected from EDEN (no hypervisor in the string).
  • the prefix 'eve:' is hardcoded and can be found in the downloader.go. The prefix for the custom image in this case is 'eve-k3s:'.
@eriknordmark
Copy link
Contributor

@TheodoreGC Perhaps the documentation isn't clear, but eve-k3s built from pkg/k3s is an application which can be uploaded and deployed on top of EVE, and Eden needs the eve image to deploy on the device. That image is built using 'make eve' which produces a tag.

But do you have any modifications to EVE? If not you can just run Eden with the default EVE version without specifying a tag.

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

No branches or pull requests

2 participants