For the OSS release, we'd like to not rely on the current SCM deployment environment that sf.net uses, including
Instead, we'd like to have a FUSE filesystem that runs without need for patched ssh/scm tools. We already have the start of one. To complete it, we need
There is a little more to this, as users in allura need to appear as users on the scm hosting system. The initial approach will be to use schroot to create a chroot jail inside which sshd will run (and inside which sshd will determine who is allowed to login). We will then use a FUSE to manage the /etc filesystem in the chroot so that an Allura-generated /etc/passwd and allura-generated /etc/shadow appear. We will also manage the /home directory in the chroot as well as /git /hg and /svn directories (for access control).
Test link to commit [2aa174]
I should mention that the approach changed a bit -- now the chroot includes an LDAP server (slapd) which manages the passwd and group databases. /home in the chroot is 'normal', and the host system is responsible for uploading ssh keys via the schroot command.