我需要将我的插件部署到Nexus存储库并在我的SCM(Subversion)中创建标记。
在BuildConfig.groovy
我在插件部分中编写了build ":release:3.0.1"
并设置了存储库:
grails.project.repos.releases.url="http://my-nexus:8081/content/repositories/releases"
grails.project.repos.releases.username="deployment"
grails.project.repos.releases.password="deployment123"
当我启动grails publish-plugin --repository=releases
命令时,我得到WARN: No SCM provider installed.
如果我修复此警告,它将在Subversion上创建一个标记? 我该如何解决此警告?
答案 0 :(得分:1)
这是一个可以忽略的警告。我们从http://svn.codehaus.org/grails-plugins/发布插件和源代码切换到预期开发人员将维护自己的源代码(许多人已经这样做了)并在http://repo.grails.org/grails/webapp/home.html?0向Artifactory服务器发布插件后,从插件中删除了Subversion支持
当前的“标准”发布流程不会创建任何标签;相反,它为当前版本创建一个新的子文件夹,并在那里部署插件zip,plugin.xml和Maven POM文件,例如http://repo.grails.org/grails/simple/plugins-releases-local/org/grails/plugins/acegi/0.5.3.2/
如果要标记源代码,可以查看插件的Git历史记录(源代码为here),以了解它以前在Groovy / Java中以编程方式执行的操作,或者将其作为脚本的一部分并在运行发布脚本后从命令行执行此操作。
答案 1 :(得分:0)
如果在BuildConfig中包含必要的依赖项,SVN标记实际上仍然适用于2.4.4。我没有意识到它是故意删除的。事实上,我实际上是希望在迁移到Git后让这个工作,这导致我在这里。我可能会让构建服务器为Git做标记,但是这里有如何使它适用于SVN:
repositories {
//Required for SVN dependencies
mavenRepo "http://maven.tmatesoft.com/content/repositories/releases/"
}
dependencies {
build("org.tmatesoft.svnkit:svnkit:1.8.6") {
//excludes "jna", "trilead-ssh2", "sqljet"
export = false
}
}
plugins {
build (":release:3.0.1") {
export = false
}
build (":svn:1.0.2") {
export = false
}
}