Redmine cleanup - do we need the reporter role?

TLDR - I want to delete the Reporter role, I don’t think we need it, am I missing something?

As per the other topic we have unshared the Foreman versions - but this is causing some duplication work as me have to maintain (e.g.) a 1.19.0-RC1 version in each relevant subproject.

One other way to handle this is to move the Plugins (and Katello) to their own top-level namespace, and then open up the Foreman versions to subprojects. The consequence of this approach is that Role inheritance breaks.

However, the vast majority of our roles is for the Reporter role, which looks 100% identical to the Non-Member role. I can’t see reason why we need the Reporter role at all? If we remove that, having Plugins in their own namespace seems feasible.

Another consequence of this is that some of the Developer role inheritance would break (eg. REX would go from ~40 devs to ~5, because 35 are inherited from Foreman) - however, I see this as an opportunity to “clean house”, as it’s trivial to add people back in to a project as required.

So, the proposal is:

  • Remove the Reporter role
  • Move Plugins to top-level
  • Move Katello under Plugins (or top-level if @katello prefer)
  • Reshare Foreman versions with subprojects (installer, proxy, etc)

Any objections?

There’s no replies after nearly a month, so I’m going to assume we’re all fine with this :wink:

I’ll remove the Reporter role later today, and @ekohl & I will restructure the project hierarchies early next week. If you have any concerns, get in touch before then.

The Reporter role has now been removed. As it has the same permissions as the default logged-in user this should cause no problems, but if you do see any issues, let me know.

The role removal left some cruft behind - where a user only had the Reporter role, they were still assigned to the project but with no role. This meant 403 errors for those logged in in many places.

I’ve now cleaned up the User/Project/Role join table (“Members”, in the schema). If you were getting 403 errors earlier, it should be OK now.

(Thanks to @Elias_Abacioglu for the heads up on IRC)

@ekohl & I are about to do the project hierarchy reorganisation, so expect weirdness for a bit.