Page tree
Skip to end of metadata
Go to start of metadata


v.0.1 - WIP


The Eden project is about: 

  • Build & deploy EVE with ADAM and other runtime supplements in Docker containers and control this deployment
  • Administer existing configurations (now only one or controller command)
  • Upgrade EVE images on any amount of devices
  • Handle test suits and configuration of tests
  • Run runtime test suits and provide comprehensive logs
    • Test 1/10 : Test name 1 : Passed
    • Test 2/10 : Test name 2: Failed log: 
      • < error >
  • Discover EVEs and get comprehensive configurations from ADAM
  • Monitor existing EVE/ADAM for critical errors
  • View EVE and ADAM logs and filter logs 
  • Deploy containers/EVE VM's to any amount of EVEs


  • Does user change config manually - yes validate the config overall - syntax  - optional (default on). 
  • Now we don't have options to substitute modules  - no package manager for EVE

Building EVE

builds are done in a separate place. Eden can work only with pre-built binaries. 


Now EDEN supports only one ADAM/ one EVE

  • eden config + eden setup + eden start - creates config, downloads  base docker images + repack docker image for HTTP access from EVE 
  • eden status. 
  • I should be able to set a command for taking eve from my git repo or local folder, build it and deploy.
  • If I change the config it should be tested against formal requirements before any deploy/change is done

Work with existing  EVE/ADAM

I wanna be able to pass explicitly ADAM parameters and use ADAM + EVEs that are connected to this ADAM to

  • start
  • stop
  • update eve image
  • update eve certificates
  • reboot
  • create/delete/update/list networks
  • create/delete/update/list resources (e.g. external mounts)
  • run tests and get their status in a comprehensive way

  • get status of the EVE/ADAM components
  • list EVE workload components and their status
  • get logs from any EVE/ADAM
  • get logs from EVE/ADAM workloads

Running tests

Test bundles.  - A list of go tests.

I should be able to list test bundles




inside /tests/test1/../../

I should be able to create test bundle by listing  individual items

I should be able to get a comprehensive description of a test bundle

I should be able to run a test bundle and on each stage be sure what happens with the test. Get what item am I running and it's stage.

I should be able to turn off (and it should be default option) any output except SUCCESS/PASSED for individual items

I should be able at any time get a  sequential number and the name of the test in the itemlist

I should get back the error of the test once it occurs.

I should have an option to stop the test on the first occurred error or continue. In that case I would like to see

Test 1/10: Test name 1 -PASSED

Test 2/10: Test name 2 - FAILED

 <Error log>

Test 3/10: Test name 3 - PASSED

Proposed commands:


A config is a configuration of eden. It contains  EDEN setup and handles the default config that is used in other commands

  • eden config generate default
  • eden config add 
  • eden config list
  • eden config delete
  • eden config set-context 


Eden itself as a bundle. When Eden is started or stopped all services within eden are started and stopped.

Status returns the list of all eden services from the current config.

  • eden start/stop/restart/status

Eden adam

Work with adams in the eden config

  • eden adam list
  • eden adam start/stop/restart/status
  • eden adam get-config
  • eden adam update-config
  • eden adam logs

Eden eve

Work with eve in the eden config

  • eden eve list
  • eden eve start/stop/restart/status
  • eden eve eveimage-update
  • eden eve eveimage-remove
  • eden eve update-config
  • eden eve logs
  • eden eve get-config
  • eden eve attach
  • eden eve exec

Eden tests

Perform tests within current eden config. Works with test bundles that are a list of go tests executed sequentially

  • eden tests list
  • eden tests add
  • eden tests delete
  • eden tests start
  • eden tests stop
  • eden tests logs

Eden pods

Work with containers within eves from eden config

  • eden pod list
  • eden pod add
  • eden pod run
  • eden pod delete
  • eden pod start/stop/restart/status
  • eden pod logs
  • eden pod attach
  • eden pod exec

Write a comment…