Я пытаюсь создать экземпляр EC2 через Lambda, используя Boto3.Создание EC2 работает нормально, но передача переменных в скрипт USERDATA.
Я пробовал следующие способы вызова в USERDATA: os.environ ['VARIABLE'], VARIABLE, $ VARIABLE, $ {VARIABLE}
import os
import boto3
EC2 = boto3.client('ec2', region_name=os.environ['REGION'])
AMI = os.environ['AMI']
INSTANCE_TYPE = os.environ['INSTANCE_TYPE']
def lambda_to_ec2(event, context):
init_script = """#!/bin/bash
yum update -y
echo VARIABLE
shutdown -h +5"""
print 'Running script:'
print init_script
instance = EC2.run_instances(
ImageId= AMI,
InstanceType= INSTANCE_TYPE,
MinCount=1,
MaxCount=1,
InstanceInitiatedShutdownBehavior='terminate',
UserData=init_script
)
instance_id = instance['Instances'][0]['InstanceId']
return instance_id
Я хотел быуметь использовать переменные окружения в init_script, который передается в UserData.