Remove Service accounts from premium features

What does this MR do and why?

Remove :service_accounts from PREMIUM_FEATURES and license gates

Remove :service_accounts from PREMIUM_FEATURES in features.rb, making service accounts a core feature available to all tiers including CE and unlicensed self-managed instances.

Refactor Authn::ServiceAccounts to eliminate all license-based gating:

  • available? and available_for_namespace? now return true unconditionally
  • free_tier? and free_tier_namespace? now derive free tier status from license/subscription plan rather than feature availability
  • creation_allowed_for_sm? and creation_allowed_for_saas? retain seat count limits for free tier (100) and trials, with the allow_unlimited_service_account_for_trials FF preserved
  • Remove service_accounts_available_on_free_or_unlicensed FF references from Authn::ServiceAccounts
  • FF service_accounts_available_on_free_or_unlicensed definition cleanup is also included

Closes https://gitlab.com/gitlab-org/gitlab/-/work_items/592763

References

Screenshots or screen recordings

Before After

How to set up and validate locally

MR acceptance checklist

Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Related to #592763

Edited by Smriti Garg

Merge request reports

Loading