A simple python script scheduler with a shared local key-value database. Meant to enable easy automation and integration of infrastructure and systems. Like cron, but with more bells and whistles.
There are two ways to deploy gluetube.
- docker
- virtual machine / bare metal
docker volume create gluetube-cfgdocker volume create gluetube-dbdocker run -d --init --name gluetube -v gluetube-cfg:/home/gluetube/.gluetube/etc -v gluetube-db:/home/gluetube/.gluetube/db ctomkow/gluetubedocker exec -it gluetube bashgt db --rekeydocker restart gluetube
adduser gluetubepip install --user gluetubegt --configuregt db --initgt daemon --backgroundgt db --rekeygt daemon --stopgt daemon --background
gt --help
gt summary
gt schedule 1 --now
You are meant to develop your own pipelines in python for gluetube. The following is a brief description of how to get your development environment setup. These instructions assume you use VS code and docker.
-
docker pull ctomkow/gluetube -
docker volume create gluetube-db -
docker volume create gluetube-cfg -
docker run -itd --name gluetube --net=host -v gluetube-db:/home/gluetube/.gluetube/db -v gluetube-cfg:/home/gluetube/.gluetube/etc ctomkow/gluetube:latest -
Open VS code. In the docker-> containers section, right-click on the running gluetube container and
attach visual studio codeto running container. -
Within the container terminal, enter the pipelines directory.
cd pipelines -
Clone a repository.
git clone <url> .Note the.at the end of the git clone. This is important because we don't want the project folder as a subdirectory. -
Now you can develop your pipelines (.py files) while having a live gluetube daemon running within the container. All the gluetube cli commands are available to test out your pipeline code in a production-like environment.
gt --help