]> git.pld-linux.org Git - packages/elasticsearch.git/blob - elasticsearch.spec
use system jts package
[packages/elasticsearch.git] / elasticsearch.spec
1 # TODO
2 # - register user
3 # - pldize initscript
4 # - system jars:
5 #   lucene-*-3.6.2.jar
6 #   spatial4j-0.3.jar
7 Summary:        A distributed, highly available, RESTful search engine
8 Name:           elasticsearch
9 Version:        0.20.2
10 Release:        0.1
11 License:        Apache v2.0
12 Group:          Daemons
13 Source0:        https://download.elasticsearch.org/elasticsearch/elasticsearch/%{name}-%{version}.tar.gz
14 # Source0-md5:  fe50d6f4b11e9e0d1ccf661b32f15fbc
15 Source1:        %{name}.init
16 Source2:        %{name}.logrotate
17 Source3:        config-logging.yml
18 Source4:        %{name}.sysconfig
19 Source5:        %{name}.tmpfiles
20 URL:            http://www.elasticsearch.org/
21 BuildRequires:  rpmbuild(macros) >= 1.228
22 Requires(post,preun):   /sbin/chkconfig
23 Requires:       java-jna >= 3.2.4
24 Requires:       java-jts >= 1.12
25 Requires:       java-log4j >= 1.2.14
26 Requires:       java-sigar >= 1.6.4
27 Requires:       java-snappy >= 1.0.4
28 Requires:       jpackage-utils
29 Requires:       rc-scripts
30 BuildArch:      noarch
31 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
32
33 %description
34 A distributed, highly available, RESTful search engine.
35
36 %prep
37 %setup -q
38
39 rm lib/jna-3.3.0.jar
40 rm lib/jts-1.12.jar
41 rm lib/log4j-1.2.17.jar
42 rm lib/snappy-java-1.0.4.1.jar
43 rm -r lib/sigar/
44
45 %install
46 rm -rf $RPM_BUILD_ROOT
47
48 install -d $RPM_BUILD_ROOT%{_javadir}/%{name}/bin
49 install -p bin/elasticsearch $RPM_BUILD_ROOT%{_javadir}/%{name}/bin
50 install -p bin/elasticsearch.in.sh $RPM_BUILD_ROOT%{_javadir}/%{name}/bin
51 install -p bin/plugin $RPM_BUILD_ROOT%{_javadir}/%{name}/bin
52
53 # libs
54 install -d $RPM_BUILD_ROOT%{_javadir}/%{name}/lib
55 cp -a lib/* $RPM_BUILD_ROOT%{_javadir}/%{name}/lib
56
57 # config
58 install -d $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
59 cp -p config/elasticsearch.yml $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
60 cp -p %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/logging.yml
61
62 # data
63 install -d $RPM_BUILD_ROOT%{_localstatedir}/lib/%{name}
64
65 # logs
66 install -d $RPM_BUILD_ROOT%{_localstatedir}/log/%{name}
67 install -Dp %{SOURCE2} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
68
69 # plugins
70 install -d $RPM_BUILD_ROOT%{_javadir}/%{name}/plugins
71
72 # sysconfig and init
73 install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig}
74 install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
75 cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/%{name}
76
77 install -d $RPM_BUILD_ROOT%{_localstatedir}/{run,lock/subsys}/%{name}
78
79 install -D %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/tmpfiles.d/elasticsearch.conf
80
81 %clean
82 rm -rf $RPM_BUILD_ROOT
83
84 %pre
85 # create elasticsearch group
86 if ! getent group elasticsearch >/dev/null; then
87         groupadd -r elasticsearch
88 fi
89
90 # create elasticsearch user
91 if ! getent passwd elasticsearch >/dev/null; then
92         useradd -r -g elasticsearch -d %{_javadir}/%{name} \
93                 -s /sbin/nologin -c "You know, for search" elasticsearch
94 fi
95
96 %post
97 /sbin/chkconfig --add %{name}
98 %service -n %{name} restart
99
100 %preun
101 if [ $1 -eq 0 ]; then
102         /sbin/chkconfig --del %{name}
103         %service %{name} stop
104 fi
105
106 %files
107 %defattr(644,root,root,755)
108 %doc LICENSE.txt NOTICE.txt README.textile
109 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}
110 %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}
111 %config(noreplace) %{_sysconfdir}/%{name}
112 %attr(754,root,root) /etc/rc.d/init.d/%{name}
113 %{_sysconfdir}/tmpfiles.d/elasticsearch.conf
114
115 %dir %{_javadir}/%{name}
116
117 %dir %{_javadir}/%{name}/bin
118 %attr(755,root,root) %{_javadir}/%{name}/bin/elasticsearch
119 %attr(755,root,root) %{_javadir}/%{name}/bin/elasticsearch.in.sh
120 %attr(755,root,root) %{_javadir}/%{name}/bin/plugin
121
122 %dir %{_javadir}/%{name}/lib
123 %{_javadir}/%{name}/lib/%{name}-%{version}.jar
124 %{_javadir}/%{name}/lib/spatial4j-0.3.jar
125 %{_javadir}/%{name}/lib/lucene-analyzers-3.6.2.jar
126 %{_javadir}/%{name}/lib/lucene-core-3.6.2.jar
127 %{_javadir}/%{name}/lib/lucene-highlighter-3.6.2.jar
128 %{_javadir}/%{name}/lib/lucene-memory-3.6.2.jar
129 %{_javadir}/%{name}/lib/lucene-queries-3.6.2.jar
130
131 %dir %{_javadir}/%{name}/plugins
132
133 %defattr(-,elasticsearch,elasticsearch,-)
134 %dir %{_localstatedir}/lib/%{name}
135 %{_localstatedir}/run/%{name}
136 %dir %{_localstatedir}/log/%{name}
This page took 0.072019 seconds and 3 git commands to generate.