Пожалуйста, сделайте это! Спасибо за вашу помощь в улучшении Meshery!
Мы приветствуем всех участников. Не знаете, с чего начать? Пожалуйста, ознакомьтесь с руководством для новичков, чтобы узнать, как, где и почему можно внести свой вклад. Этот проект создан сообществом и приветствует сотрудничество. Ожидается, что участники будут соблюдать наш Кодекс поведения.
Всё готово для внесения вклада? Возьмите открытую задачу с меткой help-wanted и приступайте к работе. Присоединяйтесь к нашему каналу Slack и участвуйте в разговоре. Создайте новую задачу, если необходимо. Все запросы на вытягивание должны ссылаться на открытую задачу. Включайте ключевые слова в описания запросов на вытягивание, а также в сообщения о фиксации, чтобы автоматически закрывать связанные задачи в GitHub.
Разделы
Чтобы внести вклад в Meshery, пожалуйста, следуйте описанному здесь процессу разветвления и запроса на вытягивание здесь.
Прежде чем создавать задачу, например, для функций/ошибок/улучшений, выполните следующие действия:
Перед работой над существующей задачей выполните следующие шаги:
Примечания:
- Проверьте поле «Назначенные» вверху страницы, чтобы увидеть, была ли задача назначена кому-то другому, прежде чем запрашивать назначение вам. Если у задачи есть текущий исполнитель, но она кажется неактивной, вежливо спросите текущего исполнителя, продолжают ли они работать над решением и/или можете ли вы сотрудничать с ними. Только запрос на назначение задачи должен быть сделан, если вы знаете, как над ней работать.
- Если задача неясна, задайте вопросы, чтобы получить больше ясности, прежде чем просить назначить вам задачу; избегайте вопросов «что мне делать дальше? как это исправить?» (см. пункт выше этой строки).
- Задачу можно назначить нескольким людям, если все вы согласны сотрудничать над задачей (запрос на извлечение может содержать коммиты от разных участников).
- Любые задачи, которые не имеют активности через 2 недели, будут сняты с назначения и переназначены кому-то другому.
Мы приветствуем всех к обзору запросов на извлечение. Это отличный способ учиться, общаться и поддерживать друг друга.
Чтобы внести свой вклад в этот проект, вы должны согласиться с сертификатом разработчика о происхождении (DCO) для каждого сделанного вами коммита. DCO — это простое заявление о том, что вы, как участник, имеете законное право вносить свой вклад.
См. файл DCO для полного текста того, с чем вы должны согласиться, и как он работает здесь. Чтобы указать, что вы соглашаетесь с DCO для вкладов, вы просто добавляете строку к каждому из ваших сообщений git commit:
Signed-off-by: Jane Smith <jane.smith@example.com>
В большинстве случаев вы можете добавить этот знак к своему коммиту автоматически с флагом -s
или --signoff
для git commit
. Вы должны использовать своё настоящее имя и доступный адрес электронной почты (извините, никаких псевдонимов или анонимных вкладов). Пример подписания коммита:
$ commit -s -m «моё сообщение о коммите с подписью»
Чтобы убедиться, что все ваши коммиты подписаны, вы можете выбрать добавление этого псевдонима в свой глобальный файл .gitconfig
:
~/.gitconfig
[alias]
amend = commit -s --amend
cm = commit -s -m
commit = commit -s
Или вы можете настроить свою IDE, например, Visual Studio Code, чтобы автоматически подписывать коммиты за вас:
Пожалуйста, внесите свой вклад! Документация Meshery использует страницы GitHub для размещения сайта документации. Узнайте больше о структуре документации Meshery. Процесс внесения вклада следует этому потоку:
cd docs
git checkout -b <my-changes>
vi <specific page>.md
make docs
Примечание: Из Makefile эта команда фактически запускает $ bundle exec jekyll serve --drafts --livereload --config _config_dev.yml
. Если эта команда вызывает ошибки, попробуйте запустить сервер без Livereload с этой командой: $ bundle exec jekyll serve --drafts --config _config_dev.yml*. Просто имейте в виду, что вам придётся вручную перезапустить сервер, чтобы отразить любые изменения, внесённые без Livereload. Существует две конфигурации Jekyll,
jekyll serveдля разработки локально и
jekyll build`, когда вам нужно создать артефакты сайта для производства.
git push origin <my-changes>
Альтернативно, LiveReload доступен в качестве опции во время разработки: с jekyll serve --livereload больше не нужно вручную обновлять страницу.
bundle exec jekyll serve --drafts --livereload --incremental --config _config_dev.yml
Meshery написан на языке Go (Golang) и использует модули Go. Пользовательский интерфейс построен на React и Next.js. Чтобы упростить сборку и упаковку, в основной папке репозитория включен Makefile.
Соответствующие руководства по стилю кодирования — это Комментарии к обзору кода Go и раздел «Форматирование и стиль» в книге Питера Бургона Go: Best Practices for Production Environments.
Обратите внимание: все команды make следует запускать в терминале из основной папки Meshery.
git clone https://github.com/meshery/meshery.git
), а затем клонируйте свою разветвленную версию Meshery в вашу среду разработки, предпочтительно вне GOPATH.Прежде чем вы сможете получить доступ к пользовательскому интерфейсу Meshery, вам необходимо установить зависимости пользовательского интерфейса,
make ui-setup
а затем собрать и экспортировать пользовательский интерфейс
make ui-build
Чтобы собрать и запустить сервер Meshery, выполните следующую команду:
make server
Каждый раз, когда вносятся изменения в код Go, вам придется останавливать сервер и снова запускать вышеуказанную команду. Как только сервер Meshery будет запущен, вы сможете получить доступ к Meshery на своем localhost
через порт 9081
по адресу http://localhost:9081
.
Обратите внимание: если при попытке входа на сервер Meshery вы видите сообщение «Meshery Development Incompatible», выполните следующие действия:
Потенциальное решение:
Перейдите в папку meshery в вашей локальной системе, где вы ее клонировали. Выполните:
git remote add upstream https://github.com/meshery/meshery
git fetch upstream
Перезапустите сервер meshery
Кроме того, перед перезапуском сервера, если вы хотите получить последние изменения, вы можете сделать: git pull upstream master
Если вы хотите работать над пользовательским интерфейсом, рекомендуется использовать включенный сервер разработки пользовательского интерфейса. Вы можете запустить сервер разработки пользовательского интерфейса с помощью следующей команды:
make ui
После настройки сервера и успешного запуска на порту по умолчанию http://localhost:3000
, вы можете перейти к пользовательскому интерфейсу Meshery по адресу http://localhost:3000
.
Любые изменения пользовательского интерфейса теперь будут автоматически перекомпилироваться и отображаться в браузере.
Для доступа к серверу разработки пользовательского интерфейса Meshery на порту 3000
вам потребуется выбрать облачного провайдера, перейдя на localhost:9081
после запуска сервера Meshery.
Обратите внимание: при запуске make server
на платформе macOS некоторые могут столкнуться с ошибками модуля crypto в Go. Это вызвано недействительными заголовками C в Clang, установленном вместе с инструментами платформы XCode. Замена Clang на gcc путем добавления export CC=gcc
в .bashrc / .zshrc должна решить проблему. Более подробную информацию о проблеме можно найти... Освой концепции Cobra.
Для работы с конфигурационными файлами mesheryctl
использует Viper.
В файле mesheryctl/internal/cli/root/config/config.go
поддерживается центральный struct
. Эти данные обновляются и должны использоваться для получения конфигурации Meshery.
Для ведения журналов mesheryctl
применяет Logrus. Изучение различных уровней логирования по документации будет очень полезным.
mesheryctl
работает с golangci-lint. Для проверок линтера обратитесь к нему.
Все участники могут просматривать запросы на включение изменений в mesheryctl
, как и в других компонентах Meshery.
Всех участников приглашают проверять запросы на включение изменений. Посмотрите это короткое видео о том, как проверять запрос на включение изменений.
Ресурсы: https://lab.github.com и https://try.github.com/.
Этот репозиторий и сайт доступны как открытый исходный код на условиях лицензии Apache 2.0.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )