\1. config.kubernetesHostNameOrIPEnvVar env var is present then we run in kube. In that case we launch the tasksystem
The tasksystem startup will decide whether it starts in app, queue or follower mode
The user of the tasksystem resource needs to act accordingly, in particular it should IO-block forever when it is a follower
MY_POD_IP not present then we run outside of kube. Creates a container and launches it which will eventually end up in 1. This process continues to trail the log of the newly created container
Attributes
Returns
If this is an App role then whatever the app produces in an option (Some[T]) otherwise if this is a bootstrap process or worker process then returns None
if this is a bootstrap process then the IO completes when the log stream completes
if this is a worker role then the IO never completes (pod must be deleted by the main role)
if this is a master role then the IO completes when the useTs completes and the task system is closed