[Ruby] Как написать свой gem #1

Очень много про это написано, поэтому тем, кто знает лучше не читать. Это скорее просто cheat sheet для себя.

Разобью на несколько этапов, чтобы было понятнее, проще и все описать. Все не в понарошку гем configus, упражнение на новой работе.

С чего начать? Для начала нам необходим bundler. Но если вы работаете с RoR, то может быть и не подозреваете, что это отдельная утилита.

bundle gem configus  

Создаст для вас структуру директорий и даже проинициализирует репозиторий git.

В созданных файлах можно заметить Gemfile и configus.gemspec. В исходном коде Gemfile есть строчка gemspec. В чем отличие этих файлов и для чего каждый из них предназначен лучше и понятней всего написано тут. Идем далее, если заглянуть в configus.gemspec, можно увидеть много полей с информацией, которые стоит заполнить, чтобы явить миру своё лицо, когда вы отправите своё детище на всеобщее обозрение. Советую прочитать статью про различие gemspec и Gemfile, после чего можно смело добавлять строчку:

gem.add_development_dependency 'rspec'

сразу после gem.homepage. Это позволит сказать, что для полноценной работы нам потребуется установить gem 'rspec' и найти его можно на http:://rubygems.org/. Тестировать будем через него, хотя как потом выяснилось, нас заставляли им пользовать только в ознакомительных целях. Наберем bundle install и возрадуемся установившемуся RSpec. На этом завершу первую часть из небольшого cheat sheet по написанию gem'а