version.gradle 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. /*
  2. Version Info Examples
  3. =====================
  4. Nightly Build Snapshot
  5. * Full Version: 3.1-5124
  6. * POM Version: 3.1.0-SNAPSHOT
  7. * NBM Revision: 5124
  8. * NBM UC Suffix: nightly/3.1/plugins
  9. Nightly Build Snapshot (PBRIsComing branch)
  10. * Full Version: 3.1-PBRIsComing-5124
  11. * POM Version: 3.1.0-PBRIsComing-SNAPSHOT
  12. * NBM Revision: 5124
  13. * NBM UC Suffix: PBRIsComing-nightly/3.1/plugins
  14. Alpha1 Release
  15. * Full Version: 3.1-alpha1
  16. * POM Version: 3.1.0-alpha1
  17. * NBM Revision: 1
  18. * NBM UC Suffix: stable/3.1/plugins
  19. Final Release
  20. * Full Version: 3.1
  21. * POM Version: 3.1.0
  22. * NBM Revision: 5
  23. * NBM UC Suffix: stable/3.1/plugins
  24. */
  25. import java.text.SimpleDateFormat
  26. import org.ajoberstar.grgit.*
  27. buildscript {
  28. repositories {
  29. mavenCentral()
  30. }
  31. dependencies {
  32. classpath 'org.ajoberstar:gradle-git:1.2.0'
  33. }
  34. }
  35. ext {
  36. jmeRevision = 0
  37. jmeNbmRevision = 0
  38. jmeGitHash = ""
  39. jmeGitTag = ""
  40. jmeShortGitHash = ""
  41. jmeBuildDate = new SimpleDateFormat("yyyy-MM-dd").format(new Date())
  42. jmeBranchName = "unknown"
  43. jmeFullVersion = "${jmeVersion}-UNKNOWN"
  44. jmePomVersion = "unknown"
  45. jmeNbmUcSuffix = "unknown"
  46. }
  47. task configureVersionInfo {
  48. try {
  49. def grgit = Grgit.open(project.file('.'))
  50. jmeRevision = grgit.log(includes:['HEAD']).size()
  51. jmeGitHash = grgit.head().id
  52. jmeShortGitHash = grgit.head().abbreviatedId
  53. jmeBranchName = grgit.branch.current.name
  54. jmeGitTag = grgit.describe()
  55. if (jmeGitTag == null) jmeGitTag = ""
  56. if (System.env.TRAVIS_BRANCH != null) {
  57. jmeBranchName = System.env.TRAVIS_BRANCH
  58. }
  59. if (System.env.TRAVIS_TAG != null) {
  60. jmeGitTag = System.env.TRAVIS_TAG
  61. }
  62. if (System.env.TRAVIS_PULL_REQUEST != null &&
  63. System.env.TRAVIS_PULL_REQUEST != "false") {
  64. jmeBranchName += "-pr-" + System.env.TRAVIS_PULL_REQUEST
  65. }
  66. jmeFullVersion = jmeMainVersion
  67. jmePomVersion = jmeVersion
  68. if (jmeBranchName != "master") {
  69. jmeFullVersion += "-${jmeBranchName}"
  70. jmePomVersion += "-${jmeBranchName}"
  71. jmeNbmUcSuffix = "${jmeBranchName}-"
  72. } else {
  73. jmeNbmUcSuffix = ""
  74. }
  75. if (jmeVersionTag == "SNAPSHOT") {
  76. jmeNbmUcSuffix += "nightly"
  77. } else {
  78. jmeNbmUcSuffix += "stable"
  79. }
  80. jmeNbmUcSuffix += "/" + jmeMainVersion + "/plugins"
  81. if (jmeVersionTag == "SNAPSHOT") {
  82. jmeFullVersion += "-${jmeRevision}"
  83. jmePomVersion += "-SNAPSHOT"
  84. jmeNbmRevision = jmeRevision
  85. } else if (jmeVersionTag == "") {
  86. jmeNbmRevision = jmeVersionTagID
  87. } else {
  88. jmeFullVersion += "-${jmeVersionTag}"
  89. jmePomVersion += "-${jmeVersionTag}"
  90. jmeNbmRevision = jmeVersionTagID
  91. }
  92. logger.warn("Full Version: ${jmeFullVersion}")
  93. logger.warn("POM Version: ${jmePomVersion}")
  94. logger.warn("NBM Revision: ${jmeNbmRevision}")
  95. logger.warn("NBM UC Suffix: ${jmeNbmUcSuffix}")
  96. } catch (ex) {
  97. // Failed to get repo info
  98. logger.warn("Failed to get repository info: " + ex.message + ". " + \
  99. "Only partial build info will be generated.")
  100. }
  101. }