20:49, 26 декабря 2023

Релиз инструмента для аналитики пулл реквестов и процесса код ревью

К концу года удалось доделать основные фичи по pull request analytics action. Сейчас как раз время подводить итоги в командах - и этот инструмент может очень просто, бесплатно и безопасно собрать аналитику в гитхабе и отобразить это в таблицах и графиках.

Читать на сайте

К концу года удалось доделать основные фичи по pull request analytics action. Сейчас как раз время подводить итоги в командах - и этот инструмент может очень просто, бесплатно и безопасно собрать аналитику в гитхабе и отобразить это в таблицах и графиках.

Метрики

  1. Время прохождения ПРа от открытия до ревью, аппрува и влития

  2. Количество проделанной работы выраженное в количестве влитых ПРов, измененных строк и проведенных код ревью.

  3. Качество открытых ПРов, выраженное в количестве открытых дискуссий, запрошенных изменений и полученных комментариев

  4. Вовлеченность в процесс ревью, основанная на количестве ревью, открытых дискуссий.

Все эти данные отображаются как по команде в целом, так и по отдельным разработчикам. Также можно сравнить показатели от месяца к месяцу.

Пример таблицы с анализом полученного ревью

Полноценный пример отчета можно посмотреть здесь

Настройка

Все, что необходимо - добавить github action в проект. Для этого в корне проекта надо добавить папку .github/workflows и создать там yml файл.

Пример файла(необходимо добавить только токен и репозитории для аналитики):

name: "PR Analytics"
on:
  workflow_dispatch:
    inputs:
      report_date_start:
        description: "Report date start(d/MM/yyyy)"
        required: false
      report_date_end:
        description: "Report date end(d/MM/yyyy)"
        required: false
jobs:
  create-report:
    name: "Create report"
    runs-on: ubuntu-latest
    steps:
      - name: "Run script for analytics"
        uses: AlexSim93/pull-request-analytics-action@master
        with:
          GITHUB_TOKEN: ${{ secrets.TOKEN }}
          LABELS: "Report"
          GITHUB_REPO_FOR_ISSUE: "repo"
          GITHUB_OWNER_FOR_ISSUE: "owner"
          GITHUB_OWNERS_REPOS: "owner-1/repo-1"
          CORE_HOURS_START: "9:00"
          CORE_HOURS_END: "19:00"
          TIMEZONE: "Europe/Moscow"
          REPORT_DATE_START: ${{ inputs.report_date_start }}
          REPORT_DATE_END: ${{ inputs.report_date_end }}

Файл необходимо влить в основную ветку и тогда экшн появится в списке доступных для запуска. Выбирайте созданный экшн в списке слева и нажимайте run workflow. Для того чтобы собрать отчет с начала года в поле Report date start надо указать 01/01/2023. Отчет будет доступен в issues указанного репозитория.

Заключение

Инструмент может быть полезен не только для подведения итогов, но и для контроля качества, определения проблемных или сильных мест в процессах в будущем. Как и любая статистика - она не учитывает всех нюансов, но может дополнять другие метрики или мнения. Список параметров для настройки большой, чтобы подробнее изучить его можно перейти на страницу экшна.

Обсудить