services/obs-service-git-buildpackage.git
11 years agotests: make sure to restore dir permissions
Markus Lehtonen [Wed, 9 Oct 2013 11:38:52 +0000 (14:38 +0300)]
tests: make sure to restore dir permissions

So that tests don't leave stale temporary directories in case of tests
fail.

Change-Id: I06aa23b2ec6805b18a3c597101ab186b8aa24abc
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
11 years agorepocache: more verbose debug messages
Markus Lehtonen [Tue, 8 Oct 2013 10:20:20 +0000 (13:20 +0300)]
repocache: more verbose debug messages

Change-Id: I3c47b97b1e67066d13176c36a340d2d6a8625cd6
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
11 years agopackaging: start development cycle for 0.4
Markus Lehtonen [Tue, 11 Jun 2013 11:22:26 +0000 (14:22 +0300)]
packaging: start development cycle for 0.4

Change-Id: Ibd3956a60ca1f9fcf60c158fe903541ffbda4a41
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
11 years agoRelease 0.3
Markus Lehtonen [Thu, 8 Aug 2013 08:42:13 +0000 (11:42 +0300)]
Release 0.3

Change-Id: I7347563e29d0f8b5121d58c635975ab0a54a622e
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agotests: split repocache tests into separate file
Markus Lehtonen [Wed, 12 Jun 2013 06:26:53 +0000 (09:26 +0300)]
tests: split repocache tests into separate file

Change-Id: I973a0decab628804c899f97e2b4804fae984b215
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agoMove the Git repository cache in separate subpackage
Markus Lehtonen [Tue, 11 Jun 2013 14:19:52 +0000 (17:19 +0300)]
Move the Git repository cache in separate subpackage

Move the Git repository cache implementation/API into a separate python
module and into a separate RPM subpackage. Makes it easier for other
packages to depend on the repository cache API.

Change-Id: Ic234921241ea154c051cdd308a15a65706e4bd9c
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agoAdd .gitignore
Markus Lehtonen [Tue, 11 Jun 2013 11:25:15 +0000 (14:25 +0300)]
Add .gitignore

Change-Id: I4fed7de8b67aee3267ea947325bce7fd071da677
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agopackaging: start next development cycle
Markus Lehtonen [Tue, 11 Jun 2013 11:22:26 +0000 (14:22 +0300)]
packaging: start next development cycle

Change spec file so that pre-releases are easily done.

Change-Id: I040b693a27f2dc3461293fd88ca2c1479ffb345a
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agoRelease 0.2
Markus Lehtonen [Fri, 3 May 2013 12:18:40 +0000 (15:18 +0300)]
Release 0.2

Change-Id: Ide0dacea0fc1c8cd93e940776d571b69ae094e58
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agogbp.conf: set tag format
Markus Lehtonen [Fri, 3 May 2013 12:22:05 +0000 (15:22 +0300)]
gbp.conf: set tag format

Change-Id: I6ca24baa1cc253072b891777c34ce80df21ac12a
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agoFix gbp arguments
Markus Lehtonen [Fri, 26 Apr 2013 14:40:38 +0000 (17:40 +0300)]
Fix gbp arguments

Replace argv0 stub with the real program name so that gbp correctly
parses its config files.

Change-Id: I00ea542bee1b96603f30e128ef5ad95c2da1933e
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agoAdd support for Deb packages and selective building
Markus Lehtonen [Mon, 22 Apr 2013 14:02:40 +0000 (17:02 +0300)]
Add support for Deb packages and selective building

Add support for generating (exporting) Debian source package with
git-buildpackage.

Also, adds new options 'rpm' and 'deb' for selecting whether to generate
rpm and/or deb packaging sources. These options are tri-state with
'auto' trying to determine if the corresponding packaging is available.

Change-Id: Ie3dda1f471a64665009fb9557ed62c1d2d0f3610
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agoSupport for config files
Markus Lehtonen [Fri, 19 Apr 2013 13:44:52 +0000 (16:44 +0300)]
Support for config files

Initial support for reading service configuration from a file. For now,
there is only one configuration setting, i.e. 'repo-cache-dir'.
All configuration settings can be overridden with environment variables,
if needed.

By default, the service tries to read
'/etc/obs/services/git-buildpackage' and '~/.obs/git-buildpackage'.
Other file(s) can be defined with the --config cmdline option.

Change-Id: I65d5ee26b3798646e49615d98019673ce5606d5d
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agotests: more isolation for test cases
Markus Lehtonen [Fri, 19 Apr 2013 13:30:04 +0000 (16:30 +0300)]
tests: more isolation for test cases

Run every test case in its own temp directory. Similarly, use test case
specific cache directory that lies outside the temp directory.

Also, create the test case specific orig repo by copying rather than
cloning in order to get an identical copy with all refs.

Change-Id: I42e1ae889118924b4d4482b3780efd13632e6567
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agopackaging: refine unit tests
Markus Lehtonen [Thu, 18 Apr 2013 11:35:17 +0000 (14:35 +0300)]
packaging: refine unit tests

Don't force do_unittests in spec. Also, fake username and email in
'%check' section to work around unconfigured git.

Change-Id: Ibb0da9d8a40eb15e517c293c225577f5c28f3c54
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agopylint fix: rename global variable logger to LOGGER
Markus Lehtonen [Wed, 17 Apr 2013 12:35:50 +0000 (15:35 +0300)]
pylint fix: rename global variable logger to LOGGER

Change-Id: I745c10f9b8fd84da0fad788af3bf81864c9755a4
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agoCachedRepo: do force clean when updating working copy
Markus Lehtonen [Wed, 17 Apr 2013 11:50:41 +0000 (14:50 +0300)]
CachedRepo: do force clean when updating working copy

Just in case - this should be never ever really be necessary unless
somebody manually hacks the cached repositorys introducing local
changes.

Change-Id: I5fe76ffcfb63d750bf3ec4bd85ead9ba0c5c0064
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agoCachedRepo: do force checkout when updating working copy
Markus Lehtonen [Wed, 17 Apr 2013 11:50:41 +0000 (14:50 +0300)]
CachedRepo: do force checkout when updating working copy

The index of cached repo may be out-of-sync with FETCH_HEAD. In this
case normal checkout fails.

Change-Id: Id2ec2a41bccde49bc4a2622d771517ab95ba7254
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agotests: run every testcase with clean orig repo
Markus Lehtonen [Wed, 17 Apr 2013 11:33:10 +0000 (14:33 +0300)]
tests: run every testcase with clean orig repo

This way "upstream changes" made inside test cases don't affect other
tests.

Change-Id: I297afde17d9835992a0635be59799ff1c1904165
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agoRelease 0.1
Markus Lehtonen [Thu, 4 Apr 2013 07:25:12 +0000 (10:25 +0300)]
Release 0.1

Change-Id: If1415ece9c525fc7357813f41248d0f92d83f8e4
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agosetup.py: parse version from spec
Markus Lehtonen [Fri, 5 Apr 2013 06:41:02 +0000 (09:41 +0300)]
setup.py: parse version from spec

Change-Id: I337d3d65a81e082382149fb98ec386c4bcd60f28
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agotests: enable xml nose report in config
Markus Lehtonen [Fri, 5 Apr 2013 06:41:37 +0000 (09:41 +0300)]
tests: enable xml nose report in config

Change-Id: Idd6d1420f374e7d57815af67edd5963a6349a5e5
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agoCachedRepository: option to not update submodules
Markus Lehtonen [Thu, 4 Apr 2013 08:40:22 +0000 (11:40 +0300)]
CachedRepository: option to not update submodules

Change-Id: Ifbc603e1355da46a2eb1c0e21e5db1ac0897d885
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agoUtilize non-bare mirrored git clone
Markus Lehtonen [Thu, 28 Mar 2013 07:46:09 +0000 (09:46 +0200)]
Utilize non-bare mirrored git clone

Makes submodules available. Also, makes it possible to utilize the
cached repositories for GBS.

Instead of a bare mirrored clone, create a special clone that mirrors
all remote refs, and, has a working copy. In short:
- create a git config that mirrors all remote refs directly, we don't
  expect any local changes or refs
- always fetch HEAD of remote repo
- when updating from remote, do a fetch with force and prune so that we
  stay in sync with the remote

Leaves the support for bare (mirrored) repos into CachedRepo class,
although this is not used by the service, currently.

Change-Id: I1496425b50a990aa83b5f08a03eeacafb074bb7b
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agotests: more extensive unit tests
Markus Lehtonen [Mon, 25 Mar 2013 13:49:13 +0000 (15:49 +0200)]
tests: more extensive unit tests

Change-Id: I7c030d50d8a5bafa93073c7f33e6633ba6e6365c
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agopackaging: initial RPM packaging
Markus Lehtonen [Wed, 27 Mar 2013 10:15:01 +0000 (12:15 +0200)]
packaging: initial RPM packaging

Change-Id: I57732c6e3ef2d3d5b322b4e2b7328a38f5847db0
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agoAdd .gbp.conf
Markus Lehtonen [Wed, 27 Mar 2013 10:15:34 +0000 (12:15 +0200)]
Add .gbp.conf

Change-Id: Idafa14514d1787186f9e4e3b4280831004697cc7
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agotests: Add initial unit tests
Markus Lehtonen [Sat, 23 Mar 2013 06:55:25 +0000 (08:55 +0200)]
tests: Add initial unit tests

Very simple basic tests.

Also, add config files for nose and coverage.

Change-Id: I37ab5d2027701799c8502df41e97e1f0cf089c03
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agoUse python distutils
Markus Lehtonen [Sat, 23 Mar 2013 07:53:14 +0000 (09:53 +0200)]
Use python distutils

Change-Id: I3172b0abadb90e079494b5b1607511e1509c88f8
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agoInitial version
Markus Lehtonen [Thu, 21 Mar 2013 14:39:11 +0000 (16:39 +0200)]
Initial version

First version of the git-buildpackage OBS source service. Contains very
basic functionality for basically specifying the (remote) repo url and
revision to be exported.

Also, adds an implementation of a thread-safe repository cache.

Change-Id: I7dab6216ad6dce19415daae06f3f4dfec4e33da3
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
12 years agoInitial empty repository
Eduard Bartosh [Wed, 27 Mar 2013 08:46:16 +0000 (01:46 -0700)]
Initial empty repository