27 lines
672 B
Groovy
Raw Normal View History

2010-07-06 23:52:11 +01:00
package gae;
import com.google.appengine.tools.admin.AppCfg
import org.gradle.api.*;
class GaePlugin implements Plugin<Project> {
2015-03-23 11:14:26 -05:00
public void apply(Project project) {
if (!project.hasProperty('appEngineSdkRoot')) {
println "'appEngineSdkRoot' must be set in gradle.properties"
} else {
System.setProperty('appengine.sdk.root', project.property('appEngineSdkRoot'))
}
2010-07-06 23:52:11 +01:00
2015-03-23 11:14:26 -05:00
File explodedWar = new File(project.buildDir, "gae-exploded")
2010-07-06 23:52:11 +01:00
2015-03-23 11:14:26 -05:00
project.task('gaeDeploy') << {
AppCfg.main("update", explodedWar.toString())
}
2010-07-06 23:52:11 +01:00
2015-03-23 11:14:26 -05:00
project.gaeDeploy.dependsOn project.war
2010-07-06 23:52:11 +01:00
2015-03-23 11:14:26 -05:00
project.war.doLast {
ant.unzip(src: project.war.archivePath, dest: explodedWar)
}
}
2010-07-06 23:52:11 +01:00
}