+1 down with optional tenancy. Changes in Go would be similar I think - just remove the check for enabled tenancy and the code that handles the disabled case. (I'd also like to submit for consideration the idea of re-writing Perl endpoints instead of updating them) ________________________________________ From: Jeremy Mitchell <[email protected]> Sent: Tuesday, January 8, 2019 8:55 AM To: [email protected] Subject: [EXTERNAL] Tenancy no longer optional?
I feel like we discussed this and agreed that moving forward tenancy should no longer be optional in TP/TO but I can't find the email so maybe it was just a dream. :) (fyi at Comcast, we've been using tenancy for over 1.5 years i think) Currently, you can toggle tenancy on/off using a parameter (use_tenancy). This adds complexity to the code which I think can lead to errors in logic. Also, if tenancy is turned off it falls back to role checking and/or ds/user assignment. ds/user assignment isn't even supported in TP and role checking goes against the idea of roles/capabilities. Therefore, i'd like to suggest that in the next release of TC (4.0.x?), tenancy is required and cannot be turned off. Of course, if you still don't want to use tenancy, you can assign all users/delivery services to the "root" tenant which in essence turns off tenancy for all users. Making tenancy required would require stripping out all conditions like this from the Perl: https://github.com/apache/trafficcontrol/blob/master/traffic_ops/app/lib/API/Job.pm#L179 or simply going to the source of that method and make the necessary code change to prevent turning it off: https://github.com/apache/trafficcontrol/blob/master/traffic_ops/app/lib/Utils/Tenant.pm#L256 Not sure what's required in the Go to ensure that tenancy can't be turned off. Jeremy
