«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 — это инструмент, который я буду использовать постоянно.
Мы пока не нащюпали для себя смыслы ChatGPT, но это точно будет в будущем. А пока пользуемся стандартными практиками. Если вы хотите довериться профессионалам, то приходите к нам за помощью — мы создаём высокопроизводительные системы, повышаем стабильность существующего программного обеспечения, отслеживаем бизнес-метрики и улучшаем системы мониторинга, а также обеспечиваем техническую поддержку в режиме 24/7. Работаем и с DevOps, и с DevSecOps
Не забывайте подписываться на наш канал в ТГ, где мы публикуем технические разборы и новости рынка.