I think we could define better how we will make the communication CLI with
the Docker development instance in the new architecture. The container
needs a running process to stay active. We could make a communication via
API endpoints to keep a web service running on the container receiving
information from the CLI for the execution of tasks in Marvin. I created a
use-case scenario to facilitate understanding and further discussion.

Scenario: A developer created an engine on marvin through the CLI, he
configures his engine in order to describe all the dependencies of the
operating system that will be used during development. After the engine
configuration process, the developer uses the CLI to upload a development
environment on a Docker container, that development environment will
contain the refined Marvin toolbox. The CLI then changes its interface in
order to contain the standard commands for using engines. He uses the CLI
to communicate with the toolbox endpoints and inform that he wants to run
an instance of the notebook. After building the model, the developer can,
through the CLI, perform a dryrun and upload the http-server for testing.
All of these procedures will be done using the communication through API
endpoints.

Does that sound like a good strategy? Do you have any suggestions, or
something that was already foreseen in the original project?

Best regards,
Lucas Cardoso

Reply via email to