Я хотел, чтобы номера версий автоматически обновлялись, когда я хочу выпустить новую версию, поэтому я решил выяснить, как это сделать с помощью Play Framework.
Я обнаружил, что могу основывать его на плагине sbt-release , но это было не так просто. Вот моя стратегия, так что в итоге все, что мне нужно сделать, это запустить « activator release
»:
1. Добавьте плагин
Добавьте плагин, добавив эту строку в файл вашего project/plugins.sbt
:
1
|
addSbtPlugin( "com.github.gseitz" % "sbt-release" % "1.0.2" ) |
2. Обновите файл build.sbt:
Добавьте этот импорт в верхней части файла:
1
|
import ReleaseTransformations._ |
Измените строку с версией на эту:
1
|
version := (version in ThisBuild).value |
Затем дополнительно добавьте этот фрагмент кода в конце и закомментируйте этапы конвейера, которые вы не хотите выполнять (Примечание: это, по-видимому, конвейер по умолчанию)
01
02
03
04
05
06
07
08
09
10
11
12
|
releaseProcess := Seq[ReleaseStep]( checkSnapshotDependencies, // : ReleaseStep inquireVersions, // : ReleaseStep runTest, // : ReleaseStep setReleaseVersion, // : ReleaseStep commitReleaseVersion, // : ReleaseStep, performs the initial git checks tagRelease, // : ReleaseStep //publishArtifacts , // : ReleaseStep, checks whether `publishTo` is properly set up setNextVersion, // : ReleaseStep commitNextVersion // : ReleaseStep //pushChanges // : ReleaseStep, also checks that an upstream branch is properly configured ) |
Примечание: я прокомментировал автоматическую публикацию и толчок git
3. Получить номер версии в контроллере и перейти к шаблону
1
2
3
4
5
|
public static Result index() { String title = Application.class.getPackage().getImplementationTitle(); String version = Application.class.getPackage().getImplementationVersion(); return ok(index.render(version)); } |
И отобразить это в шаблоне:
1
2
3
4
|
@(version: String) ... Version: @version |
4. Убедитесь, что все совершено, прежде чем вы отпустите
5. Выполните релиз
После того, как вы выпустите релиз, новая версия будет сохранена в файле versions.sbt .
1
|
activator release |
- Вы можете найти дополнительные параметры и возможности для плагина sbt-release , в том числе стратегии автоматического увеличения версии здесь: https://github.com/sbt/sbt-release
Ссылка: | Как добавить автоматическое обновление номера версии проекта Play Framework 2.X от нашего партнера по JCG Брайана Портера из блога Poornerd . |