Firebase Functions - Emulators Google Tasks
Olá meus Unicórnios! 🦄✨
Conhecemos o Firebase Emulators no Tutorial anterior:
Firebase Functions - EmulatorsComo configurar e iniciar o Firebase Emulator para testar suas funções e o Realtime Database em ambiente localblog.palomamacetko.com.brUma das outras funções que não são suportadas é o Google Tasks (É, Infelizmente).
Configurando e Iniciando Emulador Alternativo
Iremos utilizar uma aplicação, disponível no Github, utilizando a linguagem "go":
Então, antes de qualquer coisa, instale o Go em seu Windows:
Depois de instalar o Go, execute o comando abaixo para confirmar que a instalação foi executada com sucesso:
go versionCaso esteja instalado, será exibido a versão do Go:

Agora que já temos o Go, iremos clonar o repositório para uma pasta conhecida:
C:\Testes\cloud-tasks-emulatorAbra o CMD e abra a pasta do repositório:
cd C:\Testes\cloud-tasks-emulatorPara iniciar o serviço, iremos utilizar o comando "go run ./" passando como parâmetro o Host/Porta e as filas que serão criadas:
go run ./ -host localhost -port 8000 -queue projects/testespaloma/locations/us-west1/queues/testefila1Será exibido "Starting cloud tasks" indicando que o serviço foi iniciado:

Configurando "index.js" para Utilizar o Emulador do Google Task
Adicione a dependência "grpc":
const grpc = require("@grpc/grpc-js");Em seguida, crie uma variável onde iremos configurar o "localhost" no host de autorização:
const grpcOptions = {
'grpc.ssl_target_name_override': 'localhost',
'grpc.default_authority': 'localhost',
};No "CloudTasksClient" altere para o padrão abaixo:
const tasksClient = new CloudTasksClient({
apiEndpoint: "localhost",
port: 8000,
transport: "grpc",
sslCreds: grpc.credentials.createInsecure(),
clientConfig: grpcOptions
});Testando a Emulador Alternativo
Quando uma tarefa for executada, o CMD onde o "go run" foi executado, ira exibir "Task done":

Por hoje é só, meus unicórnios! 🦄✨
Que a magia do arco-íris continue brilhando em suas vidas! Até mais! 🌈🌟
Leia também
Firebase Functions - Conectando no Realtime Database, via Site, utilizando o Emulators
Guia para conectar o Firebase Realtime Database ao emulador local usando a SDK JavaScript no seu projeto
Firebase Functions - Emulators Schedule
Guia para contornar a falta de suporte ao "schedule" no Firebase Emulator
Firebase Functions - Emulators
Como configurar e iniciar o Firebase Emulator para testar suas funções e o Realtime Database em ambiente local