Fisheye 4.1.1 group name normalization
Upgrade version
This document assumes that you are upgrading Fisheye & Crucible to version 4.1.1. Switch to Fisheye 4.0 group name normalization for Fisheye & Crucible 4.1.2 or later.
Group name normalization
Up to Fisheye and Crucible 3.10 group names were case sensitive. With version 4.0 and the new user directories management functionality, group names are required to be unique after lowercasing.
E.g. if in version prior to 4.0 there were 3 groups defined:
- group-A
- Group-A
- grouP-A
the 4.0 upgrade task should resolve conflicting group names by adding the _migration[X] suffix. After the upgrade the following groups will be configured:
- group-A
- Group-A_migration1
- grouP-A_migration2
The upgrade task updates the group names in all entities related to a given group name, including:
- Internal directory groups
- Permission scheme actions configuration for groups
- Project default reviewers groups
- Project allowed review participant groups
- Administrators groups
- Crowd/Jira groups to synchronise
However, repository permissions defined for groups have to be updated manually.
Updating repository permissions
After the upgrade all repository permissions should be configured on the first non-unique group name.
Example:
In version 3.10 the following repository permissions were defined:
Repository name | Repository permission | Group name |
---|---|---|
repository1 | CAN_READ | group-A |
repository2 | CAN_READ | Group-A |
repository3 | CAN_READ | grouP-A |
After the upgrade the following permissions are defined:
Repository name | Repository permission | Group name | Info |
---|---|---|---|
repository1 | CAN_READ | group-a | referencing correctly: group-A |
repository2 | CAN_READ | group-a | referencing: group-A instead of: Group-A_migration1 |
repository3 | CAN_READ | group-a | referencing: group-A instead of: grouP-A_migration2 |
All repository permissions for which there was a name conflict during the upgrade should be manually reviewed.
Find all group names which caused conflict during upgrade
grep WARN [FISHEYE_INST]/var/log/atlassian-fisheye-EmbeddedCrowdUpgradeTask.log | grep duplicate
Example result:
WARN After normalization the group name Group-A1 duplicates an existing group name, so it will be renamed to Group-A1_migration1. Manual actions are required: https://confluence.atlassian.com/display/FISHEYE/FishEye+4.0+group+name+normalization WARN After normalization the group name group-A1 duplicates an existing group name, so it will be renamed to group-A1_migration2. Manual actions are required: https://confluence.atlassian.com/display/FISHEYE/FishEye+4.0+group+name+normalization WARN After normalization the group name grouP-A1 duplicates an existing group name, so it will be renamed to grouP-A1_migration3. Manual actions are required: https://confluence.atlassian.com/display/FISHEYE/FishEye+4.0+group+name+normalization
Find all repositories where repository permissions should be checked
select cru_repository_name from cru_repo_group_perm where cru_group_name like LOWER('group-A1') group by cru_repository_name
Example result:
repository1 repository2 repository3
Repository permissions for all listed repositories should be manually reviewed through the Administrator UI / Repository configuration / Permissions