Table of contents

Webpack

Webpack-плагин для отправки source maps в Хоуке.

yarn add @hawk.so/webpack-plugin --save-dev

Далее подключите плагин в конфигурации Webpack.

Передайте в опции плагина ваш Integration Token. Удобно хранить его в файле .env.

Для корректной отправки полного содержимого source maps параметр devtool должен быть установлен в значение "source-map".

Учтите, что это может привести к утечке исходного кода, если установить HawkWebpackPlugin.removeSourceMaps в false. Однако по умолчанию после отправки source maps плагин удаляет эти файлы автоматически.

const HawkWebpackPlugin = require('@hawk.so/webpack-plugin'); module.exports = { // ... other webpack options plugins: [ new HawkWebpackPlugin({ integrationToken: '' // Your project's Integration Token }) ], devtool: 'source-map', }
Опция Обязательная Описание
integrationToken да Интеграционный токен вашего проекта
release нет Уникальный идентификатор релиза. По умолчанию используется hash сборки Webpack. Этот идентификатор нужно передать в JavaScript Catcher при инициализации через опцию release
releaseInfoFile нет Путь, по которому будет создан файл release.json. По умолчанию используется output.path из конфигурации Webpack. Можно передать false, чтобы не создавать этот файл, например если вы храните и передаёте release вручную
removeSourceMaps нет Нужно ли удалять сгенерированные .map-файлы после отправки. По умолчанию true
commits нет Объект с настройками Git для определения подозреваемых коммитов. По умолчанию включено. Можно передать false, чтобы не добавлять коммиты в релиз
Опция Тип Описание
repo string Путь к репозиторию с директорией .git. По умолчанию — __dirname

После завершения работы плагин сохраняет информацию о релизе в файл release.json. Вы можете использовать этот файл, чтобы получить идентификатор релиза и передать его в JavaScript Catcher при инициализации.

Если вы хотите отправлять source maps из React-проекта, нужно использовать react-app-rewired или выполнить yarn eject. После этого можно переопределить Webpack-конфигурацию проекта и подключить плагин.