]> git.pld-linux.org Git - SPECS.git/blob - puppet-dashboard.spec
SPECS updated Sun 1 Aug 11:02:02 CEST 2021
[SPECS.git] / puppet-dashboard.spec
1 # TODO
2 # - FHS, currently everything is packaged under /usr/share/APP
3 # - fix files, do not need to package stuff as dedicated user (http should be fine, if any)
4 Summary:        Systems Management web application
5 Name:           puppet-dashboard
6 Version:        1.2.23
7 Release:        0.2
8 License:        Apache v2.0
9 Group:          Applications/WWW
10 Source0:        https://downloads.puppetlabs.com/dashboard/%{name}-%{version}.tar.gz
11 # Source0-md5:  e445194f1ac96946e6755cb94f21a1e5
12 URL:            http://www.puppetlabs.com/
13 BuildRequires:  rpmbuild(macros) >= 1.228
14 Requires(post,preun):   /sbin/chkconfig
15 Requires:       rc-scripts
16 Requires:       ruby-mysql
17 Requires:       ruby-rake
18 Requires:       ruby-rubygems
19 BuildArch:      noarch
20 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
21
22 %description
23 Puppet Dashboard is a systems management web application for managing
24 Puppet installations and is written using the Ruby on Rails framework.
25
26 %prep
27 %setup -q
28
29 %install
30 rm -rf $RPM_BUILD_ROOT
31 install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/{log,public,tmp,vendor,certs,spool,examples}
32 install -p -d $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
33
34 cp -a app bin config db ext lib public Rakefile script spec examples vendor $RPM_BUILD_ROOT%{_datadir}/%{name}
35 install -Dp config/database.yml.example $RPM_BUILD_ROOT%{_datadir}/%{name}/config/database.yml
36 install -Dp config/settings.yml.example $RPM_BUILD_ROOT%{_datadir}/%{name}/config/settings.yml
37 install -Dp VERSION $RPM_BUILD_ROOT%{_datadir}/%{name}/VERSION
38 chmod a+x $RPM_BUILD_ROOT%{_datadir}/%{name}/script/*
39
40 # Add sysconfig and init script
41 install -Dp ext/redhat/%{name}.init $RPM_BUILD_ROOT/etc/rc.d/init.d/puppet-dashboard
42 install -Dp ext/redhat/puppet-dashboard-workers.init $RPM_BUILD_ROOT/etc/rc.d/init.d/puppet-dashboard-workers
43 install -Dp ext/redhat/%{name}.sysconfig $RPM_BUILD_ROOT/etc/sysconfig/puppet-dashboard
44 install -Dp ext/redhat/%{name}.logrotate $RPM_BUILD_ROOT/etc/logrotate.d/puppet-dashboard
45
46 # Put logs in /var/log and symlink in %{_datadir} (FHS work)
47 %if 0
48 install -d $RPM_BUILD_ROOT/var/log/%{name}
49 if stat $RPM_BUILD_ROOT%{_datadir}/%{name}/log/*; then
50         rsync -avx $RPM_BUILD_ROOT%{_datadir}/%{name}/log/* $RPM_BUILD_ROOT/var/log/%{name}
51 fi
52 rm -rf $RPM_BUILD_ROOT%{_datadir}/%{name}/log
53 ls -l $RPM_BUILD_ROOT%{_datadir}/%{name}
54 cd $RPM_BUILD_ROOT/var/log
55 ln -sf %{name} ../..%{_datadir}/%{name}/log
56 %endif
57
58 rm -r $RPM_BUILD_ROOT%{_datadir}/%{name}/ext/{redhat,debian,build_defaults.yaml,project_data.yaml}
59
60 %clean
61 rm -rf $RPM_BUILD_ROOT
62
63 %if 0
64 %pre
65 %groupadd -r puppet-dashboard
66 %useradd -r -g puppet-dashboard -d %{_datadir}/puppet-dashboard -s /sbin/nologin -c "Puppet Dashboard" puppet-dashboard
67 %endif
68
69 %post
70 /sbin/chkconfig --add puppet-dashboard
71 /sbin/chkconfig --add puppet-dashboard-workers
72
73 %preun
74 if [ "$1" = 0 ] ; then
75         %service puppet-dashboard stop
76         %service puppet-dashboard-workers stop
77         /sbin/chkconfig --del puppet-dashboard
78         /sbin/chkconfig --del puppet-dashboard-workers
79 fi
80
81 %postun
82 if [ "$1" -ge 1 ]; then
83         %service puppet-dashboard condrestart
84         %service puppet-dashboard-workers condrestart
85 fi
86
87 %files
88 %defattr(644,root,root,755)
89 %doc LICENSE README.markdown README_PACKAGES.markdown
90 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/puppet-dashboard
91 %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/puppet-dashboard
92 %attr(754,root,root) /etc/rc.d/init.d/puppet-dashboard
93 %attr(754,root,root) /etc/rc.d/init.d/puppet-dashboard-workers
94 %dir %{_datadir}/puppet-dashboard
95 %attr(-,puppet-dashboard,puppet-dashboard) %dir %{_datadir}/%{name}/config
96 %attr(-,puppet-dashboard,puppet-dashboard) %config(noreplace) %verify(not md5 mtime size) %{_datadir}/%{name}/config/*
97 %attr(-,puppet-dashboard,puppet-dashboard) %doc %{_datadir}/%{name}/VERSION
98 %attr(-,puppet-dashboard,puppet-dashboard) %{_datadir}/%{name}/Rakefile
99 %attr(-,puppet-dashboard,puppet-dashboard) %{_datadir}/%{name}/app
100 %attr(-,puppet-dashboard,puppet-dashboard) %{_datadir}/%{name}/bin
101 %attr(-,puppet-dashboard,puppet-dashboard) %{_datadir}/%{name}/db
102 %attr(-,puppet-dashboard,puppet-dashboard) %{_datadir}/%{name}/ext
103 %attr(-,puppet-dashboard,puppet-dashboard) %{_datadir}/%{name}/lib
104 %attr(-,puppet-dashboard,puppet-dashboard) %{_datadir}/%{name}/log
105 %attr(-,puppet-dashboard,puppet-dashboard) %{_datadir}/%{name}/public
106 %attr(-,puppet-dashboard,puppet-dashboard) %{_datadir}/%{name}/script
107 %attr(-,puppet-dashboard,puppet-dashboard) %{_datadir}/%{name}/spec
108 %attr(-,puppet-dashboard,puppet-dashboard) %dir %{_datadir}/%{name}/spool
109 %attr(-,puppet-dashboard,puppet-dashboard) %dir %{_datadir}/%{name}/tmp
110 %attr(-,puppet-dashboard,puppet-dashboard) %{_datadir}/%{name}/vendor
111 %attr(-,puppet-dashboard,puppet-dashboard) %{_datadir}/%{name}/certs
112 %attr(-,puppet-dashboard,puppet-dashboard) %{_datadir}/%{name}/examples
113 #%attr(-,puppet-dashboard,puppet-dashboard) %dir /var/log/%{name}
This page took 0.094953 seconds and 3 git commands to generate.