Support group level HGRCs
Group-level HGRCs would allow to specify workflow options for a whole group at once. I believe it's going to be useful real soon.
Since #91 (closed) needs a migration step (that's always painful), we'd better do it in the same run.
To do so it would be enough to insert the following at the beginning of each the HGRC for each repo (.hg/hgrc
):
%include ../../hgrc
Going one step further, we should remove the include of /etc/gitlab/heptapod.hgrc
by making it truly system-wide (symlinking it to /etc/mercurial/hgrc.d
). The only problematic setting in there is the Heptapod sync hook, but after #91 (closed), it can easily be activated for served repos only.
This would make the repo HGRC fully manageable by the end user, with no risk of removing an essential include. Even the include of the group-repo policy could be considered a choice by the end user. For now that means filesystem access, but the next step would be to allow its management from the web interface, through Project or Group settings.
As a special case. we should always create the HGRC for a sub group with minimal content relaying to the enclosing group HGRC, but the latter does not need to exist. Again, users would be free to remove that inclusion in order not to inherit from the group.