Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

178
Visualizações
¿Es posible definir constantes en las plantillas SAM para que mi archivo de plantilla sea más fácil de mantener?

Estoy usando AWS SAM para implementar mis funciones de AWS Lambda en AWS.

Pude definir el tiempo de Runtime una vez en la sección Globals y me preguntaba si podía definir una constante para que Lambdas asumiera el rol de AWS ( Role: arn:aws:iam::12345678:role/lambda-role ), que actualmente se repite en el archivo de plantilla para cada función.

Aquí está mi plantilla SAM:

 AWSTemplateFormatVersion: '2010-09-09' Transform: AWS::Serverless-2016-10-31 Globals: Function: Runtime: python3.7 Resources: FunctionA: Type: AWS::Serverless::Function Properties: CodeUri: lambdas/ Handler: app.event_handler_a Role: arn:aws:iam::12345678:role/lambda-role FunctionB: Type: AWS::Serverless::Function Properties: CodeUri: lambdas/ Handler: app.event_handler_b Role: arn:aws:iam::12345678:role/lambda-role
over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

Podría usar Parámetros o Asignaciones para eso.

Por ejemplo con Parámetros :

 Parameters: LambdaRoleArn: Type: String Default: arn:aws:iam::12345678:role/lambda-role # Then for example Resoureces: FunctionB: Type: AWS::Serverless::Function Properties: CodeUri: lambdas/ Handler: app.event_handler_b Role: !Ref LambdaRoleArn

Por ejemplo con asignaciones :

 Mappings: Lambda: Role: Value: arn:aws:iam::12345678:role/lambda-role # Then for example Resoureces: FunctionB: Type: AWS::Serverless::Function Properties: CodeUri: lambdas/ Handler: app.event_handler_b Role: !FindInMap [Lambda, Role, Value]

La ventaja de las asignaciones es que no se pueden modificar al implementar la plantilla. Pero obviamente, si desea poder hacerlo, entonces se deben usar parámetros.

over 4 years ago · Santiago Trujillo Relatório

0

Puede usar parámetros y anularlos en la implementación o usar la implementación guiada para guardarlos para la próxima ejecución de implementación.

Revisa esta plantilla:

 AWSTemplateFormatVersion: '2010-09-09' Transform: AWS::Serverless-2016-10-31 Globals: Function: Runtime: python3.7 Parameters: role: Type: String Resources: FunctionA: Type: AWS::Serverless::Function Properties: CodeUri: lambdas/ Handler: app.event_handler_a Role: ${role} FunctionB: Type: AWS::Serverless::Function Properties: CodeUri: lambdas/ Handler: app.event_handler_b Role: ${role}

Cómo implementar:

sam deployment --template-file template.yaml --stack-name mystack --capabilities CAPABILITY_IAM --parameter-overrides role=arn:aws:iam::12345678:role/lambda-role

Alternativamente, puede usar el parámetro cli --guided. Consulte los documentos de AWS a continuación:

Por ejemplo, al ejecutar el comando sam deployment --guided, la CLI de AWS SAM agrega automáticamente los parámetros necesarios al archivo de configuración. Posteriormente, puede ejecutar sam deployment sin parámetros y los valores se recuperarán del archivo de configuración.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda