]> git.pld-linux.org Git - packages/pld-builder.git/blame - pld-builder.spec
- new snap (20080717), check python syntax
[packages/pld-builder.git] / pld-builder.spec
CommitLineData
caa09625 1%define snap 20080717
359ef865 2Summary: PLD RPM builder environment
4839b6d9 3Summary(pl.UTF-8): Środowisko budowniczego pakietów RPM dla PLD
4141c8e1 4Name: pld-builder
43e127ff 5Version: 0.0.%{snap}
caa09625 6Release: 0.48
4141c8e1
ER
7License: GPL
8Group: Development/Building
43e127ff 9Source0: %{name}.new-%{snap}.tar.bz2
caa09625 10# Source0-md5: a09e56c24c9c15998b65568a1b48769f
78fe8cbc 11Source1: %{name}.init
12Source2: %{name}.sysconfig
4141c8e1 13URL: http://cvs.pld-linux.org/cgi-bin/cvsweb/pld-builder.new/
caa09625 14BuildRequires: python
6664c0a4 15BuildRequires: rpm-pythonprov
caa09625 16BuildRequires: rpmbuild(macros) >= 1.469
8fcdf5b9 17BuildRequires: sed >= 4.0
d700a8d1 18Requires(post,preun): /sbin/chkconfig
abe78017 19Requires(postun): /usr/sbin/userdel
6664c0a4 20Requires(pre): /bin/id
4c5c9ab5
ER
21Requires(pre): /usr/bin/getgid
22Requires(pre): /usr/sbin/groupadd
abe78017 23Requires(pre): /usr/sbin/useradd
2a46f3da 24Requires: bash
07aaec12 25Requires: crondaemon
e9a79f98 26Requires: gnupg
abe78017 27Requires: libuuid
2854b7c6 28Requires: python-pld-builder = %{version}-%{release}
d700a8d1 29Requires: rc-scripts
279f0ab2
ER
30Provides: group(builder)
31Provides: user(builder)
32Provides: user(ftpac)
33Provides: user(srpms_builder)
4141c8e1
ER
34BuildArch: noarch
35BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
36
2854b7c6
ER
37%define _sysconfdir /etc/pld-builder
38%define _datadir /usr/share/%{name}
4141c8e1
ER
39
40%description
359ef865 41PLD RPM builder environment. This is the freshest "new" builder.
4141c8e1
ER
42
43Other new and older attempts can be found from:
44http://cvs.pld-linux.org/cgi-bin/cvsweb/pld-builder/
45http://cvs.pld-linux.org/cgi-bin/cvsweb/pld-builder.old/
46http://cvs.pld-linux.org/cgi-bin/cvsweb/builder_ng/
47
6f451f4a
JR
48%description -l pl.UTF-8
49Środowisko budowniczego pakietów RPM dla PLD. To jest najnowszy "nowy"
359ef865
JB
50builder.
51
6f451f4a 52Inne nowe i starsze próby można znaleźć pod:
359ef865
JB
53http://cvs.pld-linux.org/cgi-bin/cvsweb/pld-builder/
54http://cvs.pld-linux.org/cgi-bin/cvsweb/pld-builder.old/
55http://cvs.pld-linux.org/cgi-bin/cvsweb/builder_ng/
4141c8e1 56
2854b7c6
ER
57%package -n python-pld-builder
58Summary: PLD Builder
4839b6d9 59Summary(pl.UTF-8): Budowniczy PLD
2854b7c6
ER
60Group: Development/Building
61%pyrequires_eq python-modules
62
63%description -n python-pld-builder
359ef865
JB
64PLD Builder Python code.
65
6f451f4a 66%description -n python-pld-builder -l pl.UTF-8
359ef865 67Kod pythonowy budowniczego PLD.
2854b7c6 68
279f0ab2
ER
69%package chroot
70Summary: PLD Builder chroot
be03cc8f 71Summary(pl.UTF-8): Środowisko chroot buildera PLD
279f0ab2
ER
72Group: Development/Building
73Requires(postun): /usr/sbin/userdel
74Requires(pre): /bin/id
75Requires(pre): /usr/bin/getgid
76Requires(pre): /usr/sbin/groupadd
77Requires(pre): /usr/sbin/useradd
2a46f3da 78Requires: bash
279f0ab2
ER
79Requires: rpm-build
80Provides: group(builder)
81Provides: user(builder)
82
83%description chroot
84This is the package to be installed in builder chroot.
85
be03cc8f
JB
86%description chroot -l pl.UTF-8
87Ten pakiet należy zainstalować w środowisku chroot buildera.
88
4141c8e1
ER
89%package client
90Summary: PLD Builder client
4839b6d9 91Summary(pl.UTF-8): Klient budowniczych PLD
4141c8e1
ER
92Group: Development/Building
93Requires: gnupg
94
95%description client
96This is the client to send build requests to builders, it is usually
97referred as STBR (Send To Builder Request).
98
6f451f4a
JR
99%description client -l pl.UTF-8
100To jest klient do wysyłania zleceń na buildery, zwykle określanych
359ef865
JB
101jako STBR (Send To Builder Request).
102
4141c8e1
ER
103%prep
104%setup -q -n %{name}.new
105
8fcdf5b9
ER
106mv jak-wysy?a?-zlecenia.txt jak-wysylac-zlecenia.txt
107
108%{__sed} -i -e '
c4999ea2 109 s,~/pld-builder.new/,%{_sharedstatedir}/%{name}/,
2854b7c6
ER
110 /^conf_dir/s,=.*,= "%{_sysconfdir}/",
111
112' PLD_Builder/path.py
113
4c5c9ab5
ER
114%{__sed} -i -e 's,pld-linux\.org,example.org,g' config/builder.conf
115
4141c8e1
ER
116%build
117%{__make}
caa09625 118%py_lint PLD_Builder
4141c8e1
ER
119
120%install
121rm -rf $RPM_BUILD_ROOT
2854b7c6 122# client
4141c8e1
ER
123install -d $RPM_BUILD_ROOT%{_bindir}
124install client/make-request.sh $RPM_BUILD_ROOT%{_bindir}/%{name}-make-request
125
2854b7c6
ER
126# python
127install -d $RPM_BUILD_ROOT%{py_scriptdir}/PLD_Builder
128cp -a PLD_Builder/*.py[co] $RPM_BUILD_ROOT%{py_scriptdir}/PLD_Builder
129
130# other
131install -d $RPM_BUILD_ROOT%{_sysconfdir}
132cp -a config/{rsync-passwords,*.conf} $RPM_BUILD_ROOT%{_sysconfdir}
133install -d $RPM_BUILD_ROOT%{_datadir}/{bin,admin}
134for a in bin/*.sh; do
135sed -e '
136# s,cd ~/pld-builder.new,cd %{py_scriptdir},
137 /cd ~\/pld-builder.new/d
138 s,python \(PLD_Builder.*.py\),python %{py_scriptdir}/\1c,
139' $a > $RPM_BUILD_ROOT%{_datadir}/bin/$(basename $a)
140done
141cp -a admin/*.sh $RPM_BUILD_ROOT%{_datadir}/admin
142
143# dirs
4c5c9ab5 144install -d $RPM_BUILD_ROOT{%{_sharedstatedir}/%{name}/{spool/{buildlogs,builds,ftp,notify},lock,www/{s,}rpms},/etc/{sysconfig,rc.d/init.d}}
9401ac92
ER
145install -d $RPM_BUILD_ROOT/home/services/builder/.gnupg
146install -d $RPM_BUILD_ROOT/home/services/builder/.ssh
147install -d $RPM_BUILD_ROOT/home/services/builder/rpm/{BUILD,RPMS,SOURCES,SPECS,SRPMS}
78fe8cbc 148
149install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/pld-builder
150install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/pld-builder
2854b7c6 151
3f38ca41
ER
152# from admin/fresh-queue.sh
153cd $RPM_BUILD_ROOT%{_sharedstatedir}/%{name}
279f0ab2 154install -d spool/{builds,buildlogs,notify,ftp} www/srpms lock
3f38ca41
ER
155echo 0 > www/max_req_no
156echo 0 > spool/last_req_no
157echo -n > spool/processed_ids
158echo -n > spool/got_lock
159echo '<queue/>' > spool/queue
160echo '<queue/>' > spool/req_queue
161if [ "$binary_builders" ]; then
162 for bb in $binary_builders; do
163 echo '<queue/>' > spool/queue-$bb
164 done
165fi
166
4141c8e1
ER
167%clean
168rm -rf $RPM_BUILD_ROOT
169
abe78017 170%pre
279f0ab2
ER
171%groupadd -g 181 builder
172%useradd -u 181 -g builder -c "srpms builder" srpms_builder
2a46f3da 173%useradd -u 182 -g builder -c "bin builder" -s /bin/bash -d /home/services/builder builder
9a62836e 174%useradd -u 183 -g daemon -c "ftpac" ftpac
abe78017 175
279f0ab2
ER
176%pre chroot
177%groupadd -g 181 builder
2a46f3da 178%useradd -u 182 -g builder -c "bin builder" -s /bin/bash -d /home/services/builder builder
279f0ab2 179
78fe8cbc 180%post
181/sbin/chkconfig --add %{name}
d08e805a 182%service %{name} restart
78fe8cbc 183
184%preun
185if [ "$1" = "0" ]; then
d700a8d1
ER
186 %service %{name} stop
187 /sbin/chkconfig --del %{name}
78fe8cbc 188fi
189
abe78017
ER
190%postun
191if [ "$1" = "0" ]; then
192 %userremove srpms_builder
279f0ab2 193 %userremove builder
abe78017 194 %userremove ftpac
279f0ab2
ER
195 %groupremove builder
196fi
197
198%postun chroot
199if [ "$1" = "0" ]; then
200 %userremove builder
201 %groupremove builder
abe78017
ER
202fi
203
4141c8e1
ER
204%files
205%defattr(644,root,root,755)
206%doc README TODO
8fcdf5b9
ER
207%doc user-manual.txt
208%lang(pl) %doc jak-to-dziala.txt jak-wysylac-zlecenia.txt
209
3f38ca41
ER
210%attr(754,root,root) /etc/rc.d/init.d/pld-builder
211%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/pld-builder
212
2854b7c6
ER
213%dir %{_sysconfdir}
214%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*
215
216%dir %{_datadir}
217%dir %{_datadir}/bin
218%attr(755,root,root) %{_datadir}/bin/*
219%dir %{_datadir}/admin
220%attr(755,root,root) %{_datadir}/admin/*
221
222%dir %{_sharedstatedir}/%{name}
3f38ca41 223
279f0ab2
ER
224%dir %attr(775,root,builder) %{_sharedstatedir}/%{name}/spool
225%dir %attr(775,root,builder) %{_sharedstatedir}/%{name}/spool/buildlogs
9401ac92
ER
226%dir %attr(775,root,builder) %{_sharedstatedir}/%{name}/spool/builds
227%dir %attr(775,root,builder) %{_sharedstatedir}/%{name}/spool/ftp
279f0ab2 228%dir %attr(775,root,builder) %{_sharedstatedir}/%{name}/spool/notify
3f38ca41 229
9401ac92
ER
230%attr(644,builder,builder) %config(noreplace) %verify(not md5 mtime size) %{_sharedstatedir}/%{name}/spool/got_lock
231%attr(644,builder,builder) %config(noreplace) %verify(not md5 mtime size) %{_sharedstatedir}/%{name}/spool/last_req_no
232%attr(644,builder,builder) %config(noreplace) %verify(not md5 mtime size) %{_sharedstatedir}/%{name}/spool/processed_ids
233%attr(644,builder,builder) %config(noreplace) %verify(not md5 mtime size) %{_sharedstatedir}/%{name}/spool/queue
234%attr(644,builder,builder) %config(noreplace) %verify(not md5 mtime size) %{_sharedstatedir}/%{name}/spool/req_queue
3f38ca41 235
279f0ab2 236%dir %attr(775,root,builder) %{_sharedstatedir}/%{name}/lock
3f38ca41 237
c4999ea2
ER
238%dir %{_sharedstatedir}/%{name}/www
239%dir %{_sharedstatedir}/%{name}/www/rpms
240%dir %{_sharedstatedir}/%{name}/www/srpms
9401ac92 241%attr(644,builder,builder) %config(noreplace) %verify(not md5 mtime size) %{_sharedstatedir}/%{name}/www/max_req_no
78fe8cbc 242
279f0ab2 243%dir %attr(750,builder,builder) /home/services/builder
9401ac92
ER
244%dir %attr(750,builder,builder) /home/services/builder/.gnupg
245%dir %attr(700,builder,builder) /home/services/builder/.ssh
279f0ab2
ER
246
247%files chroot
248%defattr(644,root,root,755)
249%dir %attr(750,builder,builder) /home/services/builder
9401ac92
ER
250%dir %attr(750,builder,builder) /home/services/builder/rpm
251%dir %attr(750,builder,builder) /home/services/builder/rpm/BUILD
252%dir %attr(750,builder,builder) /home/services/builder/rpm/RPMS
253%dir %attr(750,builder,builder) /home/services/builder/rpm/SOURCES
254%dir %attr(750,builder,builder) /home/services/builder/rpm/SPECS
255%dir %attr(750,builder,builder) /home/services/builder/rpm/SRPMS
279f0ab2 256
4141c8e1
ER
257%files client
258%defattr(644,root,root,755)
259%attr(755,root,root) %{_bindir}/%{name}-make-request
2854b7c6
ER
260
261%files -n python-pld-builder
262%defattr(644,root,root,755)
263%{py_scriptdir}/PLD_Builder
This page took 0.088171 seconds and 4 git commands to generate.