-
Notifications
You must be signed in to change notification settings - Fork 45
/
ndt.spec
192 lines (157 loc) · 5.95 KB
/
ndt.spec
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
Name: ndt
Version: 4.0.0.1
Release: 2%{?dist}
Summary: Network Diagnostic Tool
Group: Applications/Networking
License: BSDish
URL: http://software.internet2.edu/ndt/
Vendor: Internet2
Source0: %{name}-%{version}%{?rc_tag}.tar.gz
# disabling the janalyze build - should be moved to an external package
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
Requires: ndt-server, ndt-client
BuildRequires: web100_userland, libpcap-devel, jpackage-utils, I2util
BuildRequires: mysql-connector-odbc, unixODBC-devel, zlib-devel
BuildRequires: jansson-devel, openssl-devel
BuildRequires: gcc
%description
The Network Diagnostic Tool (NDT) is a client/server program that provides
network configuration and performance testing to a users desktop or laptop
computer. The system is composed of a client program (command line or java
applet) and a pair of server programs (a webserver and a testing/analysis
engine). Both command line and web-based clients communicate with a
Web100-enhanced server to perform these diagnostic functions. Multi-level
results allow novice and expert users to view and understand the test results.
%package client
Summary: NDT client
Group: Applications/Network
Requires: jansson
%description client
NDT command line tool for scheduling bandwidth measurements with an NDT
server.
%package server
Summary: NDT server
Group: Applications/Network
Requires: I2util, chkconfig, initscripts, shadow-utils, coreutils
Requires: web100_userland, libpcap
Requires: jansson
Requires: python >= 2.5
%description server
NDT server that enables end users to run performance tests
%package server-apache
Summary: NDT server apache configuration
Group: Applications/Network
Requires: httpd, ndt-server
%description server-apache
Removes NDT's usage of fakewww, and uses Apache to serve NDT's web page and
Java applet.
%prep
%setup -q -n %{name}-%{version}%{?rc_tag}
%build
%if "%{?CERT_FILE}" == ""
%configure --enable-fakewww --with-java=precompiled --with-flash=no
%else
%configure --enable-fakewww --with-java=precompiled --with-cert="%{CERT_FILE}" --with-alias="%{CERT_ALIAS}" --with-flash=no
%endif
#make %{?_smp_mflags}
make
%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
%{__install} -D -m 0755 conf/ndt-init %{buildroot}%{_initrddir}/%{name}
%{__install} -D -m 0755 conf/ndt-apache.conf %{buildroot}%{_sysconfdir}/httpd/conf.d/%{name}.conf
%{__install} -D -m 0644 conf/ndt-sysconfig %{buildroot}%{_sysconfdir}/sysconfig/%{name}
%{__install} -D -m 0644 conf/ndt-logrotate %{buildroot}%{_sysconfdir}/logrotate.d/%{name}
%{__install} -D -m 0755 conf/tcpbw100.default.html %{buildroot}%{_prefix}/%{name}/tcpbw100.html
%{__install} -D -m 0755 conf/manage_fakewww_usage %{buildroot}%{_prefix}/%{name}/manage_fakewww_usage
%{__mkdir} -p %{buildroot}%{_localstatedir}/lib/%{name}
%{__mkdir} -p %{buildroot}%{_localstatedir}/log/%{name}
%{__rm} -rf %{buildroot}%{_prefix}/%{name}/Tcpbw100*.class
%{__rm} -rf %{buildroot}%{_prefix}/%{name}/serverdata
%clean
rm -rf $RPM_BUILD_ROOT
%post server
if [ "$1" = "1" ]; then
# If this is a first time install, add the users and enable it by default
/sbin/chkconfig --add ndt
else
/sbin/service ndt condrestart
fi
%preun server
if [ $1 = 0 ]; then
/sbin/service ndt stop > /dev/null 2>&1 || :
/sbin/chkconfig --del %{name} || :
fi
%post server-apache
%{_prefix}/%{name}/manage_fakewww_usage disable
# Need to restart NDT first so that it lets go of 7123
service ndt condrestart
service httpd condrestart
%preun server-apache
if [ $1 -eq 0 ]; then
# This will retry to start NDT, but since apache still has the port,
# it'll fail. The %postun condrestart will get NDT going again.
%{_prefix}/%{name}/manage_fakewww_usage enable || :
fi
%postun server-apache
# Need to restart HTTPD first so that it lets go of 7123. This gets done in the
# '%postun' so that the apache ndt.conf is gone.
service httpd condrestart
service ndt condrestart
%files
%files server
%defattr(-,root,root,-)
%{_sbindir}/*
%{_initrddir}/%{name}
%config(noreplace) %{_sysconfdir}/sysconfig/%{name}
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
%dir %{_prefix}/%{name}
%dir %{_localstatedir}/lib/%{name}
%dir %{_localstatedir}/log/%{name}
%{_prefix}/%{name}/*
%{_mandir}/man5/*
%{_mandir}/man8/*
%{_mandir}/man1/analyze.1.gz
%{_mandir}/man1/genplot.1.gz
%{_mandir}/man1/tr-mkmap.1.gz
%{_mandir}/man1/viewtrace.1.gz
%{_bindir}/analyze
%{_bindir}/genplot
%{_bindir}/tr-mkmap
%{_bindir}/viewtrace
%files server-apache
%{_sysconfdir}/httpd/conf.d/%{name}.conf
%files client
%defattr(-,root,root,-)
%{_mandir}/man1/web100clt.1.gz
%{_bindir}/web100clt
%{_bindir}/ndtclt
%changelog
* Wed Nov 12 2014 Aaron Brown <[email protected]> - 3.7.0-1
- Initial NDT 3.7.0 release candidate RPM
* Tue Sep 25 2012 Kavitha Kumar <[email protected]> - 3.6.5.2
- Change NDT version to 3.6.5.2_rc2
* Tue May 16 2012 Kavitha Kumar <[email protected]> - 3.6.5
- Change NDT version 3.6.5, remove RC1
* Tue May 1 2012 Kavitha Kumar <[email protected]> - 3.6.5-1
- Bump NDT version up to 3.6.5
* Fri Sep 30 2011 Aaron Brown <[email protected]> - 3.6.4-2
- Bugfix for the init script
* Thu May 26 2011 Aaron Brown <[email protected]> - 3.6.4-1
- Bump NDT version to 3.6.4
- Split out RPM into client and server packages
- Fix a bug when compiling on 64-bit hosts
* Wed Jul 29 2009 Tom Throckmorton <[email protected]> - 3.4.4a-4
- add build support for db logging
- add restart in %post
* Mon Sep 08 2008 Tom Throckmorton <[email protected]> - 3.4.4a-3
- disable I2util build
- major rework of the init script; use of fakewww managed through /etc/sysconfig/ndt
- relocation of data, log dirs
- add logrotate script
- remove unnecessary files from package
* Wed Sep 03 2008 Tom Throckmorton <[email protected]> - 3.4.4a-2
- corrected a problem with the admin applet not loading
- included the tcpbw100.html template
* Mon Jul 21 2008 Tom Throckmorton <[email protected]> - 3.4.4a-1
- initial package build