Faça o deploy de uma function com a Azion CLI
Crie um projeto de function pelo terminal com a Azion CLI, execute-o na sua máquina e faça o deploy dele em um domínio ativo.
Neste tutorial, você vai fazer o build e o deploy de uma function pelo terminal com a Azion CLI. Você vai salvar um personal token e criar um projeto. Depois, vai escrever o handler, executá-lo na sua máquina e fazer o deploy dele.
Os Primeiros passos com Functions chegam ao mesmo resultado pelo Azion Console. Esta página é o caminho pelo terminal e termina com os mesmos três objetos: uma function, uma instância e a aplicação que a serve.
Pré-requisitos
- Uma conta Azion. Para criar uma, consulte Criar uma conta.
- A Azion CLI instalada na sua máquina.
- Um personal token.
- Node.js e um gerenciador de pacotes, que a CLI usa para fazer o build do projeto.
1. Salve seu personal token
A CLI autoriza cada comando com um personal token armazenado na sua máquina. Para salvá-lo:
O token fica armazenado localmente, e os comandos seguintes se autorizam com ele. Você não o informa de novo.
2. Crie o projeto
O azion init cria o projeto e a configuração de build dele. Para iniciá-lo:
O comando pede um nome e sugere um que você pode aceitar:
Depois, ele pergunta qual preset usar. Selecione Javascript, o preset para uma function escrita em JavaScript puro, sem framework:
Depois, ele pergunta de qual template partir. Selecione Hello World:
Ele pergunta se deve instalar as dependências do projeto. Responda Y:
Ele pergunta se deve iniciar um servidor de desenvolvimento local. Responda N, porque a etapa 4 inicia o servidor:
O diretório do projeto agora contém a configuração de build e o entrypoint que o build lê.
3. Escreva o handler
Abra o index.js, o entrypoint que o build lê por padrão, e substitua o conteúdo dele por um handler ES Modules:
O método fetch recebe a requisição, as variáveis de ambiente e o contexto de execução, e retorna a resposta que o cliente recebe. Este é o padrão que a Azion recomenda.
4. Execute a function localmente
Antes do deploy, execute o projeto na sua máquina e envie uma requisição a ele. Para iniciar o servidor local com o azion dev:
O comando faz o build do projeto e depois exibe o endereço em que responde:
De outro terminal, faça uma requisição a esse endereço:
O handler responde com o corpo da resposta:
Pare o servidor com Ctrl+C quando a resposta estiver correta.
5. Faça o deploy do projeto
Para fazer o deploy do projeto na Azion com o azion deploy:
O comando faz o build do projeto e cria a aplicação e a function na sua conta. Ele instancia a function e exibe o domínio que a serve. O domínio tem o formato xxxxxxxxxx.map.azionedge.net.
Uma requisição a esse domínio retorna a mesma resposta que você leu localmente:
O primeiro deploy pode levar vários minutos para responder de todas as localidades. Uma requisição imediata pode falhar antes de a configuração estar pronta. Aguarde e tente de novo antes de diagnosticar.