7
votes

ERREUR: (gcloud.app.deploy) Réponse d'erreur: [9] État de la compilation Cloud XXXXXXXXXXXX: ÉCHEC

J'ai eu cette erreur pendant près d'une heure, mais j'ai trouvé une solution résultant en un grand dilemme inquiétant. La solution a permis de réaliser que l'on ne peut pas exécuter gcloud app deploy alors qu'il y a une tâche dans la file d'attente des tâches à servir par la version du serveur à remplacer.

L'erreur était: ERREUR: (gcloud.app.deploy) Réponse d'erreur: [9] État de la build du cloud XXXXXXXXXXXX: ÉCHEC cette partie xxxx est une valeur base64 générée automatiquement.

La solution était la suivante: Suppression de toutes les tâches de la file d'attente des tâches

Question: Y a-t-il une solution de contournement ou je dois supprimer toutes les tâches de la file d'attente des tâches (comme je l'ai fait) avant le déploiement?

Détails: Le serveur est écrit en nodejs.


4 commentaires

Ce n’est pas la seule raison pour laquelle le redéploiement de la même version (surtout en production) n’est pas une bonne idée, voir stackoverflow.com/questions/40192557/…


Merci @DanCornilescu pour cet aperçu du lien qui a été très utile. Je pense également que vous devriez donner une autre réponse sur mesure pour cette question, car les développeurs rechercheront en utilisant le message d'erreur ci-dessus et cela varie largement de celui du lien partagé, même si les causes semblent liées comme vous l'avez mentionné.


Est-ce que gcloud app deploy --no-modify génère un ID de version si l'ID de version n'est pas inclus dans la commande?


Lorsque vous découvert < / a> - oui


3 Réponses :


0
votes

Je soupçonne que la nécessité de vider les files d'attente de tâches lorsque les tâches destinées à la version en cours de suppression pourrait être motivée par le "blocage de tête de ligne" virtuel qui se produirait dans ce cas, affectant d'autres services / versions dans le projet (les files d'attente de tâches sont partagées dans un projet) et peut-être même la fonctionnalité infra GAE associée.

Fondamentalement, réécrire une certaine version d'application / service va à l'encontre de l'objectif du contrôle de version (imaginez que git vous permette de changer le contenu du commit / refpoint associé à une certaine signature SHA!). Mais dans certains cas - par exemple lorsque la version est réellement utilisée pour implémenter un certain environnement d'exécution - c'est intentionnel.

Ce que vous avez décrit n'est pas le seul problème avec les déploiements GAE écraser une certaine version d'une application / service (à laquelle je n'avais pas pensé auparavant, BTW, merci pour cela!). Un autre est capturé dans Continu intégration / déploiement / livraison sur Google App Engine, trop risqué? .

Si vos déploiements avec réécriture de version sont en fait une tentative d'implémentation d'environnements de déploiement, vous voudrez peut-être également examiner quelques autres alternatives potentielles (meilleures à mon humble avis) comparées à Avantages de la mise en œuvre d'environnements CI / CD au niveau projet / application GAE par rapport au niveau service / module ?


1 commentaires

Mmmm je ne sais pas comment cela résoudra le problème.



4
votes
  1. Vous devez activer la facturation pour votre projet.

Configurer le compte de facturation


1 commentaires

J'ai configuré mon compte de facturation, mais je n'ai pas résolu le problème.



1
votes

J'ai eu le même problème, je suis revenu en arrière et j'ai correctement assuré que le compte de facturation était correctement configuré, puis cela a fonctionné pour moi ...


0 commentaires