]> git.pld-linux.org Git - packages/vagrant.git/blob - vagrant.spec
new, version 1.0.6
[packages/vagrant.git] / vagrant.spec
1
2 #
3 # Missing deps in Fedora:
4 #
5 # rubygem-log4r >= 1.1.9 < 2.0.0
6 #   Fix: Build new package, bz905240
7 #
8 # rubygem-childprocess >=0.3.1 < 0.4.0 (0.3.6 in rawhide)
9 #   Fix: Grab 0.3.6 package from rawhide
10 #
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
13 #
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
16 #
17
18 %define gem_name        vagrant
19 %define rubyabi         1.9.1
20 Summary:        Provisioning and deployment of virtual instances
21 Name:           vagrant
22 Version:        1.0.6
23 Release:        0.1
24 License:        MIT
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
49 BuildArch:      noarch
50
51 %description
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.
55
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).
63
64 %package doc
65 Summary:        Documentation for %{name}
66 Group:          Documentation
67 Requires:       %{name} = %{version}-%{release}
68 %if "%{_rpmversion}" >= "5"
69 BuildArch:      noarch
70 %endif
71
72 %description doc
73 Ruby documentation for %{gem_name}
74
75 %prep
76 gem unpack %{SOURCE0}
77 %setup -q -D -T -n %{gem_name}-%{version}
78
79 gem spec %{SOURCE0} -l --ruby > %{gem_name}.gemspec
80
81 %build
82 mkdir -p ./%{gem_dir}
83
84 # Create the gem as gem install only works on a gem file
85 gem build %{gem_name}.gemspec
86
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
91 gem install -V \
92                 --local \
93                 --install-dir ./%{gem_dir} \
94                 --bindir ./%{_bindir} \
95                 --force \
96                 --rdoc \
97                 %{SOURCE0}
98
99 %install
100 rm -rf $RPM_BUILD_ROOT
101 install -d $RPM_BUILD_ROOT%{gem_dir}
102
103 # Remove a few oddments
104 rm .%{gem_instdir}/.gitignore
105 rm .%{gem_instdir}/.yardopts
106
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 .
111
112 # Programs/scripts
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
117
118 # Wrap up the rest
119 cp -a ./%{gem_dir}/* $RPM_BUILD_ROOT%{gem_dir}/
120
121 %if %{with tests}
122 cd .%{gem_instdir}
123
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
128 %endif
129
130 %clean
131 rm -rf $RPM_BUILD_ROOT
132
133 %files
134 %defattr(644,root,root,755)
135 %attr(755,root,root) %{_bindir}/vagrant
136 %{gem_spec}
137 %{gem_cache}
138 %{gem_instdir}/lib
139 %{gem_instdir}/test
140 %{gem_instdir}/keys
141 %{gem_instdir}/tasks
142 %{gem_instdir}/contrib
143 %{gem_instdir}/Gemfile
144 %{gem_instdir}/Rakefile
145 %{gem_instdir}/%{gem_name}.gemspec
146 %config %{gem_instdir}/config
147
148 # Put something in the default fedora documentation location
149 %doc LICENSE
150 %doc README.md
151 %doc CHANGELOG.md
152
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
157
158 %doc %{gem_instdir}/templates
159
160 %files doc
161 %defattr(644,root,root,755)
162 %doc %{gem_docdir}
This page took 0.079339 seconds and 3 git commands to generate.