Skip to content

Commit 8636143

Browse files
authored
Merge pull request #13 from scalableminds/versioning
in CI build, use incremented git tag version as build version. locally, use DEV-<branchname>
2 parents 7872a65 + 496a61f commit 8636143

File tree

3 files changed

+34
-14
lines changed

3 files changed

+34
-14
lines changed

.circleci/config.yml

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ jobs:
2121
SBT_VERSION_TAG: sbt-0.13.15_mongo-3.2.17_node-8.x_jdk-8
2222
USER_UID: 1001
2323
USER_GID: 1001
24+
TARGET_DIR: &target_dir target/scala-2.12
2425
steps:
2526
- checkout
2627
- attach_workspace:
@@ -34,10 +35,14 @@ jobs:
3435
- run:
3536
name: Build server
3637
command: docker-compose run sbt sbt assembly
38+
- run:
39+
name: Get FossilDB version
40+
command: docker-compose run sbt java -jar $TARGET_DIR/fossildb.jar --version > $TARGET_DIR/version
3741
- persist_to_workspace:
38-
root: target/scala-2.12
42+
root: *target_dir
3943
paths:
4044
- fossildb.jar
45+
- version
4146
- save_cache:
4247
key: cache-{{ .Branch }}
4348
paths:
@@ -139,7 +144,7 @@ jobs:
139144
-r fossildb
140145
-c $(git rev-parse HEAD)
141146
-b "executable jar of __fossildb__"
142-
$(git semver next)
147+
$(cat /tmp/workspace/version)
143148
/tmp/workspace/fossildb.jar
144149
145150
workflows:

build.sbt

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,19 @@ import sbtbuildinfo.{BuildInfoKey, BuildInfoOption}
33

44
name := "fossildb"
55

6-
version := "0.1"
6+
def getVersionFromGit: String = {
7+
def run(cmd: String): String = (new java.io.BufferedReader(new java.io.InputStreamReader(java.lang.Runtime.getRuntime().exec(cmd).getInputStream()))).readLine()
8+
def getBranch = run("git rev-parse --abbrev-ref HEAD")
9+
10+
if (sys.env.get("CI").isDefined && getBranch == "master") {
11+
val oldVersion = run("git describe --tags --abbrev=0").split('.').toList.map(_.toInt)
12+
(oldVersion.init :+ (oldVersion.last + 1)).mkString(".")
13+
} else {
14+
"DEV-" + getBranch
15+
}
16+
}
17+
18+
version := getVersionFromGit
719

820
scalaVersion := "2.12.4"
921

src/main/scala/com/scalableminds/fossildb/FossilDB.scala

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -15,23 +15,26 @@ case class Config(port: Int = ConfigDefaults.port, dataDir: String = ConfigDefau
1515
object FossilDB extends LazyLogging {
1616
def main(args: Array[String]) = {
1717

18-
parseArguments(args) match {
19-
case Some(config) => {
20-
logger.info("Starting FossilDB")
21-
logger.info("BuildInfo: (" + BuildInfo + ")")
22-
logger.info("Config: " + config)
18+
if (args.contains("--version"))
19+
println(BuildInfo.version)
20+
else {
21+
parseArguments(args) match {
22+
case Some(config) => {
23+
logger.info("Starting FossilDB")
24+
logger.info("BuildInfo: (" + BuildInfo + ")")
25+
logger.info("Config: " + config)
2326

24-
val storeManager = new StoreManager(Paths.get(config.dataDir), Paths.get(config.backupDir), config.columnFamilies)
27+
val storeManager = new StoreManager(Paths.get(config.dataDir), Paths.get(config.backupDir), config.columnFamilies)
2528

26-
val server = new FossilDBServer(storeManager, config.port, ExecutionContext.global)
29+
val server = new FossilDBServer(storeManager, config.port, ExecutionContext.global)
2730

28-
server.start()
29-
server.blockUntilShutdown()
31+
server.start()
32+
server.blockUntilShutdown()
3033

3134
}
32-
case None => ()
35+
case None => ()
36+
}
3337
}
34-
3538
}
3639

3740
def parseArguments(args: Array[String]) = {

0 commit comments

Comments
 (0)