Android gradle task Google Appengine

2019-03-16 10:47发布

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!

1条回答
迷人小祖宗
2楼-- · 2019-03-16 11:25

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
查看更多
登录 后发表回答