forked from rpm-software-management/tito
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtito.spec
289 lines (255 loc) · 13.1 KB
/
tito.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
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
%{!?python_sitelib: %define python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
Name: tito
Version: 0.4.8
Release: 1%{?dist}
Summary: A tool for managing rpm based git projects
Group: Development/Tools
License: GPLv2
URL: http://rm-rf.ca/tito
Source0: http://rm-rf.ca/files/tito/tito-%{version}.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildArch: noarch
BuildRequires: python-devel
BuildRequires: python-setuptools
BuildRequires: asciidoc
BuildRequires: libxslt
Requires: python-setuptools
Requires: rpm-build
Requires: rpmlint
Requires: GitPython >= 0.2.0
Requires: fedpkg
Requires: fedora-cert
Requires: fedora-packager
%description
Tito is a tool for managing tarballs, rpms, and builds for projects using
git.
%prep
%setup -q -n tito-%{version}
%build
%{__python} setup.py build
# convert manages
a2x -d manpage -f manpage titorc.5.asciidoc
a2x -d manpage -f manpage tito.8.asciidoc
a2x -d manpage -f manpage tito.props.5.asciidoc
a2x -d manpage -f manpage releasers.conf.5.asciidoc
%install
rm -rf $RPM_BUILD_ROOT
%{__python} setup.py install -O1 --skip-build --root $RPM_BUILD_ROOT
rm -f $RPM_BUILD_ROOT%{python_sitelib}/*egg-info/requires.txt
# manpages
%{__mkdir_p} %{buildroot}%{_mandir}/man5
%{__mkdir_p} %{buildroot}%{_mandir}/man8
%{__gzip} -c titorc.5 > %{buildroot}/%{_mandir}/man5/titorc.5.gz
%{__gzip} -c tito.8 > %{buildroot}/%{_mandir}/man8/tito.8.gz
%{__gzip} -c tito.props.5 > %{buildroot}/%{_mandir}/man5/tito.props.5.gz
%{__gzip} -c releasers.conf.5 > %{buildroot}/%{_mandir}/man5/releasers.conf.5.gz
%{__gzip} -c build.py.props.5 > %{buildroot}/%{_mandir}/man5/build.py.props.5.gz
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root,-)
%doc README.mkd AUTHORS COPYING
%doc %{_mandir}/man5/titorc.5.gz
%doc %{_mandir}/man5/tito.props.5.gz
%doc %{_mandir}/man5/releasers.conf.5.gz
%doc %{_mandir}/man5/build.py.props.5.gz
%doc %{_mandir}/man8/tito.8.gz
%{_bindir}/tito
%{_bindir}/tar-fixup-stamp-comment.pl
%{_bindir}/test-setup-specfile.pl
%{_bindir}/generate-patches.pl
%dir %{python_sitelib}/tito
%{python_sitelib}/tito/*
%{python_sitelib}/tito-*.egg-info
%changelog
* Mon Apr 02 2012 Devan Goodwin <[email protected]> 0.4.8-1
- Fix MockBuilder for packages that use non-standard builders normally.
- interpret '0' as False for changelog_with_email setting. ([email protected])
* Thu Mar 15 2012 Devan Goodwin <[email protected]> 0.4.7-1
- Fix issues with DistributionBuilder constructor ([email protected])
* Wed Mar 14 2012 Devan Goodwin <[email protected]> 0.4.6-1
- Issue 39: Create /tmp/tito if it doesn't already exist. ([email protected])
- Add support for test build releases. ([email protected])
- Stop passing all CLI args to builders. ([email protected])
- Add mock builder speedup argument. ([email protected])
- Add support for no-value args in builder. ([email protected])
- Fix rsync options for yum repo releases. ([email protected])
- Add support for customizable changelog formats ([email protected])
* Tue Jan 24 2012 Devan Goodwin <[email protected]> 0.4.5-1
- Extract bz's and prompt to modify commit message in git releasers.
* Mon Jan 23 2012 Devan Goodwin <[email protected]> 0.4.4-1
- Issue #35: EDITOR with arguments produces backtrace ([email protected])
- remove unused fedora_cert reading ([email protected])
- Drop to shell when dist-git merge errors encountered. ([email protected])
- Use proper temp dirs for releasing. ([email protected])
- Fix git release diff command. ([email protected])
* Thu Dec 15 2011 Devan Goodwin <[email protected]> 0.4.3-1
- Escape percent character in changelog. ([email protected])
- Fix distribution builder missing args in constructor.
- Add release to usage, alphabetize list. ([email protected])
- PEP8 cleanup. ([email protected])
- No need to maintain timestamps: remove -t and -O from rsync command.
- Chdir to yum_temp_dir after creating, avoids rsync's getcwd error
- Use -O during rsync commands to fix time setting errors. ([email protected])
* Mon Nov 28 2011 Devan Goodwin <[email protected]> 0.4.2-1
- Clean out old versions of RPMs when generating yum repos. ([email protected])
- Update manpage to show multiple rsync paths. ([email protected])
* Fri Nov 25 2011 Devan Goodwin <[email protected]> 0.4.1-1
- Allow one build to go to multiple yum repo URLs. ([email protected])
- Fix --no-cleanup for release module. ([email protected])
- Add a BrewDownloadBuilder. ([email protected])
- Use proper temp directories to build. ([email protected])
- Fix permissions when rsync'ing yum repositories. ([email protected])
- Switch to CLI fedpkg command instead of module. ([email protected])
* Wed Nov 09 2011 Devan Goodwin <[email protected]> 0.4.0-1
- Fix import error with new fedpkg version. ([email protected])
- Add a KojiGitReleaser. ([email protected])
- Adding --use-version to allow Tito to force a version to use.
- Support SCRATCH=1 env variable for koji releaser. ([email protected])
- Support ONLY_TAGS env variable for koji releaser. ([email protected])
- List releasers option. ([email protected])
- Documentation update. ([email protected])
- Allow releaseing to multiple targets at once, and add --all-starting-with.
- Make auto-install available to all builders. ([email protected])
- Allow setting specific builder and passing builder args on CLI. (dgoodwin@rm-
rf.ca)
- Add new mechanism for passing custom arguments to builders. (dgoodwin@rm-
rf.ca)
- HACKING tips updated. ([email protected])
- Add a rsync username env variable for yum repo releaser. ([email protected])
- Restructure release CLI. ([email protected])
- Parsing spec files and bumping their versions or releases is now in Python.
* Wed Oct 05 2011 Devan Goodwin <[email protected]> 0.3.3-1
- Clarify some initial project layout documentation. ([email protected])
- match based on the tag for the package we are building ([email protected])
- Teach tito how to checkout EUS branches ([email protected])
- Remove release parameter from _update_package_metadata() ([email protected])
- Avoid traceback if rpmbuild fails ([email protected])
- Make Fedora git builds a little more tolerant if you need to re-run.
- Fix the binary spew in SOURCES on some weird tags. ([email protected])
- Do not print traceback when user lacks write permission ([email protected])
- Fix Fedora git releaser to use more reliable commands. ([email protected])
- Remove the old tito build --release code. ([email protected])
- Allow custom releasers to be loaded and used. ([email protected])
- Introduce new CLI module for releases. ([email protected])
- Use fedpkg switch branch for git releases. ([email protected])
- Do not print traceback when user hit Ctrl+C ([email protected])
- '0' is True, we want it as false ([email protected])
* Tue Apr 26 2011 Devan Goodwin <[email protected]> 0.3.2-1
- add debug logging ([email protected])
* Tue Apr 26 2011 Devan Goodwin <[email protected]> 0.3.1-1
- flip condition so new files are added and existing files are copied
- fix traceback if git_email is not specified ([email protected])
- Refactor release code out of the builder class. ([email protected])
- Configure tito for Fedora git builds. ([email protected])
- Complete Fedora git build process. ([email protected])
- if remote.origin is not set, assume --offline and print warning, but proceed
- Source can be tar.bz2 ([email protected])
- Source can be without number ([email protected])
- add man page for tito.props(5) ([email protected])
- document KOJI_OPTIONS options of titorc ([email protected])
- add option HIDE_EMAIL to .titorc, which will hide your email in first line of
changelog entry ([email protected])
- pass user_config to tagger class ([email protected])
- issue 18 - do not print TB if user.name, user.email is not set
- Upload sources and confirm commit during git release. ([email protected])
- First draft of Fedora Git releasing. ([email protected])
- Add a --dry-run option for build --release. ([email protected])
- Allow user config setting for sub-packages to skip during auto-install.
- Hookup bugzilla extraction during cvs release. ([email protected])
- Plus and dot chars in git email handled correctly now ([email protected])
- put emails in changelog only if changelog_with_email is set to 1 in
[globalconfig] section of config ([email protected])
- use _changelog_remove_cherrypick() for rheltagger ([email protected])
- Add code for extracting bugzilla IDs from CVS diff or git log.
- Prompt user to edit CVS commit messages. ([email protected])
- Fix no auto changelog option. ([email protected])
- add tagger for Red Hat Enterprise Linux ([email protected])
- Fix test builds in koji. ([email protected])
- Documentation update. ([email protected])
- Add missing dep on libxslt. ([email protected])
* Wed Jan 05 2011 Devan Goodwin <[email protected]> 0.3.0-1
- implement --only-tags option for builder class ([email protected])
- implement --list-tags option for builder ([email protected])
- add option --scratch to builder class ([email protected])
- do not throw traceback if you hit Ctrl+C during Auto-instaling
- allow child taggers to control commit message ([email protected])
- add new tagger: zStreamTagger - bump up release part after dist tag
- Better error-reporting when spec file has errors ([email protected])
- if we grep rpmbuild output for some string, we have to switch to C locale
- Adding more helpfull error message to show user what is busted
- Fix rpm command suggestion for broken specs. ([email protected])
- add manpage source: tito(8) ([email protected])
- add manpage source: titorc(5) ([email protected])
- adding rpm-build as a Requires. Seems pretty critical ([email protected])
- Add missing dep on python-setuptools. ([email protected])
* Wed Jun 02 2010 Devan Goodwin <[email protected]> 0.2.0-1
- Restrict building to a minimum version of tito. ([email protected])
- Added option to pass custom options to rpmbuild. ([email protected])
- Add tito-dev script to run directly from source. ([email protected])
- Better output after tagging. ([email protected])
- Display rpms build on successful completion. ([email protected])
- Added tito tag --undo. ([email protected])
- Bump versions in setup.py during tagging if possible. ([email protected])
- Added lib_dir setting for custom taggers/builders. ([email protected])
- Add option to auto-install rpms after build. ([email protected])
- Remove check for changelog with today's date. ([email protected])
- Allow user to specify an changelog string for new packages.
- Use latest commit instead of HEAD for --test. ([email protected])
- Allow tito to understand pkg names with macros. ([email protected])
- Use short sha1 when generating filenames. ([email protected])
- Commit packages dir during tito init. ([email protected])
- More detailed error message if spec has errors. ([email protected])
* Wed Jun 02 2010 Devan Goodwin <[email protected]>
- Restrict building to a minimal version of tito. ([email protected])
- Added option to pass custom options to rpmbuild. ([email protected])
- Add tito-dev script to run directly from source. ([email protected])
- Better output after tagging. ([email protected])
- Display rpms build on successful completion. ([email protected])
- Added tito tag --undo. ([email protected])
- Bump versions in setup.py during tagging if possible. ([email protected])
- Added lib_dir setting for custom builders/taggers. ([email protected])
- Add option to auto-install rpms after build. ([email protected])
- Remove check for changelog with today's date. ([email protected])
- Allow user to specify an changelog string for new packages.
- Use latest commit instead of HEAD for --test. ([email protected])
- Allow tito to understand pkg names with macros. ([email protected])
- Use short sha1 when generating filenames. ([email protected])
- Commit packages dir during tito init. ([email protected])
- More detailed error message if spec is bad. ([email protected])
* Thu Oct 01 2009 Devan Goodwin <[email protected]> 0.1.1-2
- Add AUTHORS and COPYING to doc.
- Add BuildRequires on python-setuptools.
* Tue Aug 25 2009 Devan Goodwin <[email protected]> 0.1.1-1
- Bumping to 0.1.0 for first release.
* Mon Aug 24 2009 Devan Goodwin <[email protected]> 0.0.4-1
- Hack to fix import of tagger/builder on Python 2.4. ([email protected])
* Thu Aug 06 2009 Devan Goodwin <[email protected]> 0.0.3-1
- Introduce --output option for destination/tmp directory. ([email protected])
- Use tito.props for project specific config filename. ([email protected])
- Add multi-project repo tagging tests. ([email protected])
- Add support for offline (standalone) git repos. ([email protected])
- Fix reports for single project git repos. ([email protected])
- Add README documentation. ([email protected])
* Wed Jul 22 2009 Devan Goodwin <[email protected]> 0.0.1-1
- Initial packaging.