2017-02-06 15 views
7

Próbuję wdrożyć plik app.yaml do appengine elastyczne.Błąd wdrażania AppEngine (app.yaml)

Oto mój plik app.yaml

runtime: java 
env: flex 
manual_scaling: 
    instances: 1 

handlers: 
- url: /.* 
    script: this field is required, but ignored 
    secure: always 

runtime_config: # Optional 
    jdk: openjdk8 
    server: jetty9 

resources: 
    cpu: 0.5 
    memory_gb: 0.18 
    disk_size_gb: 10 

próbuję wdrożyć go z tym poleceniem:

gcloud aplikacja wdrożyć app.yaml --verbosity = debug

I to jest błąd, który otrzymuję:

DEBUG: No staging command found for runtime [java] and environment [FLEX]. 
WARNING: Deployment of App Engine Flexible Environment apps is currently in Beta 
Building and pushing image for service [my-service] 
DEBUG: Could not call git with args ('config', '--get-regexp', 'remote\\.(.*)\\.url'): [Error 2] The system cannot find the file specified 
INFO: Not checking for [Custom] because runtime is [java] 
INFO: Not checking for [Go] because runtime is [java] 
INFO: Not checking for [Ruby] because runtime is [java] 
INFO: Not checking for [Node.js] because runtime is [java] 
INFO: Checking for Java. 
INFO: Not checking for [Python Compat] because runtime is [java] 
INFO: Not checking for [Python] because runtime is [java] 
INFO: Not checking for [PHP] because runtime is [java] 
DEBUG: (gcloud.app.deploy) Your application does not satisfy all of the requirements for a runtime of type [java]. Please correct the errors and try again. 
Traceback (most recent call last): 
    File "C:\Program Files (x86)\Google\Cloud SDK\google-cloud-sdk\lib\googlecloudsdk\calliope\cli.py", line 742, in Execute 
    resources = args.calliope_command.Run(cli=self, args=args) 
    File "C:\Program Files (x86)\Google\Cloud SDK\google-cloud-sdk\lib\googlecloudsdk\calliope\backend.py", line 739, in Run 
    resources = command_instance.Run(args) 
    File "C:\Program Files (x86)\Google\Cloud SDK\google-cloud-sdk\lib\surface\app\deploy.py", line 59, in Run 
    return deploy_util.RunDeploy(args) 
    File "C:\Program Files (x86)\Google\Cloud SDK\google-cloud-sdk\lib\googlecloudsdk\command_lib\app\deploy_util.py", line 413, in RunDeploy 
    all_services) 
    File "C:\Program Files (x86)\Google\Cloud SDK\google-cloud-sdk\lib\googlecloudsdk\command_lib\app\deploy_util.py", line 241, in Deploy 
    new_version, service, source_dir, image, code_bucket_ref) 
    File "C:\Program Files (x86)\Google\Cloud SDK\google-cloud-sdk\lib\googlecloudsdk\command_lib\app\deploy_util.py", line 176, in _PossiblyBuildAndPush 
    code_bucket_ref, self.deploy_options.use_runtime_builders) 
    File "C:\Program Files (x86)\Google\Cloud SDK\google-cloud-sdk\lib\googlecloudsdk\api_lib\app\deploy_command_util.py", line 206, in BuildAndPushDockerImage 
    gen_files.update(_GetDockerfiles(service, source_dir)) 
    File "C:\Program Files (x86)\Google\Cloud SDK\google-cloud-sdk\lib\googlecloudsdk\api_lib\app\deploy_command_util.py", line 139, in _GetDockerfiles 
    'again.'.format(info.runtime)) 
UnsatisfiedRequirementsError: Your application does not satisfy all of the requirements for a runtime of type [java]. Please correct the errors and try again. 
ERROR: (gcloud.app.deploy) Your application does not satisfy all of the requirements for a runtime of type [java]. Please correct the errors and try again. 

Tak więc kończy się nie wdrażanie app.yaml. Jeśli jednak uruchomić polecenie:

gcloud aplikacja wdrożyć cron.yaml

będzie działać dobrze.

+0

Najpierw upewnij się, że jesteś aktualny: 'aktualizacja składników gcloud'. – GAEfan

Odpowiedz

7

Tak, to jest teraz luka:/W rzeczywistości nie można wdrożyć aplikacji Java do App Engine poprzez gcloud app deploy. Musisz użyć wtyczek Maven lub Gradle.

Przepraszamy za kłopot!

+2

Czy jest problem z GitHub lub co nie śledzenie tej luki? Chciałabym dodać do niego emoji "+1" lub ":(" –

+0

@ChrisSmith, Zgadzam się.Traciłem dużo czasu, stwierdzając, że tylko Maven lub Gradle to jedyny sposób na przesłanie do AppEngine flex. Wdrożenie aplikacji gcloud wydawało się oczywistym wyborem - powiem, że po przeczytaniu tej dokumentacji raz po raz Google jest całkiem jasne, że działają tylko Maven i Gradle, co mnie martwi, że Maven w zasadzie uruchamia aplikację gcloud w procesie ... ale uruchamia ją bez Mavena daje złe wyniki. –

Powiązane problemy