Variáveis de ambiente
Armazene configurações e segredos fora do código da sua função e leia cada valor pela chave em tempo de execução com a interface Azion.env.get.
Uma variável de ambiente é um par chave-valor armazenado fora do código da sua função. Ela guarda um valor de configuração ou um segredo, como uma chave de API, uma credencial de banco de dados ou um token de acesso. O valor nunca entra na base de código nem em um sistema de controle de versão. Uma função lê o valor pela chave em tempo de execução, então um valor novo não exige nenhuma edição no código.
Campos da variável
Uma variável de ambiente carrega três campos:
| Campo | Tipo | Descrição |
|---|---|---|
key | string | Nome que a função passa para Azion.env.get(). |
value | string | Valor retornado para essa chave. |
secret | boolean | Se o valor é confidencial. |
A Azion atribui um ID a cada variável quando ela é criada. A flag --variable-id da Azion CLI o informa em azion describe variables, azion update variables e azion delete variables.
As variáveis de ambiente são armazenadas na conta, e uma conta comporta no máximo 100 delas. O teto de 32 KB é medido por função, e não por conta: ele limita o tamanho total de todas as variáveis de ambiente de uma única função. Para todos os limites de Functions, consulte Limites.
Acesso a partir do código da função
Uma função lê uma variável com a interface Azion.env.get(), que recebe a chave e retorna o valor:
A chamada retorna uma string. Uma chave que não existe retorna undefined em vez de um erro, e a função continua com esse valor indefinido. Um handler escrito no padrão ES Modules também recebe env, o objeto que carrega as variáveis de ambiente e os bindings disponíveis para a função.
Para os parâmetros, o valor de retorno e um exemplo mais longo, consulte Interface de variáveis de ambiente. O Azion Runtime também suporta process.env por compatibilidade com Node.js, coberto em process.
Interfaces de gerenciamento
Você cria, lista, altera e exclui variáveis de ambiente pela API da Azion, com Azion CLI e com o Azion Terraform Provider, onde o recurso é azion_environment_variable.
Azion CLI carrega um subcomando por operação: azion create variables, azion list variables, azion describe variables, azion update variables e azion delete variables. As flags --key, --value e --secret definem os três campos, e o valor padrão de --secret é true. A flag --file lê os mesmos três campos de um arquivo JSON.
Uma variável cuja chave contém password, pwd, secret, key, hash, encrypted, passcode, auth ou token é enviada como segredo por padrão.
O comando azion sync lê as variáveis de um arquivo .env local e as envia para a sua conta. A flag --env define o caminho para esse arquivo, e o padrão é .edge/.env.
Uma alteração em uma variável não chega a uma função que já está rodando. A função passa por um novo deploy para que o novo valor tenha efeito.
Para os atributos que azion update variables aceita, consulte Variables.