Ed Bartosh [Thu, 27 Jun 2013 13:22:08 +0000 (16:22 +0300)]
Implemented BackendDB/get_obs_repo_map API
This API should be used to map OBS project to 'repo' value used in .ks
file for the repository from this OBS project.
Change-Id: I9047e31a9ab604a8d3f504077817c2c9618e1d7d
Lingchaox Xin [Thu, 27 Jun 2013 01:42:01 +0000 (09:42 +0800)]
Spec clean with spec-cleaner
Maybe we should execute it when we change specfile each time to keep
a consistent style.
Change-Id: I28fb0b6a85f89ef95609c78a5a3d654428b54b83
Lingchaox Xin [Thu, 27 Jun 2013 01:26:53 +0000 (09:26 +0800)]
Add python-Cheetah dependence
This patch should fix `unable to import Cheetah.Template` in
requests/mailer.py.
Change-Id: I72dd92be5203772d64753e276b19f0927b2c475c
Zhang Qiang [Fri, 31 May 2013 08:53:34 +0000 (16:53 +0800)]
clean up group/patterns/buildconf files in repodata
Change-Id: I49223221b477510a8d43386248df662eaaa6e71c
Zhang Qiang [Fri, 31 May 2013 08:45:52 +0000 (16:45 +0800)]
put build conf file under repodata directory
Change-Id: I77444c09559eb244e200db5f74bd53e132df1580
Hasan Wan [Wed, 26 Jun 2013 03:23:18 +0000 (11:23 +0800)]
cleanup should be called when SR end-of-life
Change-Id: Ibbc123ee5c71513d07a6fbf62e0f108d751305fa
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
Hasan Wan [Wed, 26 Jun 2013 03:02:53 +0000 (11:02 +0800)]
adapted to new trigger method
Change-Id: Iaed4a53cf6896f956b326dc47580c5ac7e63603f
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
Lin Yang [Wed, 26 Jun 2013 07:27:27 +0000 (15:27 +0800)]
modify to fit obs event keyword change
Change-Id: I0ea579bb83271c5f5ce99619ea0c5223ca6b4625
Signed-off-by: Lin Yang <lin.a.yang@intel.com>
Lingchaox Xin [Wed, 26 Jun 2013 03:07:48 +0000 (11:07 +0800)]
Remove common/errors.py, no need to keep it
Change-Id: Id0a8f8e8f6acd70625c15d4b88210a3b8c64cae6
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>
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>
Lingchaox Xin [Thu, 20 Jun 2013 07:32:06 +0000 (15:32 +0800)]
Pylint for common/gerrit.py
Change-Id: I756344890766eafbbebe382f78a28f6418600471
Lingchaox Xin [Thu, 20 Jun 2013 02:55:25 +0000 (10:55 +0800)]
Pylint for common/runner.py and cleanups
Change-Id: I384d50dc13c07f129e1e8f30bbd4691c671e7f1e
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
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>
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>
Lingchaox Xin [Wed, 19 Jun 2013 08:43:34 +0000 (16:43 +0800)]
Pylint for common/imagedata.py
Change-Id: I7203dd08ff9454c4f45bffa6d851377b7f38442f
Lingchaox Xin [Tue, 18 Jun 2013 09:39:33 +0000 (17:39 +0800)]
Pylint for common/mapping.py
Change-Id: Ibbac7014c7c02daeb4f034a504e1b96587128b1c
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
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>
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>
Lingchaox Xin [Fri, 14 Jun 2013 03:05:45 +0000 (11:05 +0800)]
Pylint for common/git.py
Change-Id: Ibcafeff673d52193c8a9e66ead89904211a49005
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
Lingchaox Xin [Fri, 14 Jun 2013 01:19:05 +0000 (09:19 +0800)]
Pylint for common/buildtrigger.py
Change-Id: I0ae68ca260ad6397e96baca25d4968ea1224ce46
Lingchaox Xin [Fri, 14 Jun 2013 01:09:28 +0000 (09:09 +0800)]
Pylint for common/buildservice.py and typo fixed
Change-Id: I17568aec04f840765ea57146d838fbba2ad9073b
Lingchaox Xin [Fri, 14 Jun 2013 00:24:40 +0000 (08:24 +0800)]
Remove unused mysql lib
Change-Id: Id88cdb9fe96811142900b03796da23e9f988707d
Lingchaox Xin [Thu, 13 Jun 2013 07:38:45 +0000 (15:38 +0800)]
Pylint for common/rpmlint.py
Change-Id: Ib69c6c20cc6db5191517e1c49e0e14a854b745e0
Lingchaox Xin [Thu, 13 Jun 2013 05:41:16 +0000 (13:41 +0800)]
Pylint for common/tempbuildpkg.py
Change-Id: I04695536c813585e54eee1a4b9ad998ddc37f050
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>
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
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
Lingchaox Xin [Thu, 30 May 2013 03:19:09 +0000 (11:19 +0800)]
Fix unittests' errors
Change-Id: Id18a6f378575ca9a2434a98c716de2457c92719a
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
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
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>
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>
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>
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>
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>
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>
Zhang Qiang [Wed, 29 May 2013 05:20:09 +0000 (13:20 +0800)]
fix adding group/pattern files to repo
Change-Id: I047b6d68e851dde94b63168b9f749e9d5093b42b
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>
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>
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>
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>
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>
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>
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
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>
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>
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
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>
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
Hasan Wan [Mon, 20 May 2013 06:15:44 +0000 (14:15 +0800)]
create temp configuration file when runs on slave
Change-Id: Ie22e6cf6b9f74f5834afdd006509b9f0e1809907
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>
Lingchaox Xin [Tue, 14 May 2013 01:40:26 +0000 (09:40 +0800)]
Fix function arguments typo and gerrit msg push
Change-Id: I7ad37f19615ba53f8c0f8f59a33fbc6e27360ac2
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
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>
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>
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>
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>
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
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
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
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>
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
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>
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>
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>
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>
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>
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
Lingchaox Xin [Thu, 11 Apr 2013 06:08:47 +0000 (14:08 +0800)]
Pylinted for common/utils.py
Change-Id: I519780acbe77d80566c0adc0de87ab9a7b7adcd5
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
Lingchaox Xin [Tue, 9 Apr 2013 02:19:04 +0000 (10:19 +0800)]
Fix job_buildcheck_post.py docstring typo
Change-Id: Ic9ac4e157b6d3b4f4e6d9deb91cd4a8a5075363f
Lingchaox Xin [Mon, 8 Apr 2013 09:02:05 +0000 (17:02 +0800)]
Cleanups for job_request.py
Change-Id: Ibe0fc71237b7fab75a03d0ec85d7dc59fa6901f5
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>
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>
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>
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>
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>
Lingchaox Xin [Wed, 27 Mar 2013 03:36:32 +0000 (11:36 +0800)]
Fix events' str typo
Change-Id: I6434620ac4a2202aae653415cf62d5e00cb2809e
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>
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>
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>
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>
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>
Lingchaox Xin [Wed, 20 Mar 2013 06:31:13 +0000 (14:31 +0800)]
Pylinted for job_update_local_git.py
Change-Id: I520f00cce5415209e543ad8c413e268f8d32384d
Lingchaox Xin [Wed, 20 Mar 2013 06:25:47 +0000 (14:25 +0800)]
Pylinted for job_mail_sender.py
Change-Id: Iee5108416a5e02d6bfb493548cc4eaa4d1615aac
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