Этот репозиторий использует семантические версии. Пожалуйста, имейте это в виду при выборе номеров версий.
Убедитесь, что все зависимости актуальны
Перед началом выпуска убедитесь, что все зависимости актуальны или объясните причины отсутствия актуальности. Особое внимание обратите на процесс безопасности, который должен выполняться корректно.
Объявите остальным участникам о начале выпуска
Во время процесса выпуска не должно быть сделано никаких коммитов в ветку master (приблизительно 10 минут). Перед началом выпуска сообщите другим участникам на gitter, чтобы они случайно не слили изменения. Если это произойдет, и сборка завершится ошибкой из-за этого, вам придется заново создать тег выпуска, описанный ниже.
Создайте тег git
Формат триггера — release-VER_MAJ.VER_MIN.VER_PATCH
, например git tag release-1.18.1 && git push origin release-1.18.1
.
Подождите выполнение CI
Тег release-VER_MAJ.VER_MIN.VER_PATCH
запускает build-bin/maven/maven_release
,
который создаёт коммиты, тег VER_MAJ.VER_MIN.VER_PATCH
, и увеличивает версию (maven-release-plugin). Тег VER_MAJ.VER_MIN.VER_PATCH
запускает build-bin/deploy
, который выполняет следующие действия:
build-bin/maven/maven_deploy
build-bin/docker_push
Примечания:Процесс выпуска использует различные учетные записи доступа. Если вы заметили, что что-то не работает из-за недостаточного уровня доступа, проверьте примечания в [.github/workflows/deploy.yml] и проверьте организационные секреты.
Если вы получили ошибку '401 Unauthorized' от OSSRH, скорее всего введённые значения SONATYPE_USER
или SONATYPE_PASSWORD
неверны, либо связанный с ними пользователь не имеет прав на загрузку. Наименее разрушительный тест — попробовать опубликовать снимок вручную. Передав значения, которые бы использовал CI, вы можете запустить снимок с вашего ноутбука. Это хороший способ проверить, что ваши незашифрованные учетные данные имеют необходимые права доступа.
Вот пример развертывания снимка с указанными учетными данными.
$ export GPG_TTY=$(tty) && GPG_PASSPHRASE=whackamole SONATYPE_USER=adrianmole SONATYPE_PASSWORD=ed6f20bde9123bbb2312b221 build-bin/build-bin/maven/maven_deploy
Если по какой-то причине вам недоступен CI или вы не можете использовать автоматизацию, помните, что это обычный проект Maven, который можно выпускать соответственно.Примечание: Если Sonatype недоступен, следующий скрипт не будет работать.
# Сначала установите переменные в соответствии с вашими личными учетными данными. Обычно эти переменные назначаются как секреты организации: https://github.com/organizations/openzipkin/settings/secrets/actions
export GPG_TTY=$(tty)
export GPG_PASSPHRASE=ваш_пароль_GPG
export SONATYPE_USER=ваш_аккаунт_Sonatype
export SONATYPE_PASSWORD=ваш_пароль_Sonatype
release_version=xx-версия-для-выпуска-xx
# Теперь из последней версии master создайте выпуск. Это создаёт и пушит тэг MAJOR.MINOR.PATCH
./build-bin/maven/maven_release release-${release_version}
# После успешной работы, разверните выпуск
git checkout ${release_version}
./build-bin/deploy
# Наконец, очистите
./mvnw release:clean
git checkout master
git reset --hard HEAD
Пояснений и комментариев нет, только исправленный текст.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )