问题
I need deploy my plugin into Nexus repository and create tag in my SCM (Subversion).
In BuildConfig.groovy
I wrote build ":release:3.0.1"
in plugin section and set up repository:
grails.project.repos.releases.url="http://my-nexus:8081/content/repositories/releases"
grails.project.repos.releases.username="deployment"
grails.project.repos.releases.password="deployment123"
When I launched grails publish-plugin --repository=releases
command, I get WARN: No SCM provider installed.
If I fix this warning, it will create a tag on Subversion? How can I fix this warning, please?
回答1:
SVN tagging actually still works in 2.4.4 if you include the necessary dependencies in your BuildConfig. I didn't realize that it was removed intentionally. In fact, I was actually looking to get this working after migrating to Git, which led me here. I'll probably resort to letting the build server do the tagging for Git, but here's how to get it working for 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
}
}
回答2:
That's an ignorable warning. Subversion support was removed from the plugin after we switched from releasing plugins and source at http://svn.codehaus.org/grails-plugins/ to expecting that developers will maintain their own source (many were already doing this) and releasing plugins to the Artifactory server at http://repo.grails.org/grails/webapp/home.html?0
The currrent "standard" release process doesn't create any tags; instead it creates a new subfolder for the current version and deploys the plugin zip, plugin.xml, and the Maven POM file there, e.g. http://repo.grails.org/grails/simple/plugins-releases-local/org/grails/plugins/acegi/0.5.3.2/
If you want to tag your source you can look in the Git history of the plugin (the source is here) to see how it previously did that programmatically in Groovy/Java, or make that part of a script and do it from the commandline after running the release script.
来源:https://stackoverflow.com/questions/27961477/grails-no-scm-provider-installed