2015-04-23 14 views
7

A partire dal 22/04/15, l'aggiornamento di gcloud alla versione più recente interrompe il comando deploy. La versione dell'app è impostata sul timestamp corrente (es .: 20150422t202108). E facendo un:gcloud nella versione Google Cloud SDK 0.9.57 interruzioni di distribuzione dell'applicazione

gcloud preview app deploy . 

restituisce un errore

"ERROR: Directories are not supported [.]. You must provide explicit yaml files." 

e distribuire l'applicazione che utilizza i singoli file .yaml lamenta la versione specificata nel modulo come l'aggiornamento impostare la versione app per il timestamp.

"The version [1] declared in [/Users/username/app.yaml, /Users/username/app2.yaml] does not match the current gcloud version [20150422t202108]." 

Si tratta di un errore o sono state apportate modifiche alle opzioni di configurazione? Non trovo differenze nella pagina della documentazione.

+0

possibile duplicato del [google-app-engine 1.9.19 fallimento implementare] (http: // stackoverflo w.com/questions/29657557/google-app-engine-1-9-19-deploy-failure) –

+1

@IlyaZakreuski Non è un duplicato. Questo è stato un cambiamento decisivo per l'API. – theshadowmonkey

risposta

6

La versione per la distribuzione è ora esplicita e mai presa dai file yaml. Esistono due possibili casi:

1) Se si utilizza il flag --version, viene utilizzata qualsiasi versione specificata. È un errore se questo non corrisponde ai valori nel tuo file yaml.

2) Se non si utilizza il flag --version, viene generato un numero di versione. Questo è l'errore che stai vedendo perché, ancora una volta, la versione non corrisponde a quella del tuo file yaml.

La soluzione corretta qui è quella di rimuovere semplicemente l'attributo di versione dal tuo yaml (invece di cercare di farli corrispondere).

Il comando deploy ora non prende più le directory come argomenti. Si specificano i file yaml che si desidera distribuire esplicitamente.

+0

Grazie Mark, sì, rimuovere il numero di versione dai file e usare un --version flag ha risolto il mio problema. E ora non sono in grado di distribuire una directory completa e ho bisogno di specificare separatamente ciascun file .yaml. – theshadowmonkey

+0

Ciao Mark, puoi aggiungere anche la parte su non poter distribuire più directory complete su questa risposta in modo che sia completa? – theshadowmonkey

+0

Un esempio di riga di comando esatto sarebbe utile ...e, per favore smetti di cambiare le cose spesso :-( – Jonny

3
  1. gcloud preview app comportamento del comando è cambiato, vedi aggiornato documentation page
  2. Può confermare che la versione è impostato il timestamp in entrambe le configurazioni YAML? Prova a fornire la versione manualmente utilizzando flag
+0

La versione non è stata impostata nei file .yaml, ma quando provo a distribuire, è già stata impostata sulla riga di comando come impostazione globale. – theshadowmonkey

1

Puoi provare il seguente comando per distribuire l'applicazione

gcloud anteprima app deploy ~/my_app/app.yaml

e app che hanno diverso modulo

gcloud anteprima app Deploy ~/my_app/app.yaml \

~/my_app/another_module.yaml