私のasciidoctorドキュメントで使用するために、最新のgitタグをgradleタスクで取得しようとしています。私の仕事が成功しても、私のasciidoctorカスタム属性は常に空です。これは私が私の最新のgitタグを取得した方法です:先行タスクから発行されたasciidoctor gradleタスクにカスタム属性を与える
project.ext {
latestTag= 'N/A'
}
task retrieveLatestTag {
doLast {
new ByteArrayOutputStream().withStream { os ->
def result = exec {
commandLine('git', 'rev-list', '--tags', '--max-count=1')
standardOutput = os
}
ext.latestTagName = os.toString().trim()
}
}
}
task setLastStableVersion {
dependsOn retrieveLatestTag
doLast {
new ByteArrayOutputStream().withStream { os ->
def result = exec {
commandLine('git', 'describe', '--tags', retrieveLatestTag.latestTagName)
standardOutput = os
}
project.ext.latestTag = os.toString().trim()
}
}
}
そして今、ここに私のasciidoctorタスクされています
asciidoctor {
dependsOn setLastStableVersion
attributes \
'build-gradle' : file('build.gradle'),
'source-highlighter': 'coderay',
'imagesdir': 'images',
'toc': 'left',
'toclevels': '4',
'icons': 'font',
'setanchors': '',
'idprefix': '',
'idseparator': '-',
'docinfo1': '',
'tag': project.latestTag
}
マイカスタムプロパティタグは、私が最初に設定されたデフォルト値のように、常に「N/A」でありますタグが正常に取得されても誰もこれのような前に何かをしようとしましたか?
ありがとうございます、それは魅力のように動作します!私がgradleに慣れてこなかったので、私はこれらの段階について本当に気づいていなかった。 –