Установка
Систему можно установить несколькими сособами:
- Используя скрипт для автоматической установки (docker / nginx + php-fpm)
- Установка вручную (docker)
- Установка вручную (nginx + php-fpm)
Установка с использованием скрипта:
Рекомендуется использовать на чистом сервере с Debian / Ubuntu / CentOS.
Выполните на сервере:
curl https://gitpf.poravinternet.ru/install.sh –output install.sh; bash install.sh 2497fe3
Затем ответьте на вопросы установщика. После установки, перейдите на http://{адрес сервера}/setup Введите настройки базы данных, после чего будут выполнены миграции БД.
Ручная установка:
- Скачать установочный пакет по ссылке
- Распаковать на сервере
Если вы используете docker, вы можете запустить сервис используя docker-compose
cp .env.example .env
# Отредактируйте настройки MYSQL в .env файле
bash docker.sh
Или:
cp .env.example .env
# Отредактируйте настройки MYSQL в .env файле
git reset --hard
docker-compose up -d
Корень веб-сервера должен смотреть в папку web из архива
Пример конфигурации для Nginx
server {
listen 80;
server_name gitpf.poravinternet.ru;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name gitpf.poravinternet.ru;
client_max_body_size 128M;
charset utf-8;
root /srv/gitpf/www/web;
index index.php;
access_log /var/log/nginx/gitpf-access.log;
error_log /var/log/nginx/gitpf-error.log;
location / {
try_files $uri $uri/ /index.php?$args;
}
location /backend {
try_files $uri $uri/ /backend/index.php?$args;
}
location ~ ^/assets/.*\.php$ {
deny all;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass 127.0.0.1;
try_files $uri =404;
}
ssl_certificate /etc/letsencrypt/live/gitpf.poravinternet.ru/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/gitpf.poravinternet.ru/privkey.pem; # managed by Certbot
}
Затем перейти по адресу http(s)://yourdomain.sth/setup и следовать инструкциям установщика.
Установщик запросит доступ к БД mysql и запустит миграции.
Настройка очереди
При использовании скрипта установки или docker контейнера, очередь настраивается автоматически
Для работы, GitPF использует очередь. Для настройки очереди необходимо добавить в systemd unit:
[Unit]
Description=GitPf queue
After=network.target
[Service]
Type=simple
User=root
ExecStart=/usr/bin/php /srv/gitpf/www/yii queue/listen
Restart=on-failure
[Install]
WantedBy=multi-user.target
Затем systenctl daemon-reload
и systemctl enable gitpf_queue
Настройка заданий cron
При использовании скрипта установки или docker контейнера, задания cron настраиваются автоматически
Для выполнения служебных заданий используется крон. Для настройки, достаточно выполнить crontab -e от пользователя, от имени которого выполняется php и добавить следующую строку:
* * * * * php /srv/gitpf/www/yii schedule/run
На этом этап установки можно считать завершенным
Настройка
Настройка GitPF сводится к следующим этапам:
- Настройка подключения к Gitlab
- Установка конфигурации в Планфикс
- Настройка подключения к Planfix
- Сопоставление пользователей
- Сопоставление проектов
Настройка подключения к Gitlab
На странице нажмите на кнопку ‘Выполнить’ под Соединение с GitLab или в меню Сервис -> GitLab (ссылка)
В поле Token введите токен доступа администратора GitLab, который можно получить по адресу https://gitlab/profile/personal_access_tokens
При создании токена доступа, отметьте галочками разрешения sudo, api, read_user
В поле Url введите адрес gitlab (https://gitlab.poravinternet.ru/)
Установка конфигурации в Планфикс
Установите конфигурацию по ссылке https://planfix.ru/configurations/git-for-planfix-p56
Настройка подключения к Planfix
В поле account ввести название аккаунта Планфикс (poravinternet для poravinternet.planfix.ru)
В поле Api Key ввести аутентификационный ключ из (https://.planfix.ru/?action=api)
В поле Api Secret ввести токен авторизации Администратора Planfix. Создать можно на (https://.planfix.ru/?action=api)
Затем выбрать шаблон задачи на разработку (используется для создания новых задач в Планфикс из Gitlab)
Выбрать Поле “Ведущий программист”
Выбрать Процесс - используется для получения набора статусов из Планфикс
Выбрать Аналитику Фактического времени, а затем ее поля. Поле сотрудник опционально (USERLIST).
Перед подключением необходимо установить конфигурацию. После установки конфигурации, необходимо создать новый проект, в котором выбираем шаблон Проект на разработку. В созданном проекте на разработку необходимо, в поле Роли в проекте, назначить Ведущего разработчика. Без данного назначения, невозможно выбрать параметр “Ведущий разработчки” при настройки подклчения к ПФ. После этого создаем задачу, в данном проекте, все необходимые параметры для подключения будут настроены.
Важно!
На новых аккаунтах после внедрения в Планфикс сущности Объект, после установки конфигурации, необходимо будет создать новый шаблон задачи, в котором: указываем проект - Проект на разработку, также, в дополнительных параметрах, необходимо поменять процесс со Стандартного на Разработка. Далее, создаем в Планфикс новый проект, выбираем шаблон Проект на разработку. В разделе Роли в проекте, назначаем ведущего программиста. После этого, создаем задачу в данном проекте. При создании задачи, меняем Стандартный шаблон, на Старый шаблон, в котором выбираем вновь созданный шаблон, для данного проекта. Остается только указать название вновь созданной задачи, все остальные параметры для подключения будут настроены.
Настройка соответствия пользователей
Для корректной работы необходимо сопоставить пользователей в системах, если установка не была произведена с нуля и в Gitlab присутствуют сотрудники и проекты. В случае, если пропустить данный этап, пользователи в GitLab будут созданы автоматически используя данные из Планфикс.
Для сопоставления нажмите на кнопку Выполнить под Соответствие пользователей на главной (Сервис -> GitPF) или по ссылке и нажмите на кнопку Добавить. В Выпадающих полях выберите пользователей и нажмите Сопоставить.
Настройка соответствия проектов
Для корректной работы необходимо сопоставить проекты в системах, если установка не была произведена с нуля и в Gitlab присутствуют и проекты. В случае, если пропустить данный этап, проекты в GitLab будут созданы автоматически исходя из проектов в Планфикс
Для сопоставления нажмите на кнопку Выполнить под Соответствие пользователей на главной (Сервис -> GitPF) или по ссылке и нажмите на кнопку Добавить. В Выпадающих полях выберите проекты и нажмите Сопоставить. Если необходимо перенести задачи, то выберите соответствующие флажки. Процесс переноса задач будет выполнен в фоне.
Для импорта проктов из одной системы в другую используйте Импорт на странице проектов
Для сопоставления статусов используйте кнопку Настроить в колонке Сопоставление статусов на странице проектов
Использование
После завершения установки и настройки, комментарии и задачи будут синхронизироваться. Ддя того, чтобы задача из Планфикс попала в Обсуждения в Gitlab нужно указать шаблон задачи - задача на разработку из установленной конфигурации.
Все новые задачи в Gitlab из сопоставленных проектов будут автоматически создаваться в Планфикс.
Для отметки фактического времени в Gitlab добавьте комментарий с содержимым /spend 5h 10m
В случае возникновения вопросов или ошибок, обращайтесь на mailbox@poravinternet.ru
Документация phpDocumentator