So we will see the step by step process of how we can create a gem in ruby on rails.
Ruby create gem.
It does mirroring without any authentication and you can add your private gems in the gems directory.
It just makes sure that you can see some output from the gem.
Creating a gem from scratch.
So to begin creating a gem using bundler use the bundle gem command like this.
We re going to build a gem that generates a random greeting text along with the user s name e g.
That one file is in charge of setting up your gem s code and api.
Now let s start with setting up our gem.
You see gems everywhere in the ruby world.
There are two ways of pushing your gem.
Code for your package is placed within the lib directory.
So here we go.
They are the backbone of just about every ruby app out there.
I ll admit that i was a bit intimidated the first time i tried to create a gem but i.
The code inside of lib hola rb is pretty bare bones.
Today i m going to show you how you can create and publish your very own ruby gem.
The convention is to have one ruby file with the same name as your gem since that gets loaded when require hola is run.
Bundler is a tool created by carl lerche yehuda katz andré arko and various superb contributors for managing rubygems dependencies in ruby libraries.
Push the gem.
We could also use rake build for this that will create sequenceable 0 1 0 gem in pkg directory.
We only need to login once rubygems stores our credentials in gem credentials to make the gem pushing.
How to create a ruby gem with bundler.
Finally after building the gem it s time to push the gem.
Bundler 1 0 was released around the same time as rails 3 and it s the rails project where bundler is probably most well known usage occurs.
If you need a simple application that makes it easy way to create your own rubygems mirror without having to push or write all gem you wanted in a configuration file try out gemirro.
Create an account if you dont have it already.
It is easy to manage and install to your system and it can be used by various rails applications.