static getStatusIcon()

in src/k8s/groups/Tekton/PipelineRun/index.ts [57:86]


  static getStatusIcon(status: string, reason: string): [string, string, boolean?] {
    if (status === undefined || reason === undefined) {
      return [ICONS.UNKNOWN, STATUS_COLOR.UNKNOWN];
    }
    const _status = status.toLowerCase();
    const _reason = reason.toLowerCase();

    switch (_status) {
      case PIPELINE_RUN_STATUS.UNKNOWN:
        if (_reason === PIPELINE_RUN_REASON.STARTED) {
          return [ICONS.LOADER_CIRCLE, STATUS_COLOR.IN_PROGRESS, true];
        }

        if (_reason === PIPELINE_RUN_REASON.RUNNING) {
          return [ICONS.LOADER_CIRCLE, STATUS_COLOR.IN_PROGRESS, true];
        }

        if (_reason === PIPELINE_RUN_REASON.CANCELLED) {
          return [ICONS.CROSS_CIRCLE, STATUS_COLOR.SUSPENDED];
        }

        return [ICONS.UNKNOWN, STATUS_COLOR.UNKNOWN];
      case PIPELINE_RUN_STATUS.TRUE:
        return [ICONS.CHECK_CIRCLE_FILLED, STATUS_COLOR.SUCCESS];
      case PIPELINE_RUN_STATUS.FALSE:
        return [ICONS.CROSS_CIRCLE, STATUS_COLOR.ERROR];
      default:
        return [ICONS.UNKNOWN, STATUS_COLOR.UNKNOWN];
    }
  }