Как удалить отладочный код ptvsd перед развертыванием лямбда-функции - PullRequest
2 голосов
/ 16 мая 2019

Я занимаюсь разработкой безсерверного приложения с использованием Python и AWS-SAM-CLI.Я отлаживаю свои функции, используя библиотеку ptvsd.Чтобы присоединить отладчик, в коде функции должен присутствовать следующий фрагмент кода:

ptvsd.enable_attach(address=('0.0.0.0', 5890), redirect_output=True)
ptvsd.wait_for_attach()

Очевидно, этот код необходимо удалить перед развертыванием функции в рабочей среде или среде производства.

Есть ли способ автоматизировать это на этапе пакет / развертывание, чтобы вручную не удалять этот фрагмент кода из каждой функции перед развертыванием?

1 Ответ

1 голос
/ 16 мая 2019

Я бы установил переменную окружения, скажем, DEV=true (значение здесь на самом деле не имеет значения) в вашей локальной среде и обернул бы этот код оператором IF.

if "DEV" in os.environ:
    ptvsd.enable_attach(address=('0.0.0.0', 5890), redirect_output=True)
    ptvsd.wait_for_attach()

Кодвсе еще там, но никогда не будет выполнен, если переменная окружения не присутствует.

...