Импорт существующего приложения Python в AWS Lambda - PullRequest
0 голосов
/ 06 февраля 2019

Мне нужно создать версию AWS Lambda существующей программы на Python 2.7, написанной кем-то еще, кто покинул компанию.

Используя одну функцию, мне нужно преобразовать в качестве примера:

#!/usr/bin/env python

from aws_common import get_profiles,get_regions
from aws_ips import get_all_public_ips
import sys

def main(cloud_type):
    # csv header
    output_header = "profile,region,public ip"

    profiles = get_profiles(cloud_type)
    regions = get_regions(cloud_type)

    print output_header

    for profile in profiles:
        for region in regions:
            # public_ips = get_public_ips(profile,region)
            public_ips = get_all_public_ips(profile,region)

            for aws_ip in public_ips:
                print "%s,%s,%s" % (profile,region,aws_ip)

if __name__ == "__main__":
    cloud_type = 'commercial'
    if sys.argv[1]:
        if sys.argv[1] == 'govcloud':
            cloud_type = 'govcloud'

    main(cloud_type)

Мне нужно знать, как создать это как обработчик AWS с аргументами события и контекста из приведенного выше кода.

Если бы я мог получить некоторые подсказки о том, как это сделать, было бы полезно.

1 Ответ

0 голосов
/ 06 февраля 2019

Вы можете просто начать писать функцию python внутри обработчика aws labda.

в обработчике просто начать определять функции и переменные и загружать zip-файл в lambda, если есть какой-либо тип зависимости.

вы можете изменить версию Python в лямбда-выражении так, как если бы вы использовали Python 2.7.

Я хотел бы предложить серверная менее фреймворк и перегрузить ваш код в лямбду.так легко управлять локальным управлением кодом зависимостей.

здесь вы используете aws_common и импортируете, чтобы проверить, находится он внутри aws sdk или нет.

вы можете импортировать aws-sdk и использоватьэто

var aws = require('aws-sdk');  

exports.handler =  function (event, context) 
{  

}

внутри обработчика экспорта, который вы можете начать делать для циклов в python или дальше

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...