Информация для установки программного обеспечения

  1. Для развертывания сервера необходимо наличие docker, docker-compose.
  2. распаковать архив kpi-back-src.zip
  3. В консоли перейти в директорию содержащую файл docker-compose.yml
  4. Набрать команду docker-compose up

Информация для эксплуатации программного обеспечения

https://new-kpi2.kpi-drive.ru

логин: kpi

пароль: kpi

assets/lang – файлы перевода

assets/template – файлы шаблонов

assets/views – файлы шаблонов html представлений

configs/config.yml —  файл конфигурации приложения

Конфигурирование приложения:

Чтение конфигурации происходит в следующем порядке(последнее заменяете или расширяет предыдущее)

1. configs/config.yml

2. env

3. flag

type Config struct {

    Server struct {

        Port int64  `yaml:»port» envconfig:»SERVER_PORT»`

        Host string `yaml:»host» envconfig:»SERVER_HOST»`

    } `yaml:»server»`

    Databases struct {

        MySql struct {

            Host     string `yaml:»host» envconfig:»DB_MYSQL_HOST»`

            Port     int64  `yaml:»port» envconfig:»DB_MYSQL_PORT»`

            Name     string `yaml:»name» envconfig:»DB_MYSQL_NAME»`

            Username string `yaml:»username» envconfig:»DB_MYSQL_USERNAME»`

            Password string `yaml:»password» envconfig:»DB_MYSQL_PASSWORD»`

        } `yaml:»mysql»`

        PgSql struct {

            Host     string `yaml:»host» envconfig:»DB_PGSQL_HOST»`

            Port     int64  `yaml:»port» envconfig:»DB_PGSQL_PORT»`

            Name     string `yaml:»name» envconfig:»DB_PGSQL_NAME»`

            Username string `yaml:»username» envconfig:»DB_PGSQL_USERNAME»`

            Password string `yaml:»password» envconfig:»DB_PGSQL_PASSWORD»`

        } `yaml:»pgsql»`

        Redis struct {

            Host     string `yaml:»host» envconfig:»DB_REDIS_HOST»`

            Port     int64  `yaml:»port» envconfig:»DB_REDIS_PORT»`

            Name     string `yaml:»name» envconfig:»DB_REDIS_NAME»`

            Password string `yaml:»password» envconfig:»DB_REDIS_PASSWORD»`

            IsEnable bool   `yaml:»is_enable» envconfig:»DB_REDIS_ISENABLE»`

        } `yaml:»redis»`

        Arango struct {

            Host     string `yaml:»host» envconfig:»DB_ARANGO_HOST»`

            Port     int64  `yaml:»port» envconfig:»DB_ARANGO_PORT»`

            Name     string `yaml:»name» envconfig:»DB_ARANGO_NAME»`

            Username string `yaml:»username» envconfig:»DB_ARANGO_USERNAME»`

            Password string `yaml:»password» envconfig:»DB_ARANGO_PASSWORD»`

            IsEnable bool   `yaml:»is_enable» envconfig:»DB_ARANGO_ISENABLE»`

        } `yaml:»arango»`

    } `yaml:»databases»`

    Logging struct {

        Level  string `yaml:»level» envconfig:»LOG_LEVEL»`

        Format string `yaml:»format» envconfig:»LOG_FORMAT»`

    } `yaml:»logging»`

    App struct {

        Name                             string `yaml:»name» envconfig:»APP_NAME»`

        Version                          string `yaml:»version» envconfig:»APP_VERSION»`

        URL                              string `yaml:»url» envconfig:»APP_URL»`

        UploadsPath                      string `yaml:»uploads_path» envconfig:»APP_UPLOADSPATH»`

        Mode                             string `yaml:»mode» envconfig:»APP_MODE»`

        ApiToken                         string `yaml:»api_token» envconfig:»APP_APITOKEN»`

        Lang                             string `yaml:»lang» envconfig:»APP_LANG»`

        Platforms                        string `yaml:»platforms» envconfig:»APP_PLATFORMS»`

        MaxProc                          int8   `yaml:»max_proc» envconfig:»APP_MAXPROC»`

        URLPrefix                        string `yaml:»url_prefix» envconfig:»APP_URLPREFIX»`

        MatrixCalculatorInstanceLifeTime int64  `yaml:»matrix_calculator_instance_lifetime» envconfig:»APP_MATRIXCALCULATORINSTANCELIFETIME»`

        RecentlySavedFactResultLifeTime  int64  `yaml:»recently_saved_fact_result_lifetime» envconfig:»APP_RECENTLYSAVEDFACTRESULTLIFETIME»`

        SendCodeLockTime                 int64  `yaml:»send_code_locktime» envconfig:»APP_SENDCODELOCKTIME»`

    } `yaml:»app»`

    Services struct {

        Call struct {

            Name    string                 `yaml:»name» envconfig:»SERVICE_CALL_NAME»`

            Login   string                 `yaml:»login» envconfig:»SERVICE_CALL_LOGIN»`

            Secret  string                 `yaml:»secret» envconfig:»SERVICE_CALL_SECRET»`

            Options map[string]interface{} `yaml:»options» envconfig:»SERVICE_CALL_OPTIONS»`

        } `yaml:»call»`

        Email struct {

            Name    string                 `yaml:»name» envconfig:»SERVICE_EMAIL_NAME»`

            Login   string                 `yaml:»login» envconfig:»SERVICE_EMAIL_LOGIN»`

            Secret  string                 `yaml:»secret» envconfig:»SERVICE_EMAIL_PASSWORD»`

            Options map[string]interface{} `yaml:»options» envconfig:»SERVICE_EMAIL_OPTIONS»`

        } `yaml:»email»`

        Sms struct {

            Name    string                 `yaml:»name» envconfig:»SERVICE_SMS_NAME»`

            Login   string                 `yaml:»login» envconfig:»SERVICE_SMS_LOGIN»`

            Secret  string                 `yaml:»secret» envconfig:»SERVICE_SMS_SECRET»`

            Options map[string]interface{} `yaml:»options» envconfig:»SERVICE_SMS_OPTIONS»`

        } `yaml:»sms»`

        Push struct {

            Name    string                 `yaml:»name» envconfig:»SERVICE_PUSH_NAME»`

            Login   string                 `yaml:»login» envconfig:»SERVICE_PUSH_LOGIN»`

            Secret  string                 `yaml:»secret» envconfig:»SERVICE_PUSH_SECRET»`

            Options map[string]interface{} `yaml:»options» envconfig:»SERVICE_PUSH_OPTIONS»`

        } `yaml:»push»`

        PushP4r struct {

            Name    string                 `yaml:»name» envconfig:»SERVICE_PUSHP4R_NAME»`

            Login   string                 `yaml:»login» envconfig:»SERVICE_PUSHP4R_LOGIN»`

            Secret  string                 `yaml:»secret» envconfig:»SERVICE_PUSHP4R_SECRET»`

            Options map[string]interface{} `yaml:»options» envconfig:»SERVICE_PUSHP4R_OPTIONS»`

        } `yaml:»pushp4r»`

    } `yaml:»services»`

}

}

Возможные параметры конфигурации через flag

—cwd  – путь к рабочаей дирректории(по умолчанию /var/lib/kpidrive)

KPI-матрица

Зарплата

Дашборд и графики

KPI-Показатели

KPI-Оценки

KPI-Задачи

Факты

Сотрудники и Оргструктура

Другое

Руководителю

Сотруднику

Авторизация
*
*
Генерация пароля