From 35caa79019937413cd975909cc5c804b82489771 Mon Sep 17 00:00:00 2001 From: Nikolay Krasko Date: Thu, 17 Sep 2015 18:25:35 +0300 Subject: [PATCH] Auto-increment version from script This allows to have own version system on particular branch. It's planned to be enabled in release branches. --- .../infrastructure/increment-version.kts | 46 +++++++++++++++++++ update_dependencies.xml | 38 ++++++++++++++- 2 files changed, 83 insertions(+), 1 deletion(-) create mode 100644 generators/infrastructure/increment-version.kts diff --git a/generators/infrastructure/increment-version.kts b/generators/infrastructure/increment-version.kts new file mode 100644 index 00000000000..cf2e7f521b1 --- /dev/null +++ b/generators/infrastructure/increment-version.kts @@ -0,0 +1,46 @@ +/* + * Copyright 2010-2015 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import java.io.File + +/** + * Icrements last segement of version string: 0.12.1223 -> 0.12.1224 and writes result to file. + */ +fun main(args: Array) { + val filePathDefault = "updated-version.txt" + + if (args.isEmpty() || args.size() > 2) { + error("Usage: kotlinc -script increment-version.kts " + + " " + + "") + } + + var versionStr = args[0] + + val incrementPartStr = versionStr.takeLastWhile { it.isDigit() } + val versionPrefix = versionStr.take(versionStr.length() - incrementPartStr.length()) + val incrementPart = incrementPartStr.toInt() + + var filePath = args.getOrNull(1) ?: filePathDefault + + val result = "${versionPrefix}${incrementPart + 1}" + + println("prefix=$versionPrefix incrementPart=$incrementPart result=$result filePath=$filePath") + + File("$filePath").writeText("$result") +} + +main(args) \ No newline at end of file diff --git a/update_dependencies.xml b/update_dependencies.xml index f1e4e59f638..0e03a8bae96 100644 --- a/update_dependencies.xml +++ b/update_dependencies.xml @@ -8,6 +8,12 @@ + + + + @@ -102,7 +108,7 @@ - + @@ -775,4 +781,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +