This project was initially proposed for review on Oct. 9. It has been reviewed for major issues and having heard no objections, it's now time to formally vote on accepting this as an official oVirt incubator subproject.
The last time we voted on one of these was during an IRC weekly meeting, so I believe it is appropriate to post a Call for Vote on the Devel and Board lists.
Voting will be open until 1200 UTC Nov. 28, 2016. A net total of +5 votes should be received to formalize this project as an incubator subproject. Please use the following vote process:
Yes, agree, or the action should be performed. On some issues, this vote must only be given after the voter has tested the action on their own system(s).
Abstain, no opinion, or I am happy to let the other group members decide this issue. An abstention may have detrimental affects if too many people abstain.
No, I veto this action. All vetos must include an explanation of why the veto is appropriate. A veto with no explanation is void.
Project Proposal - Vagrant ProviderA vagrant provider for oVirt v4AbstractThis will be a provider plugin for the Vagrant suite that allowscommand-line ease of virtual machine provisioning and lifecyclemanagement.ProposalThis Vagrant provider plugin will interface with the oVirt REST API(version 4 and higher) using the oVirt provided ruby SDK'ovirt-engine-sdk-ruby'. This allows users to abstract the userinterface and experience into a set of command line abilities tocreate, provision, destroy and manage the complete lifecycle ofvirtual machines. It also allows the use of external configurationmanagement and configuration files themselves to be committed intocode.BackgroundI have previously forked and maintained the 'vagrant-ovirt' gem as'vagrant-ovirt3' due to Gems requiring unique names. The originalauthor has officially abandoned the project. For the last few yearsall code to maintain this project has been maintained by myself and afew ad-hoc github contributors. This provider interfaced directly withoVirt v3 using fog and rbovirt. The new project would be a fresh startusing the oVirt provided ruby SDK to work directly with version 4.RationaleThe trend in configuration management, operations, and devops has beento maintain as much of the development process as possible in terms ofthe virtual machines and hosts that they run on. With software likeTerraform the tasks of creating the underlying infrastructure such asnetwork rules, etc have had great success moving into 'Infrastructureas code'. The same company behind Terraform got their reputation fromVagrant which aims to utilize the same process for virtual machinesthemselves. The core software allows for standard commands such as'up', 'provision', 'destroy' to be used across a provider framework. Aprovider for oVirt makes the process for managing VMs easier and ableto be controlled through code and source control.Initial GoalsThe initial goal is to get the base steps of 'up', 'down' (halt), and'destroy' to succeed using the oVirt provided ruby SDK for v4.Stretch/followup goals would be to ensure testability and alternatecommands such as 'provision' and allow configuration management suiteslike puppet to work via 'userdata' (cloud-init).Current StatusThe version 3 of this software has been heavily utilized. The originalfork known as 'vagrant-ovirt' has been abandoned with no plans tocommunicate or move forward. My upstream fork has had great successwith nearly 4x the downloads from rubygems.org . Until my github forkhas more 'stars' I cannot take over it completely so the gem wasrenamed 'vagrant-ovirt3'. This is also true for rubygems.org sincegems are not namespaced, therefore could not be published without aunique name. The v4 provider is still pending my initial POC commitbut there are no current barriers except initial oVirt hosting. Thehosting of oVirt v3 for testing is a laptop on a UPS at my home, andv4 is also a different pc attached to a UPS.External DependenciesRHEVM/oVirt REST API - This provider must interact with the API itselfto manage virtual machines.Initial CommittersMarcus Young ( 3vilpenguin at gmail dot com )
Principal Community Analyst
Open Source and Standards