Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
The update-plugin-master command can now work against the database
configured for the current environment (default 'dev'). To use JDNI,
simply call the command with the --url, --username, and --password
arguments as before.
  • Loading branch information
pledbrook committed May 27, 2010
1 parent 7cc6dd6 commit c09e02b
Showing 1 changed file with 25 additions and 32 deletions.
57 changes: 25 additions & 32 deletions grails.org/scripts/UpdatePluginMaster.groovy
Expand Up @@ -4,49 +4,42 @@ import org.apache.commons.dbcp.*
includeTargets << grailsScript( "Bootstrap" )

target(main:"the default target") {
depends(parseArguments)
depends(parseArguments, configureProxy)

def username = argsMap.user
if(username==null) {
println "--user argument not specified"
exit(1)
}
def password = argsMap.pass
if(password==null) {
println "--pass argument not specified"
exit(1)
}

def url = argsMap.url
if(!url) {
println "--url argument not specified"
exit(1)
}


// mock out the production JNDI settings
def builder = new SimpleNamingContextBuilder();
def ds = new BasicDataSource()
ds.username = username
ds.password = password
ds.url = url
ds.driverClassName = "com.mysql.jdbc.Driver"
if (url) {
if (username == null || password == null) {
println "When you use the --url argument, you must also specify --username and --password."
exit(1)
}

// mock out the production JNDI settings
def builder = new SimpleNamingContextBuilder();
def ds = new BasicDataSource()
ds.username = username
ds.password = password
ds.url = url
ds.driverClassName = "com.mysql.jdbc.Driver"

builder.bind("java:comp/env/jdbc/grailsSiteDS", ds);
builder.activate();
builder.bind("java:comp/env/jdbc/grailsSiteDS", ds)
builder.activate()
}

try {
bootstrap()
def pluginService = appCtx.getBean("pluginService")
println "Syncing plugin list. Please wait.."
pluginService.runMasterUpdate()
println "Plugin list sync complete."
bootstrap()
def pluginService = appCtx.getBean("pluginService")
println "Syncing plugin list. Please wait.."
pluginService.runMasterUpdate()
println "Plugin list sync complete."
}
catch(e) {
println "Error occurred syncing plugin list ${e.message}"
e.printStackTrace()
println "Error occurred syncing plugin list ${e.message}"
e.printStackTrace()
}


}
setDefaultTarget(main)
setDefaultTarget(main)

0 comments on commit c09e02b

Please sign in to comment.