-
Notifications
You must be signed in to change notification settings - Fork 0
Developer Details
docker build -t gluetube-dev:0.1.0 -f dockerfile.dev .
docker volume create gluetube-db
docker volume create gluetube-cfg
docker run -itd --name gluetube-dev --net=host -v ~/code/gluetube/gluetube:/home/gluetube/.local/lib/python3.10/site-packages/gluetube -v ~/code/test_pipelines:/home/gluetube/.gluetube/pipelines -v gluetube-db:/home/gluetube/.gluetube/db gluetube-dev:0.1.0
docker exec -it gluetube-dev bash
Interfaces (cli, gui) interact with the gluetubed socket. The daemon is responsible for making changes to both the scheduler and the database. Treat the database only as a user facing state view.
If a pipeline is in the database, then it should be scheduled. It can be paused and not running, but still registered in the scheduler. Then, if a pipeline is removed, it is deleted from the database and deleted from the scheduler.
Remember, don't touch the db directly. All write should be through an RPC call, otherwise there will be db/scheduler mis-matches which whould require a daemon reload to resolve.
The encrypted secrets are stored as url-safe base64 encoding as text. The salt is stored as url-safe base64 encoding text as well.
For the eventual frontend ui, it should be dynamic like a SPA to allow for the front-end attaching to a pipeline process and outputting the stdout to the user.
...