hashicorp/vagrant

Vagrant is a tool for building and distributing development environments.

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 12 minutes ago
Added to GitGenius on April 8th, 2021
Created on January 21st, 2010
Open Issues & Pull Requests: 753 (+0)
Number of forks: 4,394
Total Stargazers: 27,199 (+0)
Total Subscribers: 704 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 48.5 days
Mean response time: 378.5 days
90th percentile: 1382.5 days
Tracked items: 272

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 99% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Work labelled "waiting-intake" is answered fastest, typically in about 4 days, while "provider/hyperv" waits about 13 months. Only 3% of issues opened in the past year have been closed. Three people close 79% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 136
New in 7 days: 1
Closed in 7 days: 0
Avg open age: 1,021 days
Stale 30+ days: 130
Stale 90+ days: 122

Recent activity

Opened in 7 days: 1
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 1

Top labels

  • waiting-intake (99)
  • enhancement (63)
  • host/windows (34)
  • waiting-reply (32)
  • provider/virtualbox (26)
  • core (23)
  • bug (22)
  • needs-repro (15)

Detailed Description

Vagrant is a HashiCorp tool written in Ruby that automates the creation and distribution of portable development environments. The tool enables developers to define, provision, and manage complete development setups through a simple configuration format, eliminating the "works on my machine" problem by ensuring consistency across different computers and operating systems.

The core functionality of Vagrant centers on its ability to work with multiple virtualization and containerization platforms. Developers can run environments locally using VirtualBox or VMware, deploy to cloud infrastructure through AWS or OpenStack, or containerize applications with Docker or LXC. This flexibility means teams can standardize on Vagrant's configuration format while choosing their preferred underlying infrastructure. The tool is cross-platform compatible, supporting Windows, Mac OS X, and Linux, making it valuable for distributed development teams.

Vagrant operates through a declarative configuration system where developers specify their environment requirements in a Vagrantfile. The tool then handles downloading pre-built machine images called boxes, provisioning virtual machines, and configuring networking and shared folders. The quick-start workflow demonstrates this simplicity: developers can initialize a new environment with vagrant init and bring it up with vagrant up, with Vagrant automatically downloading necessary boxes on first run. The system requires only bsdtar and curl to be available on the system PATH to function.

The repository shows significant ongoing development and maintenance activity.

The repository's classification spans multiple infrastructure and DevOps domains including virtualization, configuration management, provisioning, infrastructure-as-code, and cloud integration. This breadth reflects Vagrant's role as a foundational tool in modern development workflows.

Vagrant's documentation and community support are well-established, with a dedicated website at vagrantup.com, community discussion forums on HashiCorp Discuss, and comprehensive getting started guides. The project welcomes contributions following HashiCorp's community guidelines, and the main branch is maintained in a relatively stable state for those wanting to use bleeding-edge versions from source. This combination of powerful functionality, broad platform support, and active maintenance makes Vagrant a central tool for standardizing development environments across organizations.