O'Reilly logo

Vagrant: Up and Running by Mitchell Hashimoto

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 7. Extending Vagrant with Plug-Ins

Vagrant provides a strong core set of features. These features were built upon years of release cycles and feedback based on how people want to use Vagrant in the real world.

But Vagrant is a general-purpose tool, so in order to cover every use case imaginable, Vagrant exposes a powerful plug-in interface so that third-party developers can enhance the features of Vagrant.

There is no canonical list of available plug-ins at the moment. Plug-ins are generally found by simply searching on Google or some other search engine. So if you’re looking for some specific functionality, try that first.

This chapter covers how plug-ins are managed and also how they’re developed. Using plug-ins can be done by just about anyone, whereas developing plug-ins requires a strong understanding of the Ruby programming language.

Warning

Plug-ins are developed by third parties and therefore make no guarantees about stability. Because they are running within Vagrant itself, it is very easy for a plug-in to crash Vagrant. If this happens, you can always uninstall the plug-in.

Extensible Features

Vagrant exposes many features that can be extended by plug-ins. The places where plug-ins can extend Vagrant is carefully controlled so that you know what plug-ins are capable of and so that future versions of Vagrant can make a better effort at maintaining backward compatibility.

Plug-ins can add new commands to the vagrant program. For example, a plug-in might make vagrant ip

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required