diff --git a/server/server.go b/server/server.go index c5bb3abec0..ad24b51c8c 100644 --- a/server/server.go +++ b/server/server.go @@ -512,7 +512,7 @@ func (a *ArgoCDServer) newGRPCServer() *grpc.Server { projectLock := util.NewKeyLock() applicationService := application.NewServer(a.Namespace, a.KubeClientset, a.AppClientset, a.appLister, a.RepoClientset, a.Cache, kubectl, db, a.enf, projectLock, a.settingsMgr) projectService := project.NewServer(a.Namespace, a.KubeClientset, a.AppClientset, a.enf, projectLock, a.sessionMgr, a.policyEnforcer) - settingsService := settings.NewServer(a.settingsMgr, a) + settingsService := settings.NewServer(a.settingsMgr, a, a.DisableAuth) accountService := account.NewServer(a.sessionMgr, a.settingsMgr, a.enf) certificateService := certificate.NewServer(a.RepoClientset, db, a.enf) versionpkg.RegisterVersionServiceServer(grpcS, &version.Server{}) diff --git a/server/settings/settings.go b/server/settings/settings.go index 0f02bdc5f5..5ad17a5b58 100644 --- a/server/settings/settings.go +++ b/server/settings/settings.go @@ -15,6 +15,7 @@ import ( type Server struct { mgr *settings.SettingsManager authenticator Authenticator + disableAuth bool } type Authenticator interface { @@ -22,8 +23,8 @@ type Authenticator interface { } // NewServer returns a new instance of the Settings service -func NewServer(mgr *settings.SettingsManager, authenticator Authenticator) *Server { - return &Server{mgr: mgr, authenticator: authenticator} +func NewServer(mgr *settings.SettingsManager, authenticator Authenticator, disableAuth bool) *Server { + return &Server{mgr: mgr, authenticator: authenticator, disableAuth: disableAuth} } // Get returns Argo CD settings @@ -99,7 +100,7 @@ func (s *Server) Get(ctx context.Context, q *settingspkg.SettingsQuery) (*settin KustomizeVersions: kustomizeVersions, } - if sessionmgr.LoggedIn(ctx) { + if sessionmgr.LoggedIn(ctx) || s.disableAuth { configManagementPlugins, err := s.mgr.GetConfigManagementPlugins() if err != nil { return nil, err