SHA256
1
0
forked from pool/vagrant
Go to file
2024-06-24 18:51:27 +00:00
.gitattributes Accepting request 381084 from Virtualization 2016-04-12 17:31:48 +00:00
.gitignore Accepting request 381084 from Virtualization 2016-04-12 17:31:48 +00:00
0001-bin-vagrant-silence-warning-about-installer.patch relax webrick and rgl dependencies 2023-11-16 16:06:38 +00:00
0002-Use-a-private-temporary-dir.patch relax webrick and rgl dependencies 2023-11-16 16:06:38 +00:00
0003-plugins-don-t-abuse-require_relative.patch.patch relax webrick and rgl dependencies 2023-11-16 16:06:38 +00:00
0004-fix-vbox-package-boo-1044087-added-by-robert.muntean.patch relax webrick and rgl dependencies 2023-11-16 16:06:38 +00:00
0005-do-not-depend-on-wdm.patch relax webrick and rgl dependencies 2023-11-16 16:06:38 +00:00
0006-do-not-abuse-relative-paths-in-docker-plugin-to-make.patch relax webrick and rgl dependencies 2023-11-16 16:06:38 +00:00
0007-Don-t-abuse-relative-paths-in-plugins.patch relax webrick and rgl dependencies 2023-11-16 16:06:38 +00:00
0008-Skip-failing-tests.patch relax webrick and rgl dependencies 2023-11-16 16:06:38 +00:00
0009-Disable-Subprocess-unit-test.patch relax webrick and rgl dependencies 2023-11-16 16:06:38 +00:00
0010-Remove-dependency-on-grpc-tools.patch relax webrick and rgl dependencies 2023-11-16 16:06:38 +00:00
0011-Remove-vagrant-ssl-extension.patch relax webrick and rgl dependencies 2023-11-16 16:06:38 +00:00
0012-Bump-rgl-dependency-to-0.6.6.patch relax webrick and rgl dependencies 2023-11-16 16:06:38 +00:00
0013-Bump-webrick-dependency-to-1.8.0.patch relax webrick and rgl dependencies 2023-11-16 16:06:38 +00:00
0014-Bump-vagrant_cloud_dependency.patch Accepting request 1146085 from home:ojkastl_buildservice:Branch_Virtualization_vagrant 2024-02-12 17:36:44 +00:00
binstub Accepting request 806993 from home:dancermak:branches:Virtualization:vagrant 2020-05-19 04:59:51 +00:00
childprocess-5.0.patch Accepting request 1152484 from home:13ilya:branches:Virtualization:vagrant 2024-02-27 19:18:13 +00:00
macros.vagrant Accepting request 803169 from home:dancermak:branches:Virtualization:vagrant 2020-05-13 08:57:29 +00:00
README.SUSE Accepting request 803169 from home:dancermak:branches:Virtualization:vagrant 2020-05-13 08:57:29 +00:00
ruby-3.3.patch Accepting request 1139826 from home:13ilya:branches:Virtualization:vagrant 2024-01-18 23:44:23 +00:00
vagrant_post.rb Accepting request 803169 from home:dancermak:branches:Virtualization:vagrant 2020-05-13 08:57:29 +00:00
vagrant_transfiletriggerin.rb Accepting request 803169 from home:dancermak:branches:Virtualization:vagrant 2020-05-13 08:57:29 +00:00
vagrant_transfiletriggerun.rb Accepting request 803169 from home:dancermak:branches:Virtualization:vagrant 2020-05-13 08:57:29 +00:00
vagrant-2.3.7.tar.gz Accepting request 1093652 from home:crameleon:branches:Virtualization:vagrant 2023-06-18 18:42:58 +00:00
vagrant.1 Accepting request 381084 from Virtualization 2016-04-12 17:31:48 +00:00
vagrant.changes - Changed rubygem-builder requirement to 3.3. 2024-06-24 15:02:02 +00:00
vagrant.spec - Changed rubygem-builder requirement to 3.3. 2024-06-24 15:02:02 +00:00

Packaging Vagrant plugins
-------------------------

This convention is based on the Fedora vagrant package.

Vagrant plugins are ordinary rubygems, but they should not be packaged as
these. First off all, we don't need to build the plugin with a ruby version
other then the ruby version with which vagrant was built. Furthermore, vagrant
will _only_ recognize gems inside its own directory structure as plugins and not
arbitrary rubygems.

Note that we *must* explicitly specify the macros `rb_build_versions` and
`rb_build_abi` (and cannot use macros here!). Usually we can simply use the
default ruby here, but in case vagrant is incompatible with the default ruby, we
must override this in each plugin.

An example specfile for a vagrant plugin looks like this:
``` spec
%global rb_build_versions ruby26
%global rb_build_abi ruby:2.6.0
%global rb_ruby_suffix ruby2.6

Name:           vagrant-MYPLUGIN
Version:        $VERSION
Release:        0
%define mod_name %{name}
%define mod_full_name %{mod_name}-%{version}
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
BuildRequires:  %{rubygem gem2rpm}
BuildRequires:  %{ruby}
BuildRequires:  ruby-macros >= 5

BuildRequires:  vagrant
BuildArch:      noarch
Url:            $URL
Source:         $SRC
Source1:        gem2rpm.yml
Summary:        $SUMMARY
License:        $LICENSE

%description
$DESCRIPTION

%global vagrant_plugin_name %{name}

%prep
%gem_unpack

%build
%gem_build

%install
%vagrant_plugin_install

%files
%{vagrant_plugin_instdir}
%{vagrant_plugin_cache}
%{vagrant_plugin_spec}


%changelog

```