Versões de função do Lambda
É possível usar versões para gerenciar a implantação das suas funções. Por exemplo, é possível publicar uma nova versão de uma função para testes beta sem afetar os usuários da versão de produção estável. O Lambda cria uma nova versão da sua função cada vez que você publicar a função. A nova versão é uma cópia da versão não publicada da função.
A versão da função inclui as seguintes informações:
-
O código da função e todas as dependências associadas.
-
O tempo de execução do Lambda que invoca a função.
-
Todas as configurações das funções, incluindo as variáveis de ambiente.
-
Um nome de recurso da Amazon (ARN) exclusivo para identificar essa versão específica da função.
O código e as configurações das funções somente podem ser alterados na versão não publicada de uma função. Ao publicar uma versão, o código e a maioria das configurações são bloqueados, para manter uma experiência consistente para os usuários dessa versão. Para obter mais informações sobre a configuração de funções, consulte Configurar funções no console do AWS Lambda.
Para criar uma versão nova de uma função
-
Abra a página Funções
do console do Lambda. -
Escolha o nome da função que deseja publicar.
-
Na página de configuração da função, escolha Actions (Ações), Publish new version (Publicar nova versão).
-
(Opcional) Insira uma descrição de versão.
-
Escolha Publish.
Depois de publicar a primeira versão de uma função, o console do Lambda exibe uma lista suspensa das versões disponíveis. O painel Designer exibe um qualificador de versões no final do nome da função.

Para exibir as versões atuais de uma função, na página de configuração da função,
escolha Qualifiers (Qualificadores) e escolha a guia Versions (Versões) para ver uma lista de versões para a função. Se você não publicou uma nova versão
da função, a lista exibirá apenas a versão $LATEST
.
Gerenciar versões com a API do Lambda
Para publicar uma versão de uma função, use a operação de API PublishVersion.
O exemplo a seguir publica uma nova versão de uma função. A resposta retorna as informações de configuração sobe a versão da função, incluindo o número da versão e o ARN da função com o sufixo da versão.
$
aws lambda publish-version --function-name my-function
{ "FunctionName": "my-function", "FunctionArn": "arn:aws:lambda:us-east-2:123456789012:function:my-function:1", "Version": "1", "Role": "arn:aws:iam::123456789012:role/lambda-role", "Handler": "function.handler", "Runtime": "nodejs12.x", ... }
Usar versões
É possível fazer referência à sua função do Lambda usando um ARN qualificado ou um ARN não qualificado.
-
ARN qualificado – O ARN da função com um sufixo da versão. O exemplo a seguir faz referência à versão 42 da função
helloworld
.arn:aws:lambda:aws-region:acct-id:function:helloworld:42
-
ARN não qualificado – O ARN da função sem um sufixo da versão.
arn:aws:lambda:aws-region:acct-id:function:helloworld
É possível usar um ARN qualificado ou não qualificado em todas as operações de API relevantes. No entanto, não é possível usar um ARN não qualificado para criar um alias.
Se você decidir não publicar versões de funções, será possível invocar a função usando o ARN qualificado ou não qualificado no mapeamento da origem do evento. Quando você invoca uma função usando um ARN não qualificado, o Lambda invoca implicitamente $LATENT.
O Lambda publica uma nova versão de função somente se o código nunca foi publicado ou se o código foi alterado a partir da última versão publicada. Se não houver nenhuma alteração, a versão da função permanecerá na última versão publicada.
O ARN qualificado para cada versão de função do Lambda é exclusivo. Depois de publicar uma versão, não é possível alterar o ARN ou o código da função.
Conceder permissões
É possível usar uma política baseada em recurso ou uma política baseada em identidade para conceder acesso à sua função. O escopo da permissão depende se você aplicar a política a uma função ou a uma versão de uma função. Para obter mais informações sobre nomes de recursos de função em políticas, consulte Recursos e condições para ações do Lambda.
É possível simplificar o gerenciamento de fontes de eventos e políticas do AWS Identity and Access Management (IAM) utilizando aliases de funções. Para obter mais informações, consulte Aliases de função do Lambda.