1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/bocloud-open-source-carina

Клонировать/Скачать
CONTRIBUTING.md 12 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 28.02.2025 15:57 57a69e0

Инструкция по вкладу

Перед тем как начать работу

Код поведения

Пожалуйста, прочитайте и следуйте нашему Коду поведения.

Ожидания от участников сообщества

Проект Carina является общественным проектом, управляемым его сообществом, которое стремится продвигать здоровую, дружелюбную и продуктивную среду. Carina — это стандартный плагин CSI для Kubernetes. Пользователи могут использовать стандартные ресурсы хранения Kubernetes, такие как StorageClass/PVC/PV, чтобы запрашивать носители данных.

Начало работы

  • Создайте форк репозитория на GitHub.
  • Внесите изменения в ваш форк репозитория.
  • Подайте запрос на слияние.

Ваш первый вклад

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

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

Поиск задачи для выполнения

Мы всегда нуждаемся в помощи, будь то исправление документации, отчет о багах или написание кода. Посмотрите на места, где вы чувствуете, что лучшие практики программирования не соблюдаются, требуется рефакторинг кода или пропущены тесты. Вот как вы можете начать работу.

Поиск подходящей первой задачи

В организации Carina существует несколько репозиториев. В каждом репозитории есть проблемы с метками "help wanted" и "good first issue", которые являются хорошими первыми задачами для новичков. Например, carina-io/carina имеет эти метки для проблем, которые не требуют глубоких знаний системы. Мы можем помочь новым участникам, желающим работать над такими проблемами.

Другим хорошим способом внесения вклада является поиск улучшений в документации, таких как пропущенные или сломанные ссылки. Пожалуйста, обратитесь ниже к разделу Участие для потока работы.

Работа над проблемой

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

Создание проблемы

Хотя мы призываем всех вносить код, также очень ценятся отчеты о проблемах. Проблемы должны быть созданы в соответствующем подрепозитории Carina.

Пример: проблема Carina должна быть открыта в carina-io/carina.

Пожалуйста, следуйте указаниям при открытии проблемы.

Поток работы участника проекта

Пожалуйста, никогда не стесняйтесь задавать вопросы или отправлять запросы на слияние.

Это грубое представление того, как выглядит поток работы участника проекта:

  • Создайте ветку темы из которой будет базироваться вклад. Обычно это основная ветка.
  • Делайте коммиты логических единиц.
  • Отправьте изменения в ветку темы в вашем персональном форке репозитория.
  • Подайте запрос на слияние в carina-io/carina.

Создание запросов на слияние

Запросы на слияние часто называются просто "PR". Carina обычно следует стандартному процессу создания запроса на слияние GitHub. Чтобы подать предложенный вклад, пожалуйста, разработайте код/фиксы и добавьте новые случаи тестирования. После этого проведите эти локальные верификации перед подачей запроса на слияние, чтобы предсказать прохождение или провал непрерывной интеграции.

  • Выполните и пройдите make vet.
  • Выполните и пройдите make test.

Обзор кода

Чтобы сделать ваш запрос на слияние более доступным для обзора, рассмотрите возможность использования следующего:

Формат сообщения коммита

Мы следуем примерному конвенционному формату для сообщений коммитов, который предназначен для ответа на два вопроса: что изменилось и почему. Первое предложение должно содержать "что" и должно быть не длиннее 70 символов, второе предложение всегда пустое, а остальные строки должны быть завернуты до 80 символов. Это позволяет сообщению быть легче читаемым на GitHub, а также в различных инструментах Git.

carina-node: добавлены тестовые коды для carina-node

это добавляет некоторые тестовые коды для повышения покрытия кода для carina-node

Исправляет #666

Формат можно описать более формально следующим образом:

<подсистема>: <что изменилось>
<пустое предложение>
<почему была сделана эта изменение>
<пустое предложение>
<подвал>
```Первая строка — это тема и она должна быть не длиннее 70 символов, вторая строка всегда пустая, а остальные строки должны быть завернуты до 80 символов. Это позволяет сообщению быть легче читаемым на GitHub, а также в различных инструментах Git.


Примечание: если ваш запрос на слияние не получает достаточно внимания, вы можете воспользоваться группой WeChatGroup для получения помощи в поиске рецензентов.

## Тестирование

Существует несколько типов тестов. Расположение тестового кода различается в зависимости от типа, равно как и спецификации необходимого окружения для успешного выполнения теста:

- Единичные: Эти тесты подтверждают, что конкретная функция работает так, как ожидалось. Исходный код для единичных тестов может быть найден рядом с соответствующим исходным кодом внутри данного пакета. Эти тесты легко выполняются локально любым разработчиком.
- Интеграционные: Эти тесты охватывают взаимодействия между компонентами пакета или взаимодействия между компонентами и компонентами управления Kubernetes, такими как сервер API.
- Конец-конца ("end-to-end"): Эти тесты являются широкими тестами общего поведения и согласованности системы.

Непрерывная интеграция будет выполнять эти тесты на запросах на слияние.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/bocloud-open-source-carina.git
git@api.gitlife.ru:oschina-mirror/bocloud-open-source-carina.git
oschina-mirror
bocloud-open-source-carina
bocloud-open-source-carina
main