3 # Missing deps in Fedora:
5 # rubygem-log4r >= 1.1.9 < 2.0.0
6 # Fix: Build new package, bz905240
8 # rubygem-childprocess >=0.3.1 < 0.4.0 (0.3.6 in rawhide)
9 # Fix: Grab 0.3.6 package from rawhide
11 # rubygem-json >= 1.5.1, < 1.6.0 (1.6.5 in f18, 1.9.1 in rawhide)
12 # Fix: Build rubygem-json15, roughly based on current package
14 # rubygem-net-ssh >= 2.2.2 < 2.3.0 (2.2.1 in rawhide)
15 # Fix: Build 2.2.2 package based on current package
18 %define gem_name vagrant
20 Summary: Provisioning and deployment of virtual instances
25 Group: Applications/Emulators
26 URL: http://vagrantup.com/
27 Source0: http://rubygems.org/downloads/%{gem_name}-%{version}.gem
28 # Source0-md5: c84c240a9e62853336bd3f0f2532ad8a
29 BuildRequires: git-core
30 BuildRequires: ruby(abi) = %{rubyabi}
31 #BuildRequires: rubygem(contest) >= 0.1.2
32 BuildRequires: rubygem(minitest) >= 2.5.1
33 BuildRequires: rubygem(mocha)
34 BuildRequires: rubygem(rake)
35 BuildRequires: rubygem(rspec-core) >= 2.8.0
36 BuildRequires: rubygem(rspec-expectations) >= 2.8.0
37 BuildRequires: rubygem(rspec-mocks) >= 2.8.0
38 BuildRequires: rubygems-devel
39 Requires: ruby(abi) = %{rubyabi}
40 Requires: ruby(rubygems)
41 Requires: rubygem(archive-tar-minitar) = 0.5.2
42 Requires: rubygem(childprocess) >= 0.3.1
43 Requires: rubygem(erubis) >= 2.7.0
44 Requires: rubygem(i18n) >= 0.6.0
45 Requires: rubygem(log4r) >= 1.1.9
46 Requires: rubygem(net-scp) >= 1.0.4
47 Requires: rubygem(net-ssh) >= 2.2.2
48 Requires: rubygem-json15
52 Vagrant offers scripted provisioning and deployment of virtual
53 instances. While VirtualBox is the main target, future versions may
54 support other hypervizors as well.
56 The vision of the project is to create a tool to transparently manage
57 all the complex parts of modern development within a virtual
58 environment without affecting the everyday workflow of the developer
59 too much. A long term goal is moving all development into virtualized
60 environments by making it easier to do so than not to. Additionally,
61 work is ongoing to have Vagrant run identically on every major
62 consumer OS platform (Linux, Mac OS X, and Windows).
65 Summary: Documentation for %{name}
67 Requires: %{name} = %{version}-%{release}
68 %if "%{_rpmversion}" >= "5"
73 Ruby documentation for %{gem_name}
77 %setup -q -D -T -n %{gem_name}-%{version}
79 gem spec %{SOURCE0} -l --ruby > %{gem_name}.gemspec
84 # Create the gem as gem install only works on a gem file
85 gem build %{gem_name}.gemspec
87 export CONFIGURE_ARGS="--with-cflags='%{rpmcflags}'"
88 # gem install compiles any C extensions and installs into a directory
89 # We set that to be a local directory so that we can move it into the
90 # buildroot in %%install
93 --install-dir ./%{gem_dir} \
94 --bindir ./%{_bindir} \
100 rm -rf $RPM_BUILD_ROOT
101 install -d $RPM_BUILD_ROOT%{gem_dir}
103 # Remove a few oddments
104 rm .%{gem_instdir}/.gitignore
105 rm .%{gem_instdir}/.yardopts
107 # Just copy these out for putting in default fedora doc location later
108 cp .%{gem_instdir}/LICENSE .
109 cp .%{gem_instdir}/README.md .
110 cp .%{gem_instdir}/CHANGELOG.md .
113 install -d $RPM_BUILD_ROOT%{_bindir}
114 mv -v ./bin/* $RPM_BUILD_ROOT%{_bindir}
115 mv -v .%{gem_instdir}/bin/* $RPM_BUILD_ROOT%{_bindir}
116 chmod +x .%{gem_instdir}/test/*/scripts/*.sh
119 cp -a ./%{gem_dir}/* $RPM_BUILD_ROOT%{gem_dir}/
124 # Just a hack, rspec misses this .gitignore(!)
125 touch $RPM_BUILD_ROOT%{gem_instdir}/.gitignore
126 rspec $RPM_BUILD_ROOT%{gem_instdir}/%{gem_name}.gemspec
127 rm $RPM_BUILD_ROOT%{gem_instdir}/.gitignore
131 rm -rf $RPM_BUILD_ROOT
134 %defattr(644,root,root,755)
135 %attr(755,root,root) %{_bindir}/vagrant
142 %{gem_instdir}/contrib
143 %{gem_instdir}/Gemfile
144 %{gem_instdir}/Rakefile
145 %{gem_instdir}/%{gem_name}.gemspec
146 %config %{gem_instdir}/config
148 # Put something in the default fedora documentation location
153 # Ruby devs probably panic if these are not in place here as well
154 %doc %{gem_instdir}/LICENSE
155 %doc %{gem_instdir}/README.md
156 %doc %{gem_instdir}/CHANGELOG.md
158 %doc %{gem_instdir}/templates
161 %defattr(644,root,root,755)