Как DevOps-инженер работал с AWS с помощью ChatGPT

С мыслями о миграции в облако... «ChatGPT сейчас повсюду, и я решил попробовать его в своей повседневной работе. Итак, я попытался». Это перевод статьи Vilius Kukanauskas с Medium — дальше с его слов.

Первым делом мне нужно было создать новый репозиторий CodeCommit в учетной записи AWS для автоматического развертывания.


Звучит не очень, но вся наша среда была настроена на работу с GitLab. Учетная запись AWS была исключением, поскольку сам GitLab должен был быть развернут из этой учетки :)


Проблема заключалась в том, что у нас был только федеральный доступ, и из-за настроек безопасности у нас, как у разработчиков, не было возможности управлять нашими учетными данными. У меня не было доступа к моему секретному ключу и не было возможности создать учетные данные CodeCommit. Вместо того, чтобы гуглить, я просто написал в ChatGPT:

Я хочу клонировать репозиторий из учетной записи, к которой у меня есть доступ. Я получаю эту ошибку.

Вы вошли в систему, используя федеративный доступ или временные учетные данные. Единственным способом подключения для такого типа входа является использование менеджера учетных данных, входящего в состав AWS CLI, как описано ниже. Чтобы настроить соединение с использованием учетных данных SSH или Git по протоколу HTTPS, войдите в систему как пользователь IAM.
Напиши мне подробную инструкцию о том, как решить эту проблему.

Я не ожидал многого, но получил объяснение в 9 шагов, что я должен делать. Вот первые 3 шага.

К сожалению, мне это не подошло, так как для этого требовался пользователь IAM и его учетные данные, поэтому я написал:

У меня нет пользователя IAM, я использую федеративный доступ

Боту этого хватило, и я получил инструкцию из 7 шагов, как решить эту проблему: Вот первые 2.

Для этого решения требовался мой секретный ключ, к которому у меня также не было доступа. Вот я и подумал — буду конкретнее!

У меня есть доступ к учетной записи на уровне CLI, но нет секретного ключа доступа

На этот раз он выдал новую инструкцию, и шаги 9 и 10 мне подошли.

Конечно! Если я беру на себя роль, я получаю новые учетные данные, и у меня есть доступ к секретному ключу доступа! До сегодня я и не знал, что могу использовать роль в качестве имени пользователя и ключ доступа в качестве пароля, так что это уже победа для меня :)

Теперь я был заинтригован. Насколько еще бот может мне помочь? Поскольку мы использовали terraform в этом проекте, я написал следующее:

Напиши мне код terraform, который создал бы роль, нужную для твоего примера.

И бот написал!

Я немного подправил его с помощью более точных запросов:

Теперь напиши этот код, чтобы он использовал идентификатор учетной записи AWS из учетной записи, к которой он сейчас подключен

Чтобы было меньше хардкодинга, я хотел автоматизировать принятие роли, поэтому я попросил об этом:

Напиши башскрипт, чтобы текущий пользователь взял на себя роль

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

А знаете почему? :)

В общем, мне понравилось. Я чувствовал, что у меня есть личный эксперт по любым вопросам. И отныне ChatGPT — это инструмент, который я буду использовать постоянно.

cloud

Сколько это стоит

Закажите бесплатную консультацию, и наш менеджер предложит варианты под ваши задачи

Заказать