2

que je fais le tutoriel de réalisation de base et la configuration de conversation de api.ai tutorial faire un robot de chat, et lorsque je tente de déployer la fonction avec la commande:gcloud Erreur: la taille du code source dépasse la limite

gcloud beta functions deploy --stage-bucket venky-bb7c4.appspot.com --trigger-http 

(où « venky-bb7c4.appspot.com » est le bucket_name) Il renvoie le message d'erreur suivant:

ERROR: (gcloud.beta.functions.deploy) OperationError: code=3, message=Source code size exceeds the limit 

J'ai cherché mais pas trouvé de réponse, je ne sais pas où est l'erreur c'est le fichier JS qui apparaissent dans le tutoriel:

/
HTTP Cloud Function. 

@param {Object} req Cloud Function request context. 
@param {Object} res Cloud Function response context. 
*/ 
exports.helloHttp = function helloHttp (req, res) { 
    response = "This is a sample response from your webhook!" //Default response from the webhook to show it's working 


res.setHeader('Content-Type', 'application/json'); //Requires application/json MIME type 
    res.send(JSON.stringify({ "speech": response, "displayText": response 
    //"speech" is the spoken version of the response, "displayText" is the visual version 
    })); 
}; 
+0

avez-vous trouvé une solution? –

Répondre

2

La commande crée zip avec tout le contenu de votre répertoire en cours (sauf node_modules sous-répertoire) non seulement le fichier JS (ce qui est parce que votre fonction peut utiliser autres ressources).

L'erreur que vous voyez est parce que la taille des fichiers (non compressés) dans le répertoire est supérieure à 512 Mo. La solution la plus simple consiste à déplacer le fichier .js dans son propre répertoire et à le déployer à partir de là (vous pouvez utiliser --local-path pour pointer vers le répertoire contenant le fichier source si vous voulez que votre répertoire de travail soit différent du répertoire avec source de fonction).

0

Assurez-vous que le dossier du package contient un fichier .gitignore (à l'exception des modules_modules).

La version la plus récente de gcloud l'exige afin de ne pas charger node_modules. Ma taille de code est passée de 119 Mo à 17 Ko.

Une fois que je l'ai ajouté le fichier .gitignore, le journal imprimé et

created .gcloudignore file. See `gcloud topic gcloudignore` for details.