SUSE/stratos

View on GitHub

Showing 1,395 of 1,395 total issues

Function getEntities has 26 lines of code (exceeds 25 allowed). Consider refactoring.
Open

function getEntities(
  endpointResponse: {
    normalizedEntities: NormalizedResponse<any>;
    endpointGuid: string;
  },

    Function editModeChanged has 26 lines of code (exceeds 25 allowed). Consider refactoring.
    Open

      editModeChanged(mode) {
        this.mode = mode.value;
    
        if (this.mode === EditorMode.CodeEditor) {
          // Form -> Editor

      Function poll has 26 lines of code (exceeds 25 allowed). Consider refactoring.
      Open

        poll(interval = 10000, action: () => void, getActionState: (request: RequestInfoState) => ActionState) {
          const pollingEnabled$ = this.store.select(selectDashboardState).pipe(
            map(dashboardState => dashboardState.pollingEnabled)
          );
          return observableInterval(interval)
      Severity: Minor
      Found in src/frontend/packages/store/src/monitors/entity-monitor.ts - About 1 hr to fix

        Function connectEndpoint has 26 lines of code (exceeds 25 allowed). Consider refactoring.
        Open

          private connectEndpoint(action: KubeConfigImportAction, pData: ConnectEndpointData): Observable<IActionMonitorComponentState> {
            const config: ConnectEndpointConfig = {
              name: action.cluster.name,
              guid: action.depends.cluster._guid || action.cluster._guid,
              type: KUBERNETES_ENDPOINT_TYPE,

          Function constructor has 26 lines of code (exceeds 25 allowed). Consider refactoring.
          Open

            constructor(
              private store: Store<AppState>,
            ) {
              this.userGuid$ = this.store.select(s => s.auth).pipe(
                filter((auth: AuthState) => !!(auth && auth.sessionData)),
          Severity: Minor
          Found in src/frontend/packages/core/src/core/user-profile.service.ts - About 1 hr to fix

            Function buildFullCleanPageObservable has 26 lines of code (exceeds 25 allowed). Consider refactoring.
            Open

              private buildFullCleanPageObservable(
                cleanPage$: Observable<T[]>,
                cleanPagination$: Observable<PaginationEntityState>,
                dataFunctions?: DataFunction<any>[]) {
                const fullPageObs$ = combineLatest(

              Function reconnect has 26 lines of code (exceeds 25 allowed). Consider refactoring.
              Open

                reconnect() {
                  this.isConnecting = true;
                  this.errorMessage = undefined;
                  this.xterm.reset();
                  this.msgSubscription = this.sshStream

                Similar blocks of code found in 2 locations. Consider refactoring.
                Open

                func getKubeDashboardServiceAccount(p interfaces.PortalProxy, cnsiGUID, userGUID string, labelSelector string) (*v1.ServiceAccount, error) {
                    log.Debug("getKubeDashboardService request")
                
                    response, err := p.DoProxySingleRequest(cnsiGUID, userGUID, "GET", "/api/v1/serviceaccounts?labelSelector="+labelSelector, nil, nil)
                    if err != nil || response.StatusCode != 200 {
                Severity: Major
                Found in src/jetstream/plugins/kubernetes/dashboard/common.go and 1 other location - About 1 hr to fix
                src/jetstream/plugins/kubernetes/dashboard/common.go on lines 51..75

                Duplicated Code

                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                Tuning

                This issue has a mass of 232.

                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                Refactorings

                Further Reading

                Similar blocks of code found in 2 locations. Consider refactoring.
                Open

                func getKubeDashboardPod(p interfaces.PortalProxy, cnsiGUID, userGUID string, labelSelector string) (*v1.Pod, error) {
                    log.Debug("kubeDashboardStatus request")
                
                    response, err := p.DoProxySingleRequest(cnsiGUID, userGUID, "GET", "/api/v1/pods?labelSelector="+labelSelector, nil, nil)
                    if err != nil || response.StatusCode != 200 {
                Severity: Major
                Found in src/jetstream/plugins/kubernetes/dashboard/common.go and 1 other location - About 1 hr to fix
                src/jetstream/plugins/kubernetes/dashboard/common.go on lines 128..152

                Duplicated Code

                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                Tuning

                This issue has a mass of 232.

                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                Refactorings

                Further Reading

                Method UserInvite.UAAUserInvite has 10 return statements (exceeds 4 allowed).
                Open

                func (invite *UserInvite) UAAUserInvite(c echo.Context, endpoint interfaces.CNSIRecord, uaaInviteReq *UserInviteReq) (*UserInviteResponse, error) {
                    log.Debug("Requesting invite links from UAA")
                
                    // See if we can get a token for the invite user
                    token, ok := invite.portalProxy.GetCNSITokenRecord(endpoint.GUID, UserInviteUserID)
                Severity: Major
                Found in src/jetstream/plugins/userinvite/invite.go - About 1 hr to fix

                  Method UserInvite.invite has 10 return statements (exceeds 4 allowed).
                  Open

                  func (invite *UserInvite) invite(c echo.Context) error {
                      log.Debug("Invite User")
                      cfGUID := c.Param("id")
                  
                      // Check that there is an endpoint with the specified ID and that it is a Cloud Foundry endpoint
                  Severity: Major
                  Found in src/jetstream/plugins/userinvite/invite.go - About 1 hr to fix

                    Method Analysis.doRunReport has 10 return statements (exceeds 4 allowed).
                    Open

                    func (c *Analysis) doRunReport(ec echo.Context, analyzer, endpointID, userID string, dbStore store.AnalysisStore, report *store.AnalysisRecord) error {
                    
                        // Get Kube Config
                        k8s := c.portalProxy.GetPlugin("kubernetes")
                        if k8s == nil {
                    Severity: Major
                    Found in src/jetstream/plugins/analysis/run.go - About 1 hr to fix

                      Method portalProxy.DoRegisterEndpoint has 8 arguments (exceeds 4 allowed). Consider refactoring.
                      Open

                      func (p *portalProxy) DoRegisterEndpoint(cnsiName string, apiEndpoint string, skipSSLValidation bool, clientId string, clientSecret string, ssoAllowed bool, subType string, fetchInfo interfaces.InfoFunc) (interfaces.CNSIRecord, error) {
                      Severity: Major
                      Found in src/jetstream/cnsi.go - About 1 hr to fix

                        Function KubeDashboardLogin has 10 return statements (exceeds 4 allowed).
                        Open

                        func KubeDashboardLogin(c echo.Context, p interfaces.PortalProxy) error {
                            log.Debug("kubeDashboardLogin request")
                        
                            endpointGUID := c.Param("guid")
                            userGUID := c.Get("user_id").(string)
                        Severity: Major
                        Found in src/jetstream/plugins/kubernetes/dashboard/login.go - About 1 hr to fix

                          Method PgsqlTokenRepository.SaveCNSIToken has 10 return statements (exceeds 4 allowed).
                          Open

                          func (p *PgsqlTokenRepository) SaveCNSIToken(cnsiGUID string, userGUID string, tr interfaces.TokenRecord, encryptionKey []byte) error {
                              log.Debug("SaveCNSIToken")
                              if cnsiGUID == "" {
                                  msg := "Unable to save CNSI Token without a valid CNSI GUID."
                                  log.Debug(msg)
                          Severity: Major
                          Found in src/jetstream/repository/tokens/pgsql_tokens.go - About 1 hr to fix

                            Method portalProxy.DoLoginToCNSI has 10 return statements (exceeds 4 allowed).
                            Open

                            func (p *portalProxy) DoLoginToCNSI(c echo.Context, cnsiGUID string, systemSharedToken bool) (*interfaces.LoginRes, error) {
                            
                                cnsiRecord, err := p.GetCNSIRecord(cnsiGUID)
                                if err != nil {
                                    return nil, interfaces.NewHTTPShadowError(
                            Severity: Major
                            Found in src/jetstream/authcnsi.go - About 1 hr to fix

                              Method PgsqlTokenRepository.UpdateTokenAuth has 10 return statements (exceeds 4 allowed).
                              Open

                              func (p *PgsqlTokenRepository) UpdateTokenAuth(userGUID string, tr interfaces.TokenRecord, encryptionKey []byte) error {
                                  log.Debug("UpdateTokenAuth")
                              
                                  if userGUID == "" {
                                      msg := "Unable to save Token without a valid User GUID."
                              Severity: Major
                              Found in src/jetstream/repository/tokens/pgsql_tokens.go - About 1 hr to fix

                                Function handleSpaceRoleChange has 8 arguments (exceeds 4 allowed). Consider refactoring.
                                Open

                                  state: IAllCfRolesState,
                                  endpointGuid: string,
                                  cf: ICfRolesState,
                                  orgGuid: string,
                                  spaceGuid: string,

                                  Function setRole has 8 arguments (exceeds 4 allowed). Consider refactoring.
                                  Open

                                    existingState: UsersRolesState,
                                    orgGuid: string,
                                    orgName: string,
                                    spaceGuid: string,
                                    spaceName: string,

                                    Function setSpaceRole has 8 arguments (exceeds 4 allowed). Consider refactoring.
                                    Open

                                      orgRoles: IUserPermissionInOrg,
                                      orgGuid: string,
                                      orgName: string,
                                      spaceGuid: string,
                                      spaceName: string,
                                      Severity
                                      Category
                                      Status
                                      Source
                                      Language