Tuleap Community Edition development and releases are no longer public. You have until September 30th to download packages and sources in Tuleap project. You can contact the team if you need further assistance.

  •  
     
    story #10141 centrally control svn repositories "Commit settings"
Summary
site administrator
centrally control svn repositories "Commit settings"

It ease management of multiple svn repositories

Functional acceptance criteria

In SVN administration

  • Introduce a new screen / panel to manage repositories default settings (aka "Default repository")
    • Under the hood there is a "_admin" repository created for that.
    • This repository is only writable by svn administrators (⚠️ Be careful with .SvnAccessFile and default access control, they need to be handled as a specific case).
  • This new panel aims to handle all repo settings at then end (email notif, access control, etc) but for a start only "Commit rules" is available
  • In "Commit rules" section:
    • there are the 2 checkbox "Force every commit to include a reference", "Allow commit message changes". They can be checked or not and saved
    • When there is a change, it's logged in "Project History" audit trail
  • When "Default repository" is activated, all repositories created afterward are controlled by the project wide repository
    • This can be activated / desactivated at will. Changes are logged in "Project History" audit trail
  • When the project is used as a template, the settings (use of default repository and commit rules) are inherited.
    • Note: it's not possible to "control" across projects
  • This configuration is taken into account in XML import / export (for svn service config)

At SVN repository creation

  • When "Default repository" is used:
    • the values set for "Commit settings" in global config are duplicated
    • there is flag associated to the repository to mark that it is "connected" to default config

In SVN repository settings:

  • When the repository is "Connected to Default Repository"
    • There is a new tab "Global config" that allow to "Disconnect" from Default Repository
      • When svn administrator change this setting, it's recored in Project history audit trail
      • It's not possible to "Re-connect" again.
    • For "Commit rules" tab
      • The checkbox are displayed "grayed" with the values set by global configuration
      • There is no ways to change the settings
    • When svn administrator "Disconnect" the repository from global configuration
      • The "Commit rules" are now modifiable
      • If there are any changes, the changes are recorded in Project history audit trail

When SVN administrators browse the list of project repositories (service front page) there is:

  • A direct access to repositories settings
  • A way to distinguish repositories that are "connected" and those that are not

Technical aspects

  • The '_admin' repo is created (even on on filesystem) but only accessible in readonly by svn administrators
  • There is a refacto to introduce the "AdminRepository" object
  • ⚠️ Be careful ⚠️
    • All repository settings doesn't apply to _admin repository itself. For instance, if "Reference is mandatory commit rule" is set on _admin, the commits on _admin repository itself doesn't require a reference !
    • The "SvnAccessFile" needs to be treated also with a special case for all user group management things like
      • Rename of groups
      • Add / remove of members
      • Ugroup that become empty
      • ... (see Tuleap Release Validation)
    • There are 2 management of SvnAccessFile
      • The one for the admin repo itself (to grant access for svn admins)
      • The one for inheritance
    • For both of them the management of user groups must be taken into account
Empty
Empty
Status
Empty
Canceled
Development
  • [ ] Does it involves User Interface? 
  • [ ] Are there any mockups?
  • [ ] Are permissions checked?
  • [ ] Does it need Javascript development?
  • [ ] Does it need a forge upgrade bucket?
  • [ ] Does it need to execute things in system events?
  • [ ] Does it impact project creation (templates)?
  • [ ] Is it exploratory?
Empty
Details
#10141
Manuel Vacelet (vaceletm)
2017-09-08 10:58
2017-04-12 18:27
4550

References
Referencing story #10141

Follow-ups

User avatar

Canceled in favor of a complete API rest for svn administration


  • Status changed from Ready (stalled) to Canceled
  • Category set to
User avatar
  • Acceptance criteria
    Something went wrong, the follow up content couldn't be loaded
    Only formatting have been changed, you should switch to markup to see the changes
User avatar
  • Acceptance criteria
    Something went wrong, the follow up content couldn't be loaded
    Only formatting have been changed, you should switch to markup to see the changes
User avatar
  • Acceptance criteria
    Something went wrong, the follow up content couldn't be loaded
    Only formatting have been changed, you should switch to markup to see the changes
User avatar
  • Acceptance criteria
    Something went wrong, the follow up content couldn't be loaded
    Only formatting have been changed, you should switch to markup to see the changes
User avatar
  • Acceptance criteria
    Something went wrong, the follow up content couldn't be loaded
    Only formatting have been changed, you should switch to markup to see the changes
User avatar
  • So that
    Something went wrong, the follow up content couldn't be loaded
    Only formatting have been changed, you should switch to markup to see the changes
  • Acceptance criteria
    Something went wrong, the follow up content couldn't be loaded
    Only formatting have been changed, you should switch to markup to see the changes
  • Permissions set to