Commit graph

506 commits

Author SHA1 Message Date
Miroslav Suchý
1f26dc1cc9 merge common code 2013-04-04 12:28:58 +02:00
Miroslav Suchý
f4d77b6248 Raise error if there are two spec files 2013-04-04 12:28:58 +02:00
Devan Goodwin
f84a0c5a11 Add Fedora 18 releaser. 2013-02-26 08:56:12 -04:00
Devan Goodwin
373139efd5 Add test for recent pull request. 2013-02-26 08:55:54 -04:00
Devan Goodwin
62c85e6466 Merge pull request #64 from spkane/master
Fix for increase_version that makes it underscore aware, and a bit more error tolerant
2013-02-26 04:54:13 -08:00
Sean P. Kane
5db27c5548 Make increase_version _ aware and return original string upon failures
The VersionTagger fails in the spec file contains a number followed
by and underscore. This patch fixes that issue.
increase_version also returned an emtpy vlaue when nothing matched,
which led to a broken spec file. It now returns the original,
unmodified value instead.
2013-02-25 22:40:07 -08:00
Devan Goodwin
023c6dcc86 Merge pull request #63 from xsuchy/pull-req-sc3
Support tagging packages from Software Collections
2013-02-20 09:56:13 -08:00
Miroslav Suchý
873b2e6bd7 merge common code from tagger and builder 2013-02-20 16:21:40 +01:00
Miroslav Suchý
f1cd07cc76 allow tagger to get values from package config and override values in global_config 2013-02-20 16:21:40 +01:00
Miroslav Suchý
1c08f3595e Allow user to define which package need to be installed before tagging.
This is for supporting tagging software collections (SC), if you have
installed meta package of SC then then name of package is different.
I.e. if you are tagging rubygem-foo package and you have ruby193-build
installed then the name of package is ruby193-rubygem-foo.
2013-02-20 16:21:40 +01:00
jesus m. rodriguez
562ef769df Merge pull request #62 from mbacovsky/tag_checker_issue
Fixed check for existing tag
2013-02-19 11:14:59 -08:00
jesus m. rodriguez
7c8c8887c9 Merge pull request #59 from xsuchy/sources
NoTgzBuilder - do not guess source, get it correctly from spec file
2013-02-19 11:12:22 -08:00
Martin Bačovský
3481e40d77 Fixed check for existing tag
We use suffix in relase number to indicate build in a branch. Builds from master have no suffix.
When we had package-1.2.3-4h built in branch and was trying to tag package-1.2.3-4 in master
the check failed as the new tag was substring of the other tag and grep matches that.
2013-02-19 16:46:50 +01:00
Miroslav Suchý
75efd76b2e do not fail if spec does not have any source
addressing:
Error running command: /usr/bin/spectool --list-files '/tmp/tito-build/rpmbuild-ruby193-d6e54d8c72c34196a4f51ac134c4172b44d9eccae0bLpW/SOURCES/ruby193-1/ruby193.spec' | awk '{print $2}' |xargs -l1 basename
Status code: 31488
Command output: basename: missing operand
Try 'basename --help' for more information.
Traceback (most recent call last):
  File "/usr/bin/tito", line 23, in <module>
    CLI().main(sys.argv[1:])
  File "/usr/lib/python2.7/site-packages/tito/cli.py", line 94, in main
    return module.main(argv)
  File "/usr/lib/python2.7/site-packages/tito/cli.py", line 401, in main
    return builder.run(self.options)
  File "/usr/lib/python2.7/site-packages/tito/builder.py", line 194, in run
    self.srpm()
  File "/usr/lib/python2.7/site-packages/tito/builder.py", line 228, in srpm
    self.tgz()
  File "/usr/lib/python2.7/site-packages/tito/builder.py", line 479, in tgz
    result = run_command(cmd)
  File "/usr/lib/python2.7/site-packages/tito/common.py", line 217, in run_command
    raise Exception("Error running command")
Exception: Error running command
2013-02-19 09:47:31 +01:00
jesus m. rodriguez
0615849802 Merge pull request #60 from practicalweb/master
Add install Instructions
2013-01-25 06:55:26 -08:00
Sean Burlington
7ff1f8435a Add install instructions 2013-01-25 11:55:49 +00:00
Miroslav Suchý
9feb9cf48d NoTgzBuilder - do not guess source, get it correctly from spec file 2013-01-17 16:18:05 +01:00
Devan Goodwin
7ca6d78090 Automatic commit of package [tito] release [0.4.11-1]. 2013-01-17 08:54:47 -04:00
Devan Goodwin
8c5fdc9969 Merge pull request #58 from aronparsons/koji-scratch
add a --scratch option for KojiReleaser
2013-01-04 06:01:23 -08:00
Aron Parsons
e2b5f5d3ca add a --scratch option for KojiReleaser
Add a command-line option of --scratch to perform a scratch
build in Koji.  This is easier to use than always setting
the environment variable of SCRATCH=1.
2012-12-27 22:12:28 -05:00
Devan Goodwin
f9b6c9f83f Automatic commit of package [tito] release [0.4.10-1]. 2012-11-28 09:01:36 -04:00
Devan Goodwin
407ffd932f Merge pull request #56 from maxamillion/dev/maxamillion/gem_builder
Added tito.builder.GemBuilder - Round 2
2012-11-28 04:59:07 -08:00
Devan Goodwin
f5027158bb Fix a missing self. 2012-11-26 17:03:14 -04:00
Devan Goodwin
6ba936c40d Merge pull request #57 from maxamillion/dev/maxamillion/release-no_build
Add --no-build option to release.
2012-11-26 12:15:01 -08:00
Adam Miller
69ca590905 a more clear explanation for man page 2012-11-26 10:56:43 -06:00
Adam Miller
03529cbab7 first run at adding --no-build; this will allow
scripted DistGit commits and koji/brew chain-builds

Needs testing.

pep8 cleanup from my changes

switch --no_build to --no-build for consistency

scope matters ... should pay attention to that
2012-11-26 10:45:50 -06:00
Adam Miller
c1182875b6 added gembuilder, cleaned up pep8 2012-11-21 13:34:18 -06:00
Devan Goodwin
7d7b419a2e Merge pull request #55 from jbowes/travis
Add a Travis configuration
2012-11-13 05:38:29 -08:00
James Bowes
e3a6111072 Add a Travis configuration
Travis[1] runs continuous integration for Open Source projects. With
github, it will run the configured tests and tag pull requests as passing
or failing. This commit adds a Travis configuration.

Since Travis hosts run debian/ubuntu, and execute tests in virtualenv,
getting access to `rpm` and `python-rpm` is impossible, or nontrivial,
at least. For now, ignore the functional tests. To support running the
BuildTargetParser tests, pull that class out into its own module, and
away from release.py, which imports `rpm`.

To configure travis, go to the website, log in with your github account,
then sync your repos under the account tab below your name. Then just
switch the repo to 'on' and it should be all set up.

[1]: http://travis-ci.org
2012-11-10 10:49:28 -04:00
James Bowes
3810091295 Merge pull request #53 from mscherer/patch-1
Update README.mkd
2012-11-04 12:48:31 -08:00
mscherer
6dcf5fa85d Update README.mkd
Add proper formating for the "releasing packages" section, so it appear correctly on github
2012-11-04 21:37:21 +01:00
jesus m. rodriguez
be8494f351 Merge pull request #46 from mstead/master
Added ability to specify build targets for DistGitReleaser and FedoraReleaser.
2012-09-21 11:55:43 -07:00
Devan Goodwin
e05119ab9e Merge pull request #52 from dgoodwin/fixyumrepo
Fix YumRepoReleaser to sync to multiple targets
2012-09-21 04:55:50 -07:00
jesus m. rodriguez
f61ddc480b pep8: cleanup common.py 2012-09-20 17:12:47 -04:00
jesus m. rodriguez
43a1366541 fix: RsyncReleaser doesn't handle multiple rsync locations
The refactoring of YumRepoReleaser into RsyncReleaser and
YumRepoReleaser caused a regression that didn't allow multiple rsync
locations to be defined and sync'd properly.

Moved a bunch of code around and adding of method variables to
allow multiple rsync and tempdirs to be used.
2012-09-20 16:47:09 -04:00
jesus m. rodriguez
c1a4eb0a62 remove tabs and trailing whitespace. add whitespace between methods 2012-09-20 10:29:24 -04:00
jesus m. rodriguez
d601601f3d Merge pull request #51 from dgoodwin/builderarg
pass in arguments to builder
2012-09-13 07:46:13 -07:00
jesus m. rodriguez
611bad9933 change args -> mock_args to be a bit clearer. 2012-09-12 12:17:48 -04:00
jesus m. rodriguez
6c8fe3e02f pass in arguments to builder 2012-09-11 13:43:31 -04:00
Devan Goodwin
c8404efe86 Merge pull request #50 from iNecas/extractsha1
Handle stderr noise getting from remote server
2012-09-07 05:24:20 -07:00
Ivan Necas
e97f8539fc Handle stderr noise getting from remote server
Use regular expression to extract the SHA1 from the `git ls-remote` call
response. The reason is that there might be some messages in the
response going to stderr, that are captured when using run_command,
e.g.:

```
Could not chdir to home directory /home/johndoe: No such file or directory
fe87e2b75ed1850718d99c797cc171b88bfad5ca refs/tags/my-awesome-lib-1.0.1-1
```

I used 30 and more characters for the regular expression because I was
not sure the SHA1 is always shown as 40 characters. However we can be
quite certain that the word of 30 and more [0-9a-f] characters is a
SHA1.
2012-09-07 14:16:05 +02:00
Devan Goodwin
bc25135ce7 Add Fedora 18 releases. 2012-09-05 10:21:36 -03:00
Devan Goodwin
6373e192e8 Automatic commit of package [tito] release [0.4.9-1]. 2012-09-04 09:27:15 -03:00
Devan Goodwin
272406c1b3 Stop passing --installdeps for mock builds.
Aparently not required. :)
2012-08-30 15:25:23 -03:00
Devan Goodwin
47bc8576fa New author. :) 2012-08-29 16:36:39 -03:00
Pall Sigurdsson
03674d4aee manpages for releasers.conf now have updated information for rsyncreleaser and yumreporeleaser 2012-08-29 16:34:22 -03:00
Pall Sigurdsson
493e1b3114 YumRepoReleaser feature: createrepo command can now be specified from releasers.conf with the 'createrepo_command' config option 2012-08-29 16:34:12 -03:00
Pall Sigurdsson
27198d0efe Fixed: Crash when yumreporeleaser encounters a signed rpm and does not have the public key 2012-08-29 16:34:04 -03:00
Pall Sigurdsson
7876a1deb3 Created new releaser called RsyncReleaser. Based heavily on YumRepoReleaser. Refactored YumRepoReleaser to inherit most code from RsyncReleaser.
RsyncReleaser takes an optional argument "filetypes" from releasers.conf
which specifies what type of packages should be rsynced

[rsync_test-example]
releaser = tito.release.RsyncReleaser
builder = tito.builder.MockBuilder
builder.mock = fedora-16-x86_64
filetypes = tgz rpm srpm
rsync = /tmp/rsync_repo/

in case of YumRepoReleaser default filetypes is of course only rpm.
2012-08-29 16:33:54 -03:00
Devan Goodwin
5fdd59c5ba Adding a TODO. 2012-08-29 16:30:54 -03:00