Build Arcanist Docker images by user
Summary:
On Docker development server, arc shell offers a Debian userland
with Arcanist and Git to interact with Phabricator repositories,
commit, merge, etc.
This is intended to ease the test and maintenance of the Docker images
repositories directly on a Docker development server.
Currently, those containers run as root. Regardless if it's acceptable
or not from a security point of view, this method has a major usability
drawback when the Git index is manipulated, as it populates files owned
by root, requiring afterwards a chown.
This change offers to run the container under the own user id. This user
must exist in the image to avoid issues with SSH client and should exist
to avoid the "I have no name!" prompt. As such, a custom build is needed.
The custom image uses the set (UID, GID) as image tag. The GID ensures
minimal friction when creating directories or working with group permissions.
Test Plan:
- Build on Dwellers
- arc shell created and used nasqueron/arcanist:5001-5001 image
- SSH works
- arc shell doesn't try to build the image a second time
Reviewers: dereckson
Reviewed By: dereckson
Differential Revision: https://devcentral.nasqueron.org/D2342