Многозначный параметр для mvn appengine:deploy
Я пытаюсь выполнить цель Maven, которая принимает параметр с несколькими значениями (список значений). Как я могу это сделать?
В gcloud
это можно сделать с помощью gcloud app deploy --quiet --project $(PROJECT) -v $(VERSION) app.yaml backend.yaml cron.yaml index.yaml queue.yaml
Но мы используем Maven.
Мы попытались
mvn appengine:deploy -Dapp.deploy.deployables=app.yaml cron.yml queue.yaml
Но это не работает. На самом деле, пять команд необходимы только для развертывания.
mvn appengine:deploy
mvn appengine:deployCron
mvn appengine:deployDispatch
mvn appengine:deployIndex
mvn appengine:deployQueue
Как это можно сделать одной командой в Maven?
1 ответ
Значения для -Dapp.deploy.deployables
должен быть разделен запятыми. Тем не мение, app.yaml
при использовании этого флаганеобходимо указывать на промежуточное местоположение, поэтому может потребоваться предварительно настроить приложение mvn appengine:stage
если вы хотите развернуть его с другими файлами конфигурации.
$ mvn appengine:stage
$ mvn appengine:deploy -Dapp.deploy.deployables=src/main/appengine/queue.yaml,target/appengine-staging/app.yaml
В выводе последней команды вы увидите что-то вроде
INFO: submitting command: <...>/bin/gcloud app deploy <...>/src/main/appengine/queue.yaml <...>/target/appengine-staging/app.yaml
[INFO] GCLOUD: Services to deploy:
[INFO] GCLOUD:
[INFO] GCLOUD: descriptor: [<...>/target/appengine-staging/app.yaml]
[INFO] GCLOUD: source: [<...>/target/appengine-staging]
[INFO] GCLOUD: target project: [<...>]
[INFO] GCLOUD: target service: [default]
[INFO] GCLOUD: target version: [20170807t115019]
[INFO] GCLOUD: target url: [https://<...>]
[INFO] GCLOUD:
[INFO] GCLOUD:
[INFO] GCLOUD: Configurations to update:
[INFO] GCLOUD:
[INFO] GCLOUD: descriptor: [<...>/src/main/appengine/queue.yaml]
[INFO] GCLOUD: type: [task queues]
[INFO] GCLOUD: target project: [<...>]
[INFO] GCLOUD:
[INFO] GCLOUD:
[INFO] GCLOUD: If this is your first deployment, this may take a while...
[INFO] GCLOUD: ....done.
[INFO] GCLOUD:
[INFO] GCLOUD: Beginning deployment of service [default]...
[INFO] GCLOUD: Building and pushing image for service [default]