Перейти к содержанию

Как собрать Hysteria

Hysteria имеет собственную систему сборки на Python под названием «Hyperbole». Для использования Hyperbole вам потребуется:

  • Python 3
  • Набор инструментов Go
  • Git

Предположим, что вы клонировали репозиторий Hysteria. Перейдите в корневую директорию репозитория и выполните одну из следующих команд:

python hyperbole.py build # (1)!
# или
python hyperbole.py build -r # (2)!
# или
python hyperbole.py build -p # (3)!
  1. Собрать отладочную версию для текущей платформы.
  2. Собрать релизную версию для текущей платформы.
  3. Собрать отладочную версию с поддержкой pprof для текущей платформы.

Для сборки под другие платформы используйте переменную окружения HY_APP_PLATFORMS:

export HY_APP_PLATFORMS="linux/amd64,windows/amd64,darwin/amd64"

ПРИМЕЧАНИЕ: Hyperbole — это внутренний инструмент, который может часто меняться. Читайте исходный код для получения информации обо всех доступных опциях.

Для контрибьюторов

Убедитесь, что у вас установлен gofumpt, и выполните следующие команды перед коммитом:

python hyperbole.py format
python hyperbole.py tidy

Если вы изменили интерфейс, для которого есть мок, установите mockery и выполните следующую команду перед коммитом:

python hyperbole.py mockgen

Также следует как минимум протестировать изменённые модули:

python hyperbole.py test # (1)!
# или
python hyperbole.py test core # (2)!
  1. Запустить все тесты.
  2. Запустить тесты только для модуля core.

ПРИМЕЧАНИЕ: Некоторые тесты также требуют Python 3 и даже некоторые сторонние пакеты. Если возникают ошибки, установите их и попробуйте снова.