Мы хотим определить версию проекта для нашего проекта Gradle во время сборки нашего проекта в конвейере Jenkins, который будет включать метку времени и git-commit-id. ( 20180625180158-b8ad8df0dc0356a91707eaa241de7d62df6a29f2 )
void defineVersion() {
sh "git rev-parse HEAD > .git/commit-id"
commitId = readFile('.git/commit-id')
timestamp = getCurrentTimestamp()
version = timestamp+'-'+commitId
}
Эта функция определяет версию, с которой я хочу опубликовать наш артефакт.
Затем я использую плагин Artifactory Gradle для публикации, но я не могу найти способ установить / переопределить версию проекта. Я хочу, чтобы банка была опубликована с версией 20180625180158-b8ad8df0dc0356a91707eaa241de7d62df6a29f2
version = defineVersion() // how can we incorperate this version in our gradle build/publish?
gradleBuild = Artifactory.newGradleBuild()
gradleBuild.useWrapper = true
gradleBuild.deployer(
repo: env.BRANCH_NAME == 'master' ? 'libs-releases-local' : 'libs-snapshots-local',
server: Artifactory.server('artifactory-global'))
gradleBuild.run tasks: 'clean build artifactoryPublish'
Как мы можем этого достичь? Также я хотел бы передать другие параметры, такие как -x test , в команду run, чтобы пропустить тесты на этом этапе.