assayo/documents/SIMPLE_RU.md
Бахирев 68d3283497 update
2024-02-28 23:17:21 +03:00

9.5 KiB
Raw Blame History

Assayo

Визуализация и анализ данных вашего git-репозитория (демонстрация).

Сотрудник может оценить новое место работы
  • темп работы;
  • количество переработок;
  • зоны ответственности;
  • объем нового функционала и багов;
  • стиль работы коллег;
Руководитель может оценить сотрудников
  • выявить бездельников;
  • прикинуть объём кода;
  • узнать скорость работы;
  • заметить аномалии поведения;
  • посмотреть динамику работы по неделям;
Инвестор может оценить продукт
  • стоимость продукта;
  • стоимость нового функционала;
  • время на разработку;
  • прогноз времени доработок;
  • прогноз стоимости;

Как быстро посмотреть количество коммитов?

В корневой директории вашего проекта выполнить команду:

git shortlog -s -n -e

Как объединить авторов?

В корневой директории вашего проекта нужно создать файл .mailmap. Пример содержания файла:

Alex B <alex@mail.uk>
Alex B <alex@mail.uk> <alex@gov.tk>
Alex B <alex@mail.uk> <bakhirev@ya.kz>
Alex B <alex@mail.uk> <man64@yahoo.com>

Подробнее про формат этого файла можно прочитать тут.

Как выгрузить данные из git?

Для онлайн просмотра

В корневой директории вашего проекта выполнить:

git --no-pager log --numstat --oneline --all --reverse --date=iso-strict --pretty=format:"%ad>%cN>%cE>%s" > log.txt

Для просмотра без интернета

git --no-pager log --numstat --oneline --all --reverse --date=iso-strict --pretty=format:"%ad>%cN>%cE>%s" | sed -e 's/\\/\\\\/g' | sed -e 's/`/"/g' | sed -e 's/^/report.push(\`/g' | sed 's/$/\`\);/g' | sed 's/\$/_/g' > log.txt

Git создаст файл log.txt. Этот файл содержит данные для построения отчёта.

Разница между форматами в наличие обёртки для строк. Формат без интернета будет подтягиваться, как js файл если вы просто открыли /build/index.html

Как посмотреть отчёт с интеретом?

Как посмотреть отчёт без интернета?

  • Скачать этот репозиторий
  • Перетащить файл log.txt в папку /build
  • Запустить /build/index.html
  • Или перетащить папку /build к себе в репозиторий (место, где лежит log.txt). Можно изменить название. Например с названия /build на название /report

Важно, чтобы файл log.txt был создан командой для просмотра без интернета.

Как пересобрать файл отчёта?

  • Скачать этот репозиторий
  • Выполнить npm install
  • Выполнить npm run build
  • Свежая сборка будет в папке /build

Как посмотреть отчёт по группе микросервисов?

  • Сгенерировать для каждого микросервиса файл log.txt (log-1.txt, log-2.txt, log-3.txt и т.д.)
  • См. “Как посмотреть отчёт с интернетом?”. На последнем шаге перетащить сразу все файлы в окно браузера.
  • См. “Как посмотреть отчёт без интернета?”. На втором шаге перетащить все файлы микросервисов (log-1.txt, log-2.txt, log-3.txt и т.д.) в папку отчета (/build).

Как перекрасить интерфейс в свои фирменные цвета?

Вы можете написать свою тему оформления для интерфейса. Можно менять:

  • Заголовок. Вы можете указать его в URL-параметре title. Например: ?title=You Company
  • CSS стили. Для этого нужно подготовить CSS файл и указать его адрес в URL-параметре theme. Например: ?theme=//company.com/some.css. Вы можете использовать имена классов в качестве селекторов. Большинство из них не меняется в при выходе новой версий.
  • Язык. Вы можете указать его в URL-параметре lang. Например: ?lang=es

Как подписывать коммиты?

Следуйте практике Conventional Commits 1.0.0. Например:

JIRA-1234 feat(profile): Added avatar for user 
  • номер задачи (JIRA-1234)
  • тип работы (feat, fix, style, refactor, test, doc и т.д.)
  • область работы (profile - раздел сайта, страница или новый функционал, одним словом)
  • описание работы (Added avatar for user)

Как автоматизировать сбор данных?

Без бекенда

  • создайте клон вашего репозитория;
  • скопируйте папку build из текущего репозитория;
  • откройте build/index.html в браузере и добавьте в закладки;
  • добавьте ярлык на build/assets/ci-cd.sh в папку автозагрузки (Windows);

Каждый раз, при перезагрузке компьютера, скрипт будет обновлять статистику по всем данным, которые автоматически влились в основную ветку.

DevOps (CI/CD)

Публичный сервер

Вы можете выкладывать файл с данными для построения отчёта на публичный URL. Для его визуализации можно использовать сайт assayo. Указывайте адресс, где лежат данные, в URL-параметре dump:

https://assayo.online/demo/?dump=//you_site.com/some/log.txt

Приватный сервер

  • скачайте docker образ;
  • запустите его в локальной сети;
  • для просмотра отчётов используйте веб-интерфейс, указывая ему адресс, где лежат данные, в URL-параметре dump:
http://assayo_url/?dump=//you_url/some/log.txt
assayo_url - URL адресс контейнера assayo, он слушает 80 порт;
you_url    - URL адресс вашего контейнера с логами git;

По умолчанию образ запустится по адресу http://127.0.0.1:80/. Если не получилось проверьте свободен ли у вас 80 порт.

Обновление Docker-образа

  • выполнить команду npm run build
  • выполнить команду docker build -t assayo .
  • проверить результат docker run --name assayo -p 80:80 -d assayo;
  • выполнить команду docker tag IMAGE_ID bakhirev/assayo:latest;
  • отправить образ контейнера в Docker Hub

Релизы, примерно, раз в полгода. Что дальше:

Смотри главную документацию

Как добавить или отредактировать перевод?

Вы можете добавить новый перевод или поправить текущий в разделе ts/translations/. Инструкция

Пожелания, предложения, замечания