Skip to content

Latest commit

 

History

History
42 lines (31 loc) · 1.69 KB

README.rst

File metadata and controls

42 lines (31 loc) · 1.69 KB

OBS service for downloading git tarballs

This is an Open Build Service source service. It downloads a tarball and parses its git ChangeLog file for information about recent changes which then go to the package's .changes file.

The Version field will be set to %(tarball_version)s+git.%(timestamp)s.%(commit_sha)s. Where tarball_version is the version as read from the parent directory inside the downloaded tarball - everything after the last dash (-) in the directory's name. timestamp is the current seconds from the UNIX epoch when the source service was run (if there were new changes). commit_sha is the latest commit sha hash from the ChangeLog file.

The git_tarballs service will also change the specfile's Source: to the filename argument of the service and the %setup -q line to match the parent folder name in the tarball.

On the first run, git_tarballs will just set the spec file's Version field to the latest git commit. The .changes file will only be updated with commit message information when newer commits (compared to the one now set in Version) are found.

Dependencies

Requires argparse which is part of python2.7, but available as a third-party dependency in python2.6.

The tests require python-mock. To run them, just use nosetests or python -m unittest discover (on python2.7).

TODO

  • ignore Merge commits
  • use current user's email address in .changes file
  • stop parsing when we reach the last known commit
  • tests