From Fedora Project Wiki
(Change Proposal ready for 2013-07-24 FESCo meeting (#1140))
(add obnox as contributor)
 
(29 intermediate revisions by 4 users not shown)
Line 2: Line 2:


== Summary ==
== Summary ==
Provide Vagrant http://www.vagrantup.com/ with the KVM plugin.
Provide Vagrant http://www.vagrantup.com/ with the libvirt provider as a default.
 
== Owner ==
== Owner ==
* Name: [[User:Adrahon| Alex Drahon]]
* Name: [[User:jstribny| Josef Stribny]]
* Email: [mailto:adrahon@redhat.com| adrahon@redhat.com]
* Email: [mailto:jstribny@redhat.com| jstribny@redhat.com]
* Release notes owner: <!--- To be assigned by docs team [[User:FASAccountName| Release notes owner name]] <email address> -->
* Release notes owner: <!--- To be assigned by docs team [[User:FASAccountName| Release notes owner name]] <email address> -->
<!--- UNCOMMENT only for Changes with assigned Shepherd (by FESCo)
<!--- UNCOMMENT only for Changes with assigned Shepherd (by FESCo)
* FESCo shepherd: [[User:FASAccountName| Shehperd name]] <email address>
* FESCo shepherd: [[User:FASAccountName| Shehperd name]] <email address>
-->
-->
=== Contributors ===
* Name: [[User:maxamillion| Adam Miller]], [[User:Adrahon| Alex Drahon]], [[User:vondruch| Vít Ondruch]], [[User:obnox| Michael Adam]]
* Email: [mailto:maxamillion@fedoraproject.org| maxamillion@fedoraproject.org], [mailto:adrahon@redhat.com| adrahon@redhat.com], [mailto:vondruch@redhat.com| vondruch@redhat.com], [mailto:madam@redhat.com| madam@redhat.com]


== Current status ==
== Current status ==
* Targeted release: [[Releases/20 | Fedora 20 ]]  
* Targeted release: [[Releases/22 | Fedora 22 ]]
* Last updated: 2013-07-10
<!-- After the change proposal is accepted by FESCo, tracking bug is created in Bugzilla and linked to this page  
<!-- After the change proposal is accepted by FESCo, tracking bug is created in Bugzilla and linked to this page  
Bugzilla states meaning as usual:
Bugzilla states meaning as usual:
Line 22: Line 25:
CLOSED as NEXTRELEASE -> change is completed and verified and will be delivered in next release under development
CLOSED as NEXTRELEASE -> change is completed and verified and will be delivered in next release under development
-->
-->
* Tracker bug: <will be assigned by the Wrangler>
* Tracker bug: [https://bugzilla.redhat.com/show_bug.cgi?id=1020456 1020456]


== Detailed Description ==
== Detailed Description ==
Vagrant is an automation tool used to manage development environments using virtualization and configuration management tools. It allows developers and teams to work on their projects and test them in an environment similar to production. Historically, Vagrant had a dependency on VirtualBox, but the newer versions have a plugin system allowing it to work with other virtualization technologies, including KVM.
Vagrant is an automation tool used to manage development environments using virtualization and configuration management tools. It allows developers and teams to work on their projects and test them in an environment similar to production. Historically, Vagrant had a dependency on VirtualBox, but the newer versions have a plugin system allowing it to work with other virtualization technologies, including libvirt. The plan is to package Vagrant with the support for libvirt (coming as vagrant-libvirt plugin) replacing VirtualBox as a default provider.


== Benefit to Fedora ==
== Benefit to Fedora ==
Vagrant is widely used by development teams and is also used to provide pre-built environments by a lot of open-source projects. It would be a good addition to the Fedora development toolchain. More generally, Vagrant is currently provided as a self-contained Ruby environment in /opt and a properly packaged Vagrant would be better integrated to Linux.
Vagrant is widely used by development teams and is also used to provide pre-built environments by a lot of open-source projects. It would be a good addition to the Fedora development toolchain. Also providing a functional Vagrant package with libvirt provider as a default will help Fedora users to leverage libvirt instead of VirtualBox which is not part of Fedora.


== Scope ==
== Scope ==
<!-- What work do the developers have to accomplish to complete the change in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->
<!-- What work do the feature owners have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->
*Proposal Owners: Initial work has been done in for Vagrant on F20 in [http://copr.fedoraproject.org/coprs/jstribny/vagrant-f20 a Copr repository]. Patches and quick fixes should be cleaned up or revisited. Also we need to depend on newer version of libvirt through rubygem-fog. Some commits for that are already in upstream repositories for vagrant-libvirt and fog. See [https://github.com/pradels/vagrant-libvirt/issues/158 upstream issue] for details.


* Proposal owners:
{|
<!-- What work do the feature owners have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->
! Package name
There's still some work to be done on the vagrant-kvm plugin to make it work seamlessly, eg. with SELinux and Firewalld, but it should be simple enough.
! Task
Most of the work is about packaging Vagrant and its dependencies as rubygems RPMs and ensuring integration with the Fedora Ruby environment.
! Status
|-
|rubygem-hashicorp-checkpoint
|Create
|{{result|pass|jstribny}} [https://bugzilla.redhat.com/show_bug.cgi?id=1150152 1150152] <!-- [bug_url number] -->
|-
|rubygem-log4r
|Create
|{{result|pass|ingvar}} [https://bugzilla.redhat.com/show_bug.cgi?id=905240 905240] <!-- [bug_url number] -->
|-
|rubygem-rb-inotify
|Update to 0.9.5
|{{result|pass|jstribny}} [https://bugzilla.redhat.com/show_bug.cgi?id=894705 894705] <!-- [bug_url number] -->
|-
|rubygem-listen
|Update to 2.7.9
|{{result|pass|jstribny}} [https://bugzilla.redhat.com/show_bug.cgi?id=853781 853781] <!-- [bug_url number] -->
|-
|rubygem-childprocess
|Update to 0.5.3
|{{result|pass|jstribny}} [https://bugzilla.redhat.com/show_bug.cgi?id=1060098 1060098] <!-- [bug_url number] -->
|}


* Other developers: N/A (not a System Wide Change) <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Other developers: N/A (not a System Wide Change)
<!-- What work do other developers have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->


* Release engineering: N/A (not a System Wide Change) <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Release engineering: N/A (not a System Wide Change)
<!-- Does this feature require coordination with release engineering (e.g. changes to installer image generation or update package delivery)?  Is a mass rebuid required?  If a rel-eng ticket exists, add a link here.  -->


* Policies and guidelines: N/A (not a System Wide Change) <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Policies and guidelines: N/A (not a System Wide Change)
<!-- Do the packaging guidelines or other documents need to be updated for this feature?  If so, does it need to happen before or after the implementation is done?  If a FPC ticket exists, add a link here. -->


== Upgrade/compatibility impact ==
== Upgrade/compatibility impact ==
Line 101: Line 123:
-->
-->


[[Category:ChangeReadyForFesco]]
<!--  [[Category:ChangeAcceptedF20]] -->
<!-- When your change proposal page is completed and ready for review and announcement -->
<!-- When your change proposal page is completed and ready for review and announcement -->
<!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler -->
<!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler -->
Line 108: Line 130:


<!-- Select proper category, default is Self Contained Change -->
<!-- Select proper category, default is Self Contained Change -->
[[Category:SelfContainedChange]]
[[Category:SelfContainedChange]] [[Category:ChangeAcceptedF22]]
<!-- [[Category:SystemWideChange]] -->
<!-- [[Category:SystemWideChange]] [[Category:ChangeReadyForWrangler]] -->

Latest revision as of 07:10, 9 June 2015

Vagrant

Summary

Provide Vagrant http://www.vagrantup.com/ with the libvirt provider as a default.

Owner

Contributors

Current status

Detailed Description

Vagrant is an automation tool used to manage development environments using virtualization and configuration management tools. It allows developers and teams to work on their projects and test them in an environment similar to production. Historically, Vagrant had a dependency on VirtualBox, but the newer versions have a plugin system allowing it to work with other virtualization technologies, including libvirt. The plan is to package Vagrant with the support for libvirt (coming as vagrant-libvirt plugin) replacing VirtualBox as a default provider.

Benefit to Fedora

Vagrant is widely used by development teams and is also used to provide pre-built environments by a lot of open-source projects. It would be a good addition to the Fedora development toolchain. Also providing a functional Vagrant package with libvirt provider as a default will help Fedora users to leverage libvirt instead of VirtualBox which is not part of Fedora.

Scope

  • Proposal Owners: Initial work has been done in for Vagrant on F20 in a Copr repository. Patches and quick fixes should be cleaned up or revisited. Also we need to depend on newer version of libvirt through rubygem-fog. Some commits for that are already in upstream repositories for vagrant-libvirt and fog. See upstream issue for details.
Package name Task Status
rubygem-hashicorp-checkpoint Create
Pass pass jstribny
1150152
rubygem-log4r Create
Pass pass ingvar
905240
rubygem-rb-inotify Update to 0.9.5
Pass pass jstribny
894705
rubygem-listen Update to 2.7.9
Pass pass jstribny
853781
rubygem-childprocess Update to 0.5.3
Pass pass jstribny
1060098
  • Other developers: N/A (not a System Wide Change)
  • Release engineering: N/A (not a System Wide Change)
  • Policies and guidelines: N/A (not a System Wide Change)

Upgrade/compatibility impact

N/A (not a System Wide Change)

How To Test

N/A (not a System Wide Change)

User Experience

N/A (not a System Wide Change)

Dependencies

N/A (not a System Wide Change)

Contingency Plan

  • Contingency mechanism: (What to do? Who will do it?) N/A (not a System Wide Change)
  • Contingency deadline: N/A (not a System Wide Change)
  • Blocks release? N/A (not a System Wide Change), Yes/No

Documentation

N/A (not a System Wide Change)

Release Notes