services/jenkins-scripts.git
11 years agoAdd blocked as a OBS active status
Lin Yang [Tue, 25 Jun 2013 08:35:40 +0000 (16:35 +0800)]
Add blocked as a OBS active status

OBS build status blocked means its dependency package is still building, in
this situation, it should continue to wait until next repo publish event.

Change-Id: I338a50a6cc7dc29ded3b9b0f07c3bcdc98006c6d
Signed-off-by: Lin Yang <lin.a.yang@intel.com>
11 years agoAdd buildcheck project name check
Lin Yang [Tue, 25 Jun 2013 08:29:11 +0000 (16:29 +0800)]
Add buildcheck project name check

Check whether this repo publish event is from build check project at the
beginning. If not, exit directly.

Change-Id: I9c5973a3b426f294ac7697e6ea76d8b4a3e013cf
Signed-off-by: Lin Yang <lin.a.yang@intel.com>
11 years agoPylint for common/gerrit.py
Lingchaox Xin [Thu, 20 Jun 2013 07:32:06 +0000 (15:32 +0800)]
Pylint for common/gerrit.py

Change-Id: I756344890766eafbbebe382f78a28f6418600471

11 years agoPylint for common/runner.py and cleanups
Lingchaox Xin [Thu, 20 Jun 2013 02:55:25 +0000 (10:55 +0800)]
Pylint for common/runner.py and cleanups

Change-Id: I384d50dc13c07f129e1e8f30bbd4691c671e7f1e

11 years agoPylint for common/repomaker.py
Lingchaox Xin [Thu, 20 Jun 2013 02:36:09 +0000 (10:36 +0800)]
Pylint for common/repomaker.py

In hashlib module, md5, sha256 ... are defined dynamically according to
Openssl library availability in order to use the fastest available
implementation, but pylint can NOT understand it, so diable it.

Change-Id: I5f43625fe87aa0971a9a109258b6529c2ab9857f

11 years agoFix self.describe method call in gbp.git.repository
Lingchaox Xin [Wed, 19 Jun 2013 09:04:59 +0000 (17:04 +0800)]
Fix self.describe method call in gbp.git.repository

A new method named describe appeared in gbp 36341dda, so use it instead
of using customed describe method.

Change-Id: Ie9cf5f8c61246f957789a102930e3b81cafac98d
Reported-by: Hao H Huang <hao.h.huang@intel.com>
Signed-off-by: Lingchaox Xin <lingchaox.xin@intel.com>
11 years agoFixed packaging
Ed Bartosh [Tue, 18 Jun 2013 16:51:46 +0000 (19:51 +0300)]
Fixed packaging

Fixed empty binary package
Changed versioning scheme

Change-Id: I01e0083e9c79c6d9784b5ba0197a598a94ee00cd
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
11 years agoPylint for common/imagedata.py
Lingchaox Xin [Wed, 19 Jun 2013 08:43:34 +0000 (16:43 +0800)]
Pylint for common/imagedata.py

Change-Id: I7203dd08ff9454c4f45bffa6d851377b7f38442f

11 years agoPylint for common/mapping.py
Lingchaox Xin [Tue, 18 Jun 2013 09:39:33 +0000 (17:39 +0800)]
Pylint for common/mapping.py

Change-Id: Ibbac7014c7c02daeb4f034a504e1b96587128b1c

11 years agoPylint for common/obspkg.py
Lingchaox Xin [Tue, 18 Jun 2013 06:22:44 +0000 (14:22 +0800)]
Pylint for common/obspkg.py

Use absolute import instead of relative import, replace `cmp` parameter
with `key` since the latter is faster.

Change-Id: I004dff6de87c17935e8bb6ec36a3426b94bdd4d6

11 years agoAdded support of complex data types to BackendDB
Ed Bartosh [Mon, 17 Jun 2013 12:50:53 +0000 (15:50 +0300)]
Added support of complex data types to BackendDB

It's implemented using json. When some key or list item or string is
marked as jsoned BackendDB will try to encode it to json before
storing in Redis and decode it when retriving.

Change-Id: Ifdba0453fa9bbef173cef301e587ded536c98be3
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
11 years agoPylint for job_obsevent_dispatcher.py
Lingchaox Xin [Mon, 17 Jun 2013 06:44:33 +0000 (14:44 +0800)]
Pylint for job_obsevent_dispatcher.py

Use pylint disable-msg=E1101 since sys.setdefaultencoding is special
and gets removed from the namespace.

In dict, `in` is not just pythonic but also in performance than `has_key`, e.g.:

$ python -mtimeit -s'd=dict.fromkeys(range(99))' '12 in d'
10000000 loops, best of 3: 0.0492 usec per loop
$ python -mtimeit -s'd=dict.fromkeys(range(99))' 'd.has_key(12)'
10000000 loops, best of 3: 0.0937 usec per loop

In addition, has_key() is deprecated in favor of key in d:

http://docs.python.org/2/library/stdtypes.html#dict.has_key

Change-Id: Ic8b087d99ff8557c0c7f6a786478c037be03f0cf
Signed-off-by: Lingchaox Xin <lingchaox.xin@intel.com>
11 years agoPylint for common/git.py
Lingchaox Xin [Fri, 14 Jun 2013 03:05:45 +0000 (11:05 +0800)]
Pylint for common/git.py

Change-Id: Ibcafeff673d52193c8a9e66ead89904211a49005

11 years agoPylint for common/utils.py
Lingchaox Xin [Fri, 14 Jun 2013 02:20:10 +0000 (10:20 +0800)]
Pylint for common/utils.py

Replace apply() with the extended call syntax:
function(*args, **keywords).

Fix no RuntimeException found error.

Change-Id: I6dbe96c23e982726d4ac0281cb2075288d5f24b9

11 years agoPylint for common/buildtrigger.py
Lingchaox Xin [Fri, 14 Jun 2013 01:19:05 +0000 (09:19 +0800)]
Pylint for common/buildtrigger.py

Change-Id: I0ae68ca260ad6397e96baca25d4968ea1224ce46

11 years agoPylint for common/buildservice.py and typo fixed
Lingchaox Xin [Fri, 14 Jun 2013 01:09:28 +0000 (09:09 +0800)]
Pylint for common/buildservice.py and typo fixed

Change-Id: I17568aec04f840765ea57146d838fbba2ad9073b

11 years agoRemove unused mysql lib
Lingchaox Xin [Fri, 14 Jun 2013 00:24:40 +0000 (08:24 +0800)]
Remove unused mysql lib

Change-Id: Id88cdb9fe96811142900b03796da23e9f988707d

11 years agoPylint for common/rpmlint.py
Lingchaox Xin [Thu, 13 Jun 2013 07:38:45 +0000 (15:38 +0800)]
Pylint for common/rpmlint.py

Change-Id: Ib69c6c20cc6db5191517e1c49e0e14a854b745e0

11 years agoPylint for common/tempbuildpkg.py
Lingchaox Xin [Thu, 13 Jun 2013 05:41:16 +0000 (13:41 +0800)]
Pylint for common/tempbuildpkg.py

Change-Id: I04695536c813585e54eee1a4b9ad998ddc37f050

11 years agoImplemented get_prerelease_data
Ed Bartosh [Sat, 8 Jun 2013 20:54:31 +0000 (23:54 +0300)]
Implemented get_prerelease_data

Collected all pre-release paths and url making in one place:
application level pre-release API get_prerelease_data. This function
returns all data, required by prerelease applications.

This function can be moved under common/ when there will be more than
one consumers of prerelease data.

Left only read_ and get_ methods in BackendDB as the rest of
functionality is implemented in get_prerelease_data.

Change-Id: I40a311f98d32002cdd10931baa80b75f9b2955de
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
11 years agoPylint for common/send_mail.py
Lingchaox Xin [Sun, 9 Jun 2013 03:17:07 +0000 (11:17 +0800)]
Pylint for common/send_mail.py

The various uppercase names were renamed in Python 2.5. The base email
package's __init__.py does some tricks to make the old names work in
python, but because pylint has its own separate method of doing imports,
those tricks don't work in pylint. So obey pylint.

Change-Id: If03641ae94e7f1da34a2593913f80c2e5bc7034a

11 years agoAdd function to cleanup pre-release repos
Hasan Wan [Thu, 6 Jun 2013 07:09:14 +0000 (15:09 +0800)]
Add function to cleanup pre-release repos

Change-Id: I51f4061baebd32b71574e19b5721a42688ecf36d
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
11 years agofix a typo in job_pre_release_gerrit
Hasan Wan [Thu, 6 Jun 2013 06:18:58 +0000 (14:18 +0800)]
fix a typo in job_pre_release_gerrit

Change-Id: I610bf6bf26f799593d740f3b130c8834a9431799
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
11 years agosync image to SYNC_DEST
Hasan Wan [Thu, 6 Jun 2013 03:48:02 +0000 (11:48 +0800)]
sync image to SYNC_DEST

Change-Id: Iab1ae95b46b005e26da52b4089c9b7b9aa35495c
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
11 years agoconvert port number to int
Hasan Wan [Wed, 5 Jun 2013 03:02:28 +0000 (11:02 +0800)]
convert port number to int

Change-Id: I6a3419ae6528603fe734b2bbcd06fa67e8a10850
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
11 years agocheck the repo status before start create repo
Hasan Wan [Fri, 31 May 2013 09:06:51 +0000 (17:06 +0800)]
check the repo status before start create repo

Change-Id: Iffe047b3d5a3bed7fe100c941128549dec5bcc9f
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
11 years agoremove the old package if exists, remove the debug message
Hasan Wan [Fri, 31 May 2013 08:44:50 +0000 (16:44 +0800)]
remove the old package if exists, remove the debug message

Change-Id: If18611e8398ec105c63d2f2cf993bb5f290ac2ba
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
11 years agofix some errors when working with backenddb
Hasan Wan [Thu, 30 May 2013 05:36:16 +0000 (13:36 +0800)]
fix some errors when working with backenddb

Change-Id: I0aaa891bde3c6151a7e9e81212054d5f5b7adba3
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
11 years agojob_pre_release_obs: code cleanup
Ed Bartosh [Mon, 3 Jun 2013 13:44:02 +0000 (16:44 +0300)]
job_pre_release_obs: code cleanup

cleaned up and restructured the code of job_pre_release_obs

Change-Id: Icd8e087505850942d8d58fe5ca6cafdf52576087
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
11 years agoCleaned up trigger_image_creation function
Ed Bartosh [Mon, 3 Jun 2013 12:07:12 +0000 (15:07 +0300)]
Cleaned up trigger_image_creation function

Change-Id: I59503aaba7612902c60f8a585248218c29821783
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
11 years agoRemoved testprojects/
Ed Bartosh [Mon, 3 Jun 2013 11:18:08 +0000 (14:18 +0300)]
Removed testprojects/

The only thing which is used from testprojects/ was
get_prerelease_project_name function. Moved it to
job_pre_release_gerrit as it was used only there. If it will be used
somewhere else we can move it to common/

Change-Id: I4c1cb26b56e8bb369f8bd6f57004a06ab693c17f
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
11 years agoCode cleanup
Ed Bartosh [Mon, 3 Jun 2013 11:01:23 +0000 (14:01 +0300)]
Code cleanup

Fixed unused imports, using .keys() method for dict and other small code
style issues.

Change-Id: I9c66e60ddd3f879f51f8991c345e2a006b3b7360
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
11 years agoFix unittests' errors
Lingchaox Xin [Thu, 30 May 2013 03:19:09 +0000 (11:19 +0800)]
Fix unittests' errors

Change-Id: Id18a6f378575ca9a2434a98c716de2457c92719a

11 years agoFix tag exsisting check logic
Lingchaox Xin [Wed, 29 May 2013 02:40:55 +0000 (10:40 +0800)]
Fix tag exsisting check logic

We maybe need rev_parse method to ensure tag exsisting indeed,
rather than simple str split.

Change-Id: I672fc38b8d839d0fe54890fb7e339b1564585a32

11 years agoFix spec file logic
Lingchaox Xin [Tue, 28 May 2013 03:23:56 +0000 (11:23 +0800)]
Fix spec file logic

We must ensure /etc/sysconfig/jenkins existing, then come next;
And also update it from obs.

Change-Id: Ibb7757fbdf61f5a4860208fb1a7646b07b6bb780

11 years agoAdd interface to query prerelease related info
Lin Yang [Wed, 29 May 2013 09:50:59 +0000 (17:50 +0800)]
Add interface to query prerelease related info

1. Support List and String type in redis, besides Dict, to support more type
   backend info
2. Add interface get_project_data to query prerelease info

Change-Id: I6718930435353e7fe4ff110e2cb65100544a98e4
Signed-off-by: Lin Yang <lin.a.yang@intel.com>
11 years agouse target project to get backend data
Hasan Wan [Wed, 29 May 2013 09:05:29 +0000 (17:05 +0800)]
use target project to get backend data

Change-Id: Icb823f6f8389c95eb1b1cd5750d19c4409f9ae39
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
11 years agouse dict to store ks info, save updated ks file to builddata dir
Hasan Wan [Wed, 29 May 2013 08:49:45 +0000 (16:49 +0800)]
use dict to store ks info, save updated ks file to builddata dir

Change-Id: I14f242fd791ce02ce6e3703fd28c7e9553a7ebf8
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
11 years agoremove image conf operations
Hasan Wan [Wed, 29 May 2013 06:47:44 +0000 (14:47 +0800)]
remove image conf operations

Change-Id: I4cac0a138cdd3d9b595fb66524edbdf44fdc0135
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
11 years agoMove all image conf operations into imagedata class,
Hasan Wan [Wed, 29 May 2013 06:43:02 +0000 (14:43 +0800)]
Move all image conf operations into imagedata class,
repomaker use imagedata class to handle image conf

Change-Id: I8d2d57c3e8d5029cb645057cffd7ff0134feff47
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
11 years agotrigger imager jobs after repo created
Hasan Wan [Wed, 29 May 2013 02:27:36 +0000 (10:27 +0800)]
trigger imager jobs after repo created

Change-Id: I0ffced291ba57a20b064abfc4d2ba03a1779314f
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
11 years agofix adding group/pattern files to repo
Zhang Qiang [Wed, 29 May 2013 05:20:09 +0000 (13:20 +0800)]
fix adding group/pattern files to repo

Change-Id: I047b6d68e851dde94b63168b9f749e9d5093b42b

11 years agomake pre-release repo-maker works on slave
Hasan Wan [Mon, 27 May 2013 08:55:06 +0000 (16:55 +0800)]
make pre-release repo-maker works on slave

Change-Id: I39d2b1904ed64460fc89ff8e3a12cbe86eb9dc6a
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
11 years agofix errors about class importing and file opening
Hasan Wan [Mon, 27 May 2013 08:29:01 +0000 (16:29 +0800)]
fix errors about class importing and file opening

Change-Id: I085820d9f9c0e04b501769907c943fe999e0a503
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
11 years agoskip the buildconf section if not present
Hasan Wan [Mon, 27 May 2013 07:39:00 +0000 (15:39 +0800)]
skip the buildconf section if not present

Change-Id: I5cd4803dbf1f0d6ca68183feeebe849857b417f4
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
11 years agofix an error when find files
Hasan Wan [Mon, 27 May 2013 06:37:30 +0000 (14:37 +0800)]
fix an error when find files

Change-Id: If5ea13ff2b6c1303fb6925c55c4681c4f125b689
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
11 years agofix import error and function name mistakes
Hasan Wan [Mon, 27 May 2013 03:16:59 +0000 (11:16 +0800)]
fix import error and function name mistakes

Change-Id: Ib202849860fe5e93f85e1ad841c24df465312931
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
11 years agofix event_type key error
Hasan Wan [Mon, 27 May 2013 03:01:24 +0000 (11:01 +0800)]
fix event_type key error

Change-Id: Iabc65296d56b3c7803c1129b8896c2a56217e131
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
11 years agoFix rpmlint checker bug when rpmlint config not exists
Lingchaox Xin [Fri, 24 May 2013 03:20:39 +0000 (11:20 +0800)]
Fix rpmlint checker bug when rpmlint config not exists

We have added git-obs-mapping project judgement to ensure it existing
indeed, so give an equal treatment to rpmlint-config project in Gerrit.

Change-Id: I70ed0314651bcd1d327279e915a2b578ecb11ecc

11 years agoImplemented ImageData API
Ed Bartosh [Mon, 20 May 2013 17:48:35 +0000 (20:48 +0300)]
Implemented ImageData API

This API is responcible for generating and parsing images.xml

Change-Id: Id0e36d6371f173b7cdaf862bc120db886d42e830
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
11 years agodraft implementation of BackendDB API
Ed Bartosh [Sat, 18 May 2013 21:07:50 +0000 (00:07 +0300)]
draft implementation of BackendDB API

This is generic API, which allows to store repository data in Redis.
API utilizes Redis hashes:
    'repo:<name>' hash contains attributes of the repository and their values

It's also an attempt to build generic API to store any type of data in Redis.
The ideas is that any type of data can be stored in Redis as set of
<type>:<subtype1>:<subtype2>... records, which point to data in Redis
hash format.

For example:
  Git->OBS mappings can be stored as set of keys with this format:
  gitobs-map:<project>:<branch>
  and hashes of this format: {"OBS_project": "home:user:project",
                              "OBS_staging_project": "home:user:staging"}

Format of hashes is not strict, so it can be extended whenever
needed.

Format of keys is stricter, but also flexible in a sense that
it's easy to change it or even increase amount of levels(depth) of it.

Change-Id: I2eb5d92d0ff6f5536a230068783a6507dfd6134d
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
11 years agoDraft of refactored create_images
Ed Bartosh [Wed, 15 May 2013 17:31:40 +0000 (20:31 +0300)]
Draft of refactored create_images

I'm sending it for review just to show the approach. This code is not
ready for merging yet.

Change-Id: Ibda3f0ac3e95901ea4a972b891860ad3f6cc1b22

11 years agoUsed RepoMaker and BackendDb APIs
Ed Bartosh [Wed, 8 May 2013 15:36:44 +0000 (18:36 +0300)]
Used RepoMaker and BackendDb APIs

Change-Id: Ib81b887c7607149104d2bc5a0bc915cc4af34413
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
11 years agoFix clone_gitproject invocation in job_policycheck.py
Lingchaox Xin [Thu, 23 May 2013 08:57:25 +0000 (16:57 +0800)]
Fix clone_gitproject invocation in job_policycheck.py

Since we try to clone git project for 3 times in clone_gitproject method,
no need using retry method here.

Change-Id: I07d0c72440e260d3f0e425805f06bcce13c3f545

11 years agocreate temp configuration file when runs on slave
Hasan Wan [Mon, 20 May 2013 06:15:44 +0000 (14:15 +0800)]
create temp configuration file when runs on slave

Change-Id: Ie22e6cf6b9f74f5834afdd006509b9f0e1809907

11 years agoimplement the sync api
Hasan Wan [Thu, 16 May 2013 09:25:40 +0000 (17:25 +0800)]
implement the sync api

Change-Id: I237184d6ffd48ab0a07279eb372500e580f4bf1d
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
11 years agoFix function arguments typo and gerrit msg push
Lingchaox Xin [Tue, 14 May 2013 01:40:26 +0000 (09:40 +0800)]
Fix function arguments typo and gerrit msg push

Change-Id: I7ad37f19615ba53f8c0f8f59a33fbc6e27360ac2

11 years agoFinished implementation of builddata API
Ed Bartosh [Wed, 15 May 2013 11:57:50 +0000 (14:57 +0300)]
Finished implementation of builddata API

Updated the code and tests to handle this format of build target:
    <buildtarget name="atom">
      <buildconf>
        <location href="3bd64bd5fa862d99dbc363ccb1557d137b5685bc3bfe9a86bcbf50767da5e2e8-build.conf"/>
        <checksum type="sh256">3bd64bd5fa862d99dbc363ccb1557d137b5685bc3bfe9a86bcbf50767da5e2e8</checksum>
      </buildconf>
      <repo arch="i586" type="binary">repos/atom/i586/packages</repo>
      <repo arch="i586" type="binary">repos/atom/i586/debug</repo>
      <repo arch="x86_64" type="binary">repos/atom/x86_64/packages</repo>
      <repo arch="x86_64" type="binary">repos/atom/x86_64/debug</repo>
      <repo type="source">repos/atom/sources</repo>
    </buildtarget>

Change-Id: Ie300bff66699eb402af4b0ca7eaddc37a238c136

11 years agoImplemented repomaker API
Ed Bartosh [Mon, 13 May 2013 11:38:03 +0000 (14:38 +0300)]
Implemented repomaker API

This API takes care of generating rpm repos in appropriate directory
structure. It also generates build.xml and images.xml

Change-Id: Ib2b31ea0173581d8a0d150ec12474d8b68548967
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
11 years agoImplemented BuildData API
Ed Bartosh [Mon, 13 May 2013 11:30:21 +0000 (14:30 +0300)]
Implemented BuildData API

This API is responcible for generating and parsing build.xml

Change-Id: If580443977f20fd2266ebbd64e027c59d1aa63fd
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
11 years agoAdded dependency to python-yaml
Ed Bartosh [Mon, 13 May 2013 12:29:40 +0000 (15:29 +0300)]
Added dependency to python-yaml

As repomaker/__init__.py imports yaml package should depend on
python-yaml.

Change-Id: I80eefb1f4a7fcb33718c4a095d3f0e7f638cb823
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
11 years agoget project name from OBS event content, fix an import error
Hasan Wan [Wed, 8 May 2013 02:36:17 +0000 (10:36 +0800)]
get project name from OBS event content, fix an import error

Change-Id: I50edefde3dae06b10d66279a2b8d53dd6672407b
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
11 years agoAdd job_local_cache_cleanups.py to make local cache cleanups
Lingchao Xin [Sat, 27 Apr 2013 07:41:46 +0000 (15:41 +0800)]
Add job_local_cache_cleanups.py to make local cache cleanups

Thanks for Ed's a lot of helpful advice, such as:
directory walking, env judgement and so on.

Change-Id: I39f69eb64ae774e4182e9779514eb4449dbee6b2

11 years agoReimplemented generation of build.xml release-0.12 0.12
Ed Bartosh [Fri, 26 Apr 2013 16:17:58 +0000 (19:17 +0300)]
Reimplemented generation of build.xml

Refactored and reimplemented generation of build.xml according to new
download structure.

Change-Id: Iff7c246200ca412294ed129eab7f9728ae2f3cf4

11 years agoAdd args parameter to be flexible when list needed projects
Lingchao Xin [Sat, 27 Apr 2013 02:46:40 +0000 (10:46 +0800)]
Add args parameter to be flexible when list needed projects

Such as, I want to just list CODE type's projects,
so use `ls-projects --type CODE`, thanks Yang Lin's reminder.

Change-Id: Ifdd05598e9be1285cc3f8091944ed1df343f94c7

11 years agoFix exception of deleting a non-exist directory
Lin Yang [Sun, 28 Apr 2013 02:30:23 +0000 (10:30 +0800)]
Fix exception of deleting a non-exist directory

Change-Id: I488160a87576923212da67ff6214d05f416e0bd7
Signed-off-by: Lin Yang <lin.a.yang@intel.com>
11 years agoMoved cleanup to BuildService.
Ed Bartosh [Fri, 26 Apr 2013 13:32:31 +0000 (16:32 +0300)]
Moved cleanup to BuildService.

As cleanup is used by job_pre_release_gerrit and job_pre_release_obs
it's better to move it to common API. BuildService is a good candidate
for this API.

Change-Id: I1e5c7a7e7612ade64b8249fc7143b72c7f61f57e

11 years agoReturned back right info structure
Ed Bartosh [Wed, 17 Apr 2013 14:55:06 +0000 (17:55 +0300)]
Returned back right info structure

Structure of info structure in job_pre_release_gerrit was changed on
some rebase or merge. Returning it back to the right one.

Change-Id: I424c1aa5ac833c7f1b2d838227b56dc1591cb2e8
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
11 years agoReturn proper exit code from job_pre_release_gerrit
Ed Bartosh [Thu, 11 Apr 2013 07:52:53 +0000 (10:52 +0300)]
Return proper exit code from job_pre_release_gerrit

Change-Id: I100ff0c55cba4b908f6c091aed539816cf7bde57
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
11 years agoRemoved delete_project from obsservice
Ed Bartosh [Mon, 15 Apr 2013 11:43:54 +0000 (14:43 +0300)]
Removed delete_project from obsservice

Method delete_project is duplicate in obsservice as it's present in oscapi.

Change-Id: I7ab8c2f1632f5480ddc1b7c033ddc2006224a400
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
11 years agoImplemented use of gbs source service
Ed Bartosh [Thu, 11 Apr 2013 07:45:09 +0000 (10:45 +0300)]
Implemented use of gbs source service

This change replaces direct run of gbs with using gbs service. It means
that all heavy work will be done on the server. It makes this job run
much faster and simplifies the job. Instead of downloading sources,
dealing with git cache, uploading tarballs and other pieces of packaging
on the worker side job just uploads small service file to the OBS.

For this approach to work gbs service package should be installed on OBS
server.

Fixes: #817

Change-Id: I53a22ec24d60a3219a926f2b8963e0b21be4af09
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
11 years agoA new job to receive the event from OBS notify_jenkins plugin
Hasan Wan [Thu, 11 Apr 2013 05:54:53 +0000 (13:54 +0800)]
A new job to receive the event from OBS notify_jenkins plugin

Change-Id: I1a81ad6c53159632111b96c84ab42cd386bd6824
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
11 years agoRemove envparas reference
Lingchaox Xin [Thu, 11 Apr 2013 06:38:25 +0000 (14:38 +0800)]
Remove envparas reference

And drop boss-reports.py, job_aiaiaicheck.py, they will not be
used in the future.

Change-Id: Ic71b2b96f68025b5b7abc719311c2d415b439cfa

11 years agoPylinted for common/utils.py
Lingchaox Xin [Thu, 11 Apr 2013 06:08:47 +0000 (14:08 +0800)]
Pylinted for common/utils.py

Change-Id: I519780acbe77d80566c0adc0de87ab9a7b7adcd5

11 years agoRefactor job_policycheck.py with clear logic
Lingchaox Xin [Sun, 7 Apr 2013 08:17:17 +0000 (16:17 +0800)]
Refactor job_policycheck.py with clear logic

Also split main func to small ones

Change-Id: I8efff3370a2b27a6c0b4697e45f9bc75bdd2f302

11 years agoFix job_buildcheck_post.py docstring typo
Lingchaox Xin [Tue, 9 Apr 2013 02:19:04 +0000 (10:19 +0800)]
Fix job_buildcheck_post.py docstring typo

Change-Id: Ic9ac4e157b6d3b4f4e6d9deb91cd4a8a5075363f

11 years agoCleanups for job_request.py
Lingchaox Xin [Mon, 8 Apr 2013 09:02:05 +0000 (17:02 +0800)]
Cleanups for job_request.py

Change-Id: Ibe0fc71237b7fab75a03d0ec85d7dc59fa6901f5

11 years agoImplemented fetching mappings from multiple Gerrits
Ed Bartosh [Wed, 3 Apr 2013 16:20:04 +0000 (19:20 +0300)]
Implemented fetching mappings from multiple Gerrits

git_obs_map function now iterates through the list of
semicolon-separated list of git urls, provided in environment variable
MAPPING_PROJECTS and fetches mapping xml files from them until mapping
is found.

Fixes: #854

Change-Id: Iafd0d98b381dbad0e441a615dbc82dc8a028c415
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
11 years agoGet rid of using 2 local APIs
Ed Bartosh [Fri, 5 Apr 2013 16:30:29 +0000 (19:30 +0300)]
Get rid of using 2 local APIs

Stop using ProjectBuildService and PreRelease APIs. Use only
buildservice and gbs APIs behind it.

Put jsoned info dictionary into project description. Dictionary should
be updated every time new package comes to the same pre-release project.

Change-Id: I54052982c25d3da019094825a1b11ffc65eaeb8f
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
11 years agoIntroduced new parameter giturl to clone_gitproject
Ed Bartosh [Wed, 3 Apr 2013 15:44:08 +0000 (18:44 +0300)]
Introduced new parameter giturl to clone_gitproject

Current implementation of clone_gitproject getting gerrit url from
environment variables, which is not always good. New parameter giturl
allows to get rid of this limitation.

This approach is used in job_pre_release_gerrit to clone mappings from
multiple gerrits.

Change-Id: Ie1e9ec2f49e83e07cecac0623834c88082dcdb3f
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
11 years agoUsed GERRIT_PROJECT instead of GIT_PROJECT
Ed Bartosh [Wed, 3 Apr 2013 09:02:26 +0000 (12:02 +0300)]
Used GERRIT_PROJECT instead of GIT_PROJECT

Environment variable GIT_PROJECT is not set by Gerrit Trigger plugin.
Let's use GERRIT_PROJECT instead.

Change-Id: Iff76c49c008c557a8cb9f3e2b444e9b0f6613724
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
11 years agojob_pre_release_gerrit: Used local error exception
Ed Bartosh [Thu, 4 Apr 2013 10:54:50 +0000 (13:54 +0300)]
job_pre_release_gerrit: Used local error exception

It's better to raise an local exception instead of returnning error
codes and analyzing them.

Change-Id: I8b9d5ca93a90b7b82689d36a433783eee972ee55
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
11 years agoFix events' str typo
Lingchaox Xin [Wed, 27 Mar 2013 03:36:32 +0000 (11:36 +0800)]
Fix events' str typo

Change-Id: I6434620ac4a2202aae653415cf62d5e00cb2809e

11 years agoremove source package when sr close
Lin Yang [Fri, 22 Mar 2013 12:41:00 +0000 (20:41 +0800)]
remove source package when sr close

Change-Id: I6b254c58d3aeb64a55af0da4625e124923c70d51
Signed-off-by: Lin Yang <lin.a.yang@intel.com>
11 years agofix git push failure
Lin Yang [Fri, 22 Mar 2013 12:36:19 +0000 (20:36 +0800)]
fix git push failure

Current gbp only accept parameter without space, so split args to two parts.

Change-Id: I7c25e18fa795099da14b4586fd51db43f3be8ded
Signed-off-by: Lin Yang <lin.a.yang@intel.com>
11 years agocatch GitRepositoryError after move to gbp
Lin Yang [Fri, 22 Mar 2013 12:31:47 +0000 (20:31 +0800)]
catch GitRepositoryError after move to gbp

Change-Id: Ib19a7c349c2092c6aefb81798aa1fdc5106e0687
Signed-off-by: Lin Yang <lin.a.yang@intel.com>
11 years agoconvert unicode parameters in obs event to str
Lin Yang [Wed, 27 Mar 2013 03:49:29 +0000 (11:49 +0800)]
convert unicode parameters in obs event to str

Because json.loads will return unicode object by default, it will cause
1. print non-ascii char in obs event will cause exception
2. some functions osc core cannot support unicode parameters,
   like delete_project, delete_package
so convert all variables in obs event to str.

Change-Id: I5bf12b37c40931c01da71ef69770442a06e74ff9
Signed-off-by: Lin Yang <lin.a.yang@intel.com>
11 years agorefactored submitobs script
Lin Yang [Thu, 21 Mar 2013 09:05:24 +0000 (17:05 +0800)]
refactored submitobs script

1. seperate main function into several small functions
2. pylint check
3. get rid of global parameters

Change-Id: Iaa20dbb32c87b443b8b979e2a13c626a1220a008
Signed-off-by: Lin Yang <lin.a.yang@intel.com>
11 years agoPylinted for job_update_local_git.py
Lingchaox Xin [Wed, 20 Mar 2013 06:31:13 +0000 (14:31 +0800)]
Pylinted for job_update_local_git.py

Change-Id: I520f00cce5415209e543ad8c413e268f8d32384d

11 years agoPylinted for job_mail_sender.py
Lingchaox Xin [Wed, 20 Mar 2013 06:25:47 +0000 (14:25 +0800)]
Pylinted for job_mail_sender.py

Change-Id: Iee5108416a5e02d6bfb493548cc4eaa4d1615aac

11 years agoPylinted for job_policycheck.py and git-obs-mapping cloning bug fixed
Lingchaox Xin [Tue, 19 Mar 2013 05:14:28 +0000 (13:14 +0800)]
Pylinted for job_policycheck.py and git-obs-mapping cloning bug fixed

Change-Id: Ia7791f199acd7937197f3d2c6762818ad8ef5b68

11 years agoAdjust job_deletetag.py for cdbc28c
Lingchaox Xin [Wed, 20 Mar 2013 06:47:46 +0000 (14:47 +0800)]
Adjust job_deletetag.py for cdbc28c

Change-Id: I6ba95d34804ee61bbdbb66f7401ffcc5cee2f2e3

11 years agoimport gerrit event from evnironment variable
Lin Yang [Mon, 18 Mar 2013 06:08:38 +0000 (14:08 +0800)]
import gerrit event from evnironment variable

Change-Id: I96ce83ade58de8fb1ca2ad5f3930df49cd42a96c
Signed-off-by: Lin Yang <lin.a.yang@intel.com>
11 years agoMerge "Pylinted for job_buildcheck_post.py and refactoring" into devel
Lin A Yang [Mon, 18 Mar 2013 08:55:58 +0000 (01:55 -0700)]
Merge "Pylinted for job_buildcheck_post.py and refactoring" into devel

11 years agoMerge "Pylinted for common/buildservice.py" into devel
Lin A Yang [Mon, 18 Mar 2013 08:55:49 +0000 (01:55 -0700)]
Merge "Pylinted for common/buildservice.py" into devel

11 years agoKill extra lines in tag['message'] when get taginfo
Lingchaox Xin [Mon, 18 Mar 2013 07:20:11 +0000 (15:20 +0800)]
Kill extra lines in tag['message'] when get taginfo

For example:

    GIT_AUTHOR_EMAIL='Lingcha X <lingchaox.xin@intel.com>'
    bccs='['']'
    OBS_REQ_PERSON='None'
    commitid='35bc1b774379966547bce204a7c9f0c34854f0ae'
    OBS_REQ_OLDSTATE='new'
    descriptions='[]'
    GIT_COMMENTS='Test for devel_rebase'
    GIT_PROJECT='test/test'
    message='

    Test for devel_rebase

    '
    GIT_TAG='submit/trunk/20130228.085818'

Change-Id: Icfde40c6ac01734ef813d7d2808187b5d0a31078

11 years agoPylinted for job_buildcheck_post.py and refactoring
Lingchaox Xin [Mon, 18 Mar 2013 06:54:29 +0000 (14:54 +0800)]
Pylinted for job_buildcheck_post.py and refactoring

Change-Id: I497638a5dd39e9b4724d87357b5b548087f252cb

11 years agoPylinted for common/buildservice.py
Lingchaox Xin [Fri, 15 Mar 2013 07:17:57 +0000 (15:17 +0800)]
Pylinted for common/buildservice.py

Change-Id: Iaa0485ead8b141699436ab0ae0f3a7f997b273f2

11 years agoMerge "Splitted job_pre_release" into devel
Hasan Wan [Fri, 15 Mar 2013 02:31:26 +0000 (19:31 -0700)]
Merge "Splitted job_pre_release" into devel

11 years agoMerge "Changed the way pre-release job is triggered" into devel
Hasan Wan [Fri, 15 Mar 2013 02:31:13 +0000 (19:31 -0700)]
Merge "Changed the way pre-release job is triggered" into devel