-
Type: New Feature
-
Status: Resolved
-
Priority: Minor
-
Resolution: Fixed
-
Affects Version/s: None
-
Fix Version/s: 38
-
Component/s: Projects Administration Tools
-
Epic Link:
-
Tags:
-
Sprint:NOS-19, NOS-18, NOS-20, NOS-21, NOS-22
-
Story Points:5
Target: Nuxeo Employees (can be Studio Managers group for now as I don't think there is other groups available)
=> There's a Nuxeo group
Use cases:
- Initialise a project from another (ex: Keendo and its customers, Presales when starting a project for a lead from the generic Case Management or DAM demos)
- Copy the content of a branch of a customer’s project in the Nuxeo Employees sandbox.
Details of the story
In the admin view of the project, in a “copy project” section, Nuxeo Employees can select a customer, and then a project among those existing for this customer. Finally, he has to select a branch. A three level suggest interface (or at least suggest for customers, and drop down for the two others) fits the requirement. Suggest is mandatory for the first one.
Then the user clicks on the “copy project” button. A confirmation is asked to the user, and then a commit is made on the master branch to
- update project’s manifest name with name of the project in which the import is done (see with Anahide for more details if necessary) => there's no more MANIFEST stored
- remove all the features
- remove all the resources
- remove all the registries
- remove all the imported templates information
- set the target platform equal to the target platform of the copied project’s selected branch
- add all features of the copied project’s selected branch
- add all resources of the copied project’s selected branch
- add all registries of the copied project’s selected branch
- set imported templates the same as the one in the copied project’s selected branch
There is no import of releases, tags, history of commits, released jars or packages.
Feature “Import project” should be removed as it is not useful any more with this feature (and is currently broken)
Note: choosing the customer first forces the user to remind what project he is about to copy and avoid selecting another project by mistake that would have quite a similar ID.
Note bis: in the future, we may want to select a given tag, in addition to current trunk of existing branches