According to the documentation you should be able to setup the exec runner for a non-root user by putting the config file inside
~/.drone-runner-exec/config however, when you need to setup the exec runner you need to run
drone-runner-exec service install which needs to be run by using
sudo or by the root user, in either case your current user for that process gets changed to root, which means you can only install the drone exec runner as root.
What I have found out is that drone-runner-exec uses
os/user which in turn uses the syscall
getUID to get the current user. getUID will return root when running it with
sudo and that’s why this bug occurs.
My suggestion would be to use
who am i to get the current user and set the right configuration by that.
who am i both will return the current logged in user even when using
sudo to call them. which would fix the problem