Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android gradle task Google Appengine

I'm trying to write a gradle task for my android application that starts the google appengine developer server, runs a test, and then closes the server.

What I've tried so far looks like this:

task runAppEngine (dependsOn: ":backend:appengineRun") <<{
   //run test 
   //stop development server
    }

The appengineRun task runs, but whatever I put in the doLast section of the gradle task never seems to get executed. For example if I put in a println statement it is never printed to the console.

I'm also not sure how to go about calling appengineStop from the task to stop the development server as well.

Thanks for any help anyone can offer!

like image 384
Alex Holliday Avatar asked Jul 15 '15 15:07

Alex Holliday


1 Answers

You probably need to run your backend:appengineRun task in daemon mode so it allows the gradle process to continue. See : https://github.com/GoogleCloudPlatform/gradle-appengine-plugin#convention-properties

This hack seems to work in my testing

task runAppEngine (dependsOn: ":backend:appengineRun") {
  project(":backend").afterEvaluate { backend ->
    backend.extensions.appengine.daemon = true
  }              
  doLast {
    println "started the server!"
  }
}

runAppEngine.finalizedBy ":backend:appengineStop"
// or whatever task you want it to stop after
like image 116
loosebazooka Avatar answered Nov 07 '22 10:11

loosebazooka