DROID is primarily designed to run commands using the Workflow buttons on the web pages, but I also want developers like me and @beckyjackson to be able to log in to the DROID server do work on branches.
With the current system, I usually
- log in as
james
- resume my
tmux session
- start a new tmux window
cd to a branch directory, e.g. /var/www/droid.ontodev.com/projects/ONTIE/workspace/master
- split my tmux window vertically
sudo su then start my editor
sudo docker exec -it ONTIE-master bash to run stuff inside the container
I'm not happy about the sudo su then editor step. I think that I should be able to just create/delete/edit files as james but I invariably mess up permissions, and then Becky can't work with the files I create without sudo, or vice versa. I also have trouble working with git: if I run git as me then there are permission problems with the .git/ directory; if I run git as root then I don't have my GitHub credentials.
I think there should be some combination of setgid and/or sticky bits that would make this work smoothly.
(Alternatively, I could install my preferred tools and configuration into the Docker container, but I worry that would leak secrets such as my GitHub credentials.)
The upshot is that we should be able to install our preferred tools and configuration in our user accounts and just do our work. This should include things like our own GitHub credentials. And it should also support remote editing tools for GUI editors such as Sublime and VSCode.
DROID is primarily designed to run commands using the Workflow buttons on the web pages, but I also want developers like me and @beckyjackson to be able to log in to the DROID server do work on branches.
With the current system, I usually
jamestmuxsessioncdto a branch directory, e.g. /var/www/droid.ontodev.com/projects/ONTIE/workspace/mastersudo suthen start my editorsudo docker exec -it ONTIE-master bashto run stuff inside the containerI'm not happy about the
sudo suthen editor step. I think that I should be able to just create/delete/edit files asjamesbut I invariably mess up permissions, and then Becky can't work with the files I create withoutsudo, or vice versa. I also have trouble working withgit: if I rungitas me then there are permission problems with the.git/directory; if I rungitasrootthen I don't have my GitHub credentials.I think there should be some combination of
setgidand/or sticky bits that would make this work smoothly.(Alternatively, I could install my preferred tools and configuration into the Docker container, but I worry that would leak secrets such as my GitHub credentials.)
The upshot is that we should be able to install our preferred tools and configuration in our user accounts and just do our work. This should include things like our own GitHub credentials. And it should also support remote editing tools for GUI editors such as Sublime and VSCode.