Что случилось с c9.io?

В июле 2016 года Amazon приобрела платформу Cloud9 IDE. В ноябре 2017 года платформа Cloud9 была официально выпущена как полностью интегрированный продукт AWS; со встроенной поддержкой IAM, CodeStar, Lambda и некоторых других предложений AWS.

А что насчет Ruby on Rails?

Во-первых, не паникуйте! AWS Cloud9 по-прежнему остается отличным решением для разработки современных приложений Ruby on Rails с помощью Rails 5.1. С небольшой конфигурацией вашей учетной записи AWS и настроек Cloud9 вы можете мгновенно заставить свои приложения Rails петь и танцевать. Читайте и вдохновляйтесь!

Настроить новую среду Cloud9 на AWS

Перво-наперво, зайдите в Amazon Web Services https://console.aws.amazon.com/ и войдите в свою учетную запись.

Если у вас нет учетной записи AWS, вам нужно будет зарегистрироваться перед запуском Cloud9. Есть несколько отличных ресурсов, демонстрирующих эту процедуру, в том числе это видео: https://www.youtube.com/watch?v=WviHsoz8yHk

Настройка групп и пользователей IAM

Несмотря на то, что вы можете использовать свою корневую учетную запись AWS для создания сред Cloud9, настоятельно рекомендуется вместо этого создавать пользователей IAM с соответствующими правами доступа Cloud9. Такой подход предотвращает неограниченный доступ к другим сервисам в вашей учетной записи AWS и позволяет создавать несколько пользователей Cloud9 для работы в командах.

Создать группы

Мы создадим две группы IAM: Cloud9Admins и Cloud9Users:

  • У Cloud9Admins есть разрешение на создание новых сред Cloud9. Эта группа должна быть ограничена доверенными пользователями для администрирования платформы.
  • Пользователи Cloud9Users могут использовать существующие среды Cloud9. Обычных членов команды следует отнести к группе Cloud9Users.
  1. В консоли AWS откройте IAM в меню Службы.
  2. На панели навигации консоли IAM выберите Группы.
  3. Выберите Создать новую группу.
  4. На странице Установить имя группы в поле Имя группы введите Cloud9Admins ИЛИ Cloud9Users.
  5. Выберите Следующий шаг.
  6. На странице Политика прикрепления (рис. 1) найдите условие фильтра: cloud9

7. Выберите либо AWSCloud9Administrator (при создании группы Cloud9Admins) ИЛИ AWSCloud9User (при создании группы Cloud9Users)

8. Выберите Следующий шаг, затем Создать группу.

9. Повторяйте шаги 1–8, пока не будут созданы группы Cloud9Admins и Cloud9Users.

Создание пользователей и назначение групп

  1. На панели навигации IAM выберите Пользователи.
  2. Выберите Добавить пользователя.
  3. На странице Подробности в поле Имя пользователя введите имя нового пользователя.
  4. Выберите Программный доступ и Доступ к консоли управления AWS.
  5. Выберите способ пароля для пользователя в соответствии с вашими требованиями.
  6. Выберите Далее: разрешения.
  7. На странице Разрешения оставьте значение по умолчанию Добавить пользователей в группу.
  8. В списке групп установите флажок рядом с группой, в которую вы хотите добавить пользователя. Либо Cloud9Admins ИЛИ Cloud9Users
  9. Выберите Далее: просмотр.
  10. На странице Обзор выберите Создать пользователя.
  11. Повторите шаги 1–10, чтобы создать дополнительных пользователей или администраторов.

Для этого руководства вам потребуется создать как минимум одного пользователя Cloud9Admins для настройки среды Cloud9.

Создайте среду Cloud9

Примечание. Cloud9 использует экземпляр AWS EC2 для размещения ваших файлов и сервисов. В этом примере мы будем использовать экземпляр t2.micro, который может иметь право на бесплатное использование цен. Однако после этого с вас может взиматься плата за хостинг EC2 для Cloud9. Прежде чем продолжить, убедитесь, что вам известно о плате за бесплатный уровень и других сборах за использование вашей среды.

  1. Войдите в консоль AWS как пользователь Cloud9Admins.
  2. Откройте Cloud9 из меню Службы.
  3. Выберите Создать среду.
  4. На странице Имя среды введите Имя для своей среды (например, RailsDevelopment).
  5. На странице Настройка параметров выберите Создать новый экземпляр для среды (EC2) и t2.micro (1 ГБ ОЗУ + 1 виртуальный ЦП).
  6. Выберите Следующий шаг.
  7. Выберите Создать среду.

Открытие IDE Cloud9

  1. Откройте Cloud9 в меню Службы.
  2. На странице Ваши среды выберите Open IDE (рис. 2).

Woohoo! вы используете AWS Cloud9:

Настроить Cloud9 для разработки на Rails 5.1

Большинство инструментов, необходимых для разработки Ruby on Rails 5.1, уже включены в стандартный образ EC2, развернутый в вашей среде.

Быстрая проверка команды rvm list показывает, что ruby ​​установлен и готов к использованию (рис. 4)

Чтобы продемонстрировать функции, доступные в Cloud9, на следующих шагах мы создадим типичное приложение Rails 5.1 с RSpec, Capybara и Guard в качестве нашего набора тестов.

Создайте тестовое приложение Rails 5.1

В окне терминала Cloud9 выполните следующие команды:

Наш новый Rails 5.1 testapp теперь доступен в дереве папок Cloud9 (рис. 5):

Добавление RSpec и Capybara

В папке testapp откройте Gemfile и добавьте строки для RSpec и Capybara в группу разработка, тестирование:

В терминале Cloud9 выполните следующие команды для установки RSpec:

Запуск rspec из терминала Cloud9 должен показать, что все работает должным образом (рис. 6):

Потрясающие! В нашем приложении есть набор тестов. Теперь добавим конфигурацию для запуска веб-сервера rails.

Настройка конфигурации запуска

AWS Cloud9 имеет встроенные инструменты для запуска сервера Rails для предварительного просмотра вашего приложения в веб-браузере. Настройте следующим образом:

  1. Щелкните правой кнопкой мыши меню Выполнить и выберите Новая конфигурация запуска.
  2. В области Терминал (рис. 7) в поле Имя запуска конфигурации введите testapp.
  3. В области Терминал в поле Команда введите rails s -b 0.0.0.0.
  4. В области Терминал выберите CWD, затем выберите папку testapp из списка.

Нажатие кнопки Выполнить должно привести к успешному запуску сервера testapp rails (рис. 8). Сервер можно запустить или остановить в любое время с помощью кнопки «Выполнить» в строке главного меню.

Предварительный просмотр в вашем браузере

Чтобы просмотреть вывод вашего сервера rails в браузере, Cloud9 предоставляет автоматически сгенерированный частный URL-адрес, который подключен к вашему серверу:

  1. Убедитесь, что ваш сервер rails запущен, запустив конфигурацию запуска, созданную выше.
  2. В главном меню выберите Предварительный просмотрПредварительный просмотр запущенного приложения.
  3. В открывшемся окне браузера нажмите Вывести в новое окно (рис. 9).
  4. В вашем браузере отобразится экран приветствия rails testapp (рис. 10).

Празднуйте! Теперь у вас есть полная среда Rails 5.1 в AWS Cloud9.

БОНУС: Использование Guard для непрерывного тестирования

Guard отлично справляется с повторным запуском ваших тестов каждый раз, когда вы меняете фрагмент кода в своем приложении. Однако я добавил этот раздел, чтобы продемонстрировать, что установка дополнительных программных пакетов возможна в AWS Cloud9. Guard требует инструмента tmux, который не является частью стандартного образа EC2 Cloud9. Установим tmux и guard:

Установите tmux через диспетчер пакетов yum

В терминале Cloud9 выполните следующую команду:

Установить охрану

В папке testapp откройте Gemfile и добавьте строки для Guard в группу development:

В терминале Cloud9 выполните следующие команды:

Запуск Guard из терминала Cloud9 должен показать, что все работает как положено (рис. 11):

Спасибо :-)

Надеюсь, эта статья была вам полезна. Удачного взлома!