I am trying to publish a json message to pubsub topic from firebase cloud function, i am using pubsub version 0.19.0.
i am getting this error:
google/pubsub/v1/pubsub.proto could not be found in /protos
at Function.GrpcClient._resolveFile (/srv/node_modules/google-gax/lib/grpc.js:174:9)
at GrpcClient.loadProto (/srv/node_modules/google-gax/lib/grpc.js:162:33)
at new PublisherClient (/srv/index.js:6842:15)
at PubSub../node_modules/@google-cloud/pubsub/src/index.js.PubSub.getClient_ (/srv/index.js:3985:17)
at PubSub../node_modules/@google-cloud/pubsub/src/index.js.PubSub.request (/srv/index.js:4006:8)
at Publisher../node_modules/@google-cloud/pubsub/src/publisher.js.Publisher.publish_ (/srv/index.js:4404:14)
at ontimeout (timers.js:482:11)
at tryOnTimeout (timers.js:317:5)
at Timer.listOnTimeout (timers.js:277:5)
here is my code:
const pubsub = new PubSub();
const topic = pubsub.topic(PUBSUB_TOPIC_NAME);
const publisher = topic.publisher();
const dataBuffer = Buffer.from(JSON.stringify(req.body));
publisher
.publish(dataBuffer)
.then(messageId => {
console.log(`Message ${messageId} published.`);
res.status(200).send('Message published.');
})
.catch(err => {
console.error('ERROR:', err);
res.status(500).send(err);
return Promise.reject(err);
});