]> git.pld-linux.org Git - packages/cassandra-bin.git/blob - cassandra-bin.spec
- Initial. NFY. Needs some polishing.
[packages/cassandra-bin.git] / cassandra-bin.spec
1 %include        /usr/lib/rpm/macros.java
2 # TODO: Fix .init  cassandra status does not work now.
3
4 Summary:        Cassandra database binary package.
5 Summary(pl.UTF-8):      Baza danych Cassandra wersja binarna
6 Name:           cassandra-bin
7 %define     shname cassandra
8 Version:        0.7.0
9 %define     rccode rc3
10 Release:        0.%{rccode}.0.1
11 License:        ASF
12 Group:          Applications/Databases
13 Source0:        http://mirror.nyi.net/apache//cassandra/%{version}/apache-cassandra-%{version}-%{rccode}-bin.tar.gz
14 # Source0-md5:  8e5cfc07178cd57e05ef81cad18ef170
15 Source1:    cassandra.in.sh
16 Source2:    %{shname}.init
17 URL:            http://cassandra.apache.org/
18 BuildRequires:  rpm-javaprov
19 BuildRequires:  rpmbuild(macros) >= 1.300
20 BuildArch:      noarch
21 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
22
23 %description
24 Cassandra brings together the distributed systems technologies from Dynamo
25 and the data model from Google's BigTable. Like Dynamo, Cassandra is
26 eventually consistent. Like BigTable, Cassandra provides a ColumnFamily-based
27 data model richer than typical key/value systems.
28
29 %description -l pl.UTF-8
30 TODO
31
32 %prep
33 %setup -q -n apache-cassandra-%{version}-%{rccode}
34
35 %build
36
37 %install
38 rm -rf $RPM_BUILD_ROOT
39 install -d $RPM_BUILD_ROOT%{_javadir}
40 mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/%{shname}/
41 mkdir -p $RPM_BUILD_ROOT/usr/share/%{shname}
42 # /usr/share/%{shname}/conf -> /etc/%{shname}/ - We do not want that , lets be ale to use many instances of cassandra like we do with postgresql
43 # TODO: /usr/share/%{shname}/conf -> /var/lib/cassandra/conf
44 # TODO: root:cassandra conf/*
45 # mkdir -p $RPM_BUILD_ROOT/usr/share/%{shname}/conf
46 mkdir -p $RPM_BUILD_ROOT/etc/rc.d/init.d/
47 cp -p %{SOURCE1}  $RPM_BUILD_ROOT/usr/share/%{shname}
48 # cp -p contrib/redhat/%{name} $RPM_BUILD_ROOT/etc/rc.d/init.d/
49 cp -p lib/*.jar $RPM_BUILD_ROOT/usr/share/%{shname}
50 mkdir -p $RPM_BUILD_ROOT/usr/sbin
51 cp -p bin/cassandra $RPM_BUILD_ROOT/usr/sbin
52 mkdir -p $RPM_BUILD_ROOT/usr/bin
53 cp -p bin/cassandra-cli $RPM_BUILD_ROOT/usr/bin
54 cp -p bin/nodetool $RPM_BUILD_ROOT/usr/bin
55 cp -p bin/clustertool $RPM_BUILD_ROOT/usr/bin
56 cp -p bin/json2sstable $RPM_BUILD_ROOT/usr/bin
57 cp -p bin/sstable2json $RPM_BUILD_ROOT/usr/bin
58 cp -p bin/schematool $RPM_BUILD_ROOT/usr/bin
59 cp -p bin/config-converter $RPM_BUILD_ROOT/usr/bin
60 cp -p bin/sstablekeys $RPM_BUILD_ROOT/usr/bin
61 install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/cassandra
62 mkdir -p $RPM_BUILD_ROOT/var/lib/%{shname}/commitlog
63 mkdir -p $RPM_BUILD_ROOT/var/lib/%{shname}/data
64 mkdir -p $RPM_BUILD_ROOT/var/lib/%{shname}/saved_caches
65 mkdir -p $RPM_BUILD_ROOT/var/lib/%{shname}/conf
66 cp -p conf/log4j-server.properties $RPM_BUILD_ROOT/var/lib/%{shname}/conf
67 cp -p conf/cassandra.yaml $RPM_BUILD_ROOT/var/lib/%{shname}/conf
68 cp -p conf/cassandra-env.sh $RPM_BUILD_ROOT/var/lib/%{shname}/conf
69 cp -p conf/access.properties $RPM_BUILD_ROOT/var/lib/%{shname}/conf
70 cp -p conf/passwd.properties $RPM_BUILD_ROOT/var/lib/%{shname}/conf
71 cp -p conf/cassandra-topology.properties $RPM_BUILD_ROOT/var/lib/%{shname}/conf
72 cp -p conf/README.txt $RPM_BUILD_ROOT/var/lib/%{shname}/conf
73 mkdir -p $RPM_BUILD_ROOT/var/run/%{shname}
74 mkdir -p $RPM_BUILD_ROOT/var/log/%{shname}
75
76
77 %clean
78 rm -rf $RPM_BUILD_ROOT
79
80 %pre
81 # TODO:
82 %groupadd -g 259 -r cassandra
83 %useradd -M -o -r -u 259 -d /var/lib/%{shname} -s /bin/sh -g cassandra -c "Cassandra Server" cassandra
84
85 # TODO:
86 %preun
87 if [ "$1" = "0" ]; then
88     %service cassandra stop
89     /sbin/chkconfig --del cassandra
90 fi
91
92 # %post upstart
93 # %upstart_post cassandra
94
95 # %postun upstart
96 # %upstart_postun cassandra
97
98
99
100 %files
101 %defattr(644,root,root,755)
102 %doc CHANGES.txt LICENSE.txt README.txt NEWS.txt NOTICE.txt
103 %attr(754,root,root) /etc/rc.d/init.d/cassandra
104 %attr(755,root,root) %{_bindir}/cassandra-cli
105 %attr(755,root,root) %{_bindir}/nodetool
106 %attr(755,root,root) %{_bindir}/clustertool
107 %attr(755,root,root) %{_bindir}/json2sstable
108 %attr(755,root,root) %{_bindir}/sstable2json
109 %attr(755,root,root) %{_bindir}/schematool
110 %attr(755,root,root) %{_bindir}/config-converter
111 %attr(755,root,root) %{_bindir}/sstablekeys
112 %attr(755,root,root) %{_sbindir}/cassandra
113 # %attr(755,root,root) /etc/rc.d/init.d/%{name}
114 # %attr(754,root,root) /etc/rc.d/init.d/postgresql
115 # %attr(755,root,root) 
116 /usr/share/%{shname}
117 %attr(750,cassandra,cassandra) %dir /var/lib/%{shname}
118 %attr(750,root,cassandra) %dir /var/lib/%{shname}/conf
119 %attr(640,root,cassandra) /var/lib/%{shname}/conf/*.yaml
120 %attr(640,root,cassandra) /var/lib/%{shname}/conf/*.txt
121 %attr(640,root,cassandra) /var/lib/%{shname}/conf/*.properties
122 %attr(755,root,cassandra) /var/lib/%{shname}/conf/*.sh
123 %attr(750,cassandra,cassandra) %dir /var/run/%{shname}
124 %attr(750,cassandra,cassandra) %dir /var/log/%{shname}
This page took 0.076597 seconds and 4 git commands to generate.