1
0
mirror of https://github.com/openSUSE/osc.git synced 2024-12-29 11:16:14 +01:00
Commit Graph

2469 Commits

Author SHA1 Message Date
f20b26007e - fix another place of group handling for set_bugowner 2014-05-09 10:31:17 +02:00
Marcus Huewe
38fbe8fb11 - do_maintainer: introduced setBugownerHelper method
Do not swallow urllib2.HTTPError exceptions with code != 403
2014-05-08 16:07:42 +02:00
Marcus Huewe
87fc39fee4 - do_maintainer: do not set bugowner/create bugowner request action twice 2014-05-08 15:41:15 +02:00
Marcus Huewe
47af622031 - do_maintainer: fixed typo (that cause a TypeError) 2014-05-08 15:26:29 +02:00
Marcus Huewe
474dcf6843 - handle ImportError of a plugin more gracefully
See bnc#876538 for the details.
2014-05-06 18:51:12 +02:00
Michael Schroeder
5a65b06927 support installonly/noinstall tags for mock buildengine 2014-04-30 16:26:03 +02:00
Marcus Huewe
5e22cd3f4f - do_submitrequest: use continue to start next loop iteration (instead of "next"...) 2014-04-28 15:09:29 +02:00
Marcus Huewe
c398cb344a - fixed testsuite (and indention)
Broken by commit 0e3641610e
2014-04-16 15:56:59 +02:00
0e3641610e support maintenance release request with acceptinfo data (OBS 2.6) 2014-04-16 15:47:58 +02:00
Marcus Huewe
d6e6c0538e - get "osc build --prefer-pkgs ..." working with Arch 2014-04-03 17:41:41 +02:00
Marcus Huewe
0b7e49b648 - open 0.146 development 2014-04-03 09:32:21 +02:00
Marcus Huewe
2170abb612 - prepare 0.145.0 release 2014-04-03 09:31:51 +02:00
Andreas Schwab
9ab3c5becc print_buildlog: don't strip tabs 2014-03-15 22:27:33 +01:00
Marcus Huewe
d243241b1c - added support for "osc requestmaintainership PROJECT" (if cwd is no package wc) 2014-03-12 16:41:46 +01:00
Marcus Huewe
c66a75018e - do_submitrequest: consider the "--yes" option if the wc has local modifications 2014-03-12 10:50:46 +01:00
Marcus Huewe
8c506e5929 - fixed "osc -H ..." in combination with a proxy 2014-03-11 19:40:27 +01:00
Marcus Huewe
9034b27814 - fixed creation of ~/.osc_cookiejar
A "PyCFunction_Type" like os.open takes no keyword arguments.
2014-03-10 22:36:56 +01:00
Marcus Huewe
720c685868 - core.Package.commit: make sure a _meta is created for newly added packages
Fixed typo (introduced in commit 6469efb9ed).
2014-03-06 10:25:30 +01:00
Marcus Huewe
6469efb9ed - core.get_local_origin_project: added check for None 2014-03-06 09:56:13 +01:00
714de8519c - support release --set-release option 2014-03-05 16:03:23 +01:00
46b8f2613f - fix --no-checks description 2014-03-04 09:12:26 +01:00
Marcus Huewe
8b058b3a47 - do_setlinkrev, set_link_rev: fixed #72
Also refactored set_link_rev code a bit so that the new _set_link_rev
function could be used by link_pac in the future.
2014-03-03 22:44:30 +01:00
1dc8109ef8 Fix missing unquote in meta pkg check
Fixes issue #77
2014-02-28 00:42:47 +01:00
Ludwig Nussel
f065dc4765 show source revision in submit requests 2014-02-27 16:46:49 +01:00
Scott Bahling
a33c40eb53 Fix handling of meta command within local working directory
* Fix osc ignoring -A apiurl command option when arguments are
  less than 2 and executed within local working copy

* Enhance handling of meta command within local working copy.
  - meta prj: Try to use project and apiurl of local working copy
    if no arguments are passed
  - meta pkg: Try to use project and apiurl of local working copy
    if one argument is passed (single argument assumed to be package
    name), and try to use project, package and apiurl if no
    arguments are passed
2014-02-27 16:45:44 +01:00
c4f0397b0f Takes care when the commit is in project level 2014-02-27 16:45:44 +01:00
014551e786 Move the user interaction for linked package into commandline.py 2014-02-27 16:45:44 +01:00
fdd58e23c8 - roll 0.144.0 release 2014-02-27 10:42:03 +01:00
Ludwig Nussel
955c46495b replace sys.exit(0) to avoid backtrace 2014-02-27 08:39:54 +01:00
Marcus Huewe
d92098a864 - Package.commit: fixed spelling error and added FIXME comment 2014-02-25 14:09:04 +01:00
Marcus Huewe
d8e0b82b10 - fixed core.edit_meta
The change introduced in commit a20c6f5d99
broke the creation of new packages.
2014-02-25 14:06:20 +01:00
a20c6f5d99 Allow commits to linked pakages.
If the package is linked to a different project, osc will ask
permision to branch the package in the current project before
commiting.

Show a message in osc meta pkg -e in the same case.
2014-02-24 16:02:47 +01:00
Marcus Huewe
87e24c3aa6 - do_commit: added --no-message option
Commit without specifying a log comment. Fixes #73.
2014-02-12 14:52:39 +01:00
Sascha Peilicke
3c0dbaba7f Add flag '--noverify' next to '--no-verify'
Align with other '--no$bla' flags. Note that the alternative is added
after '--no-verify', optparse uses the first arg for the stored config
variable.
2014-02-12 12:26:59 +01:00
Marcus Huewe
b5d47ebd8c - do_maintainer: fixed support for groups
Ideally, the whole method will be refactored one day...
2014-02-11 11:56:44 +01:00
Marcus Huewe
49ed086d0b - do_vc: added a --file <filename> option
Can be used to read changes from <filename>.
2014-02-05 17:50:31 +01:00
98a625e89e - show also error details on request accept error 2014-02-04 14:35:30 +01:00
2c6415264d - fix "osc build $repo aarch64" call without specifing a spec file. aarch64 is not recognized as architecture due to wild parameter guessing 2014-02-03 17:33:49 +01:00
e1007e1bd8 - show api error on failure of request/review accept 2014-01-30 11:52:24 +01:00
0557fecd02 - support bugowner set of groups 2014-01-24 17:01:35 +01:00
cb14b06a74 open 0.144 development 2014-01-24 10:51:00 +01:00
af2dffb002 prepare 0.143 2014-01-24 10:48:46 +01:00
7fcb1bbe3e - fix set bugowner command 2014-01-24 10:29:00 +01:00
9e07851310 - fix "osc up -S" including service files, regression in 0.142 from commit 930974b4ab 2014-01-21 18:09:20 +01:00
Marcus Huewe
cf35fb441f - do_request: support float values for --days (affects list) 2014-01-14 11:04:04 +01:00
Marcus Huewe
edd199af3b - _load_plugins: handle NameError more gracefully 2014-01-10 15:58:33 +01:00
Marcus Huewe
9a8679a21e - core: added wrapper for os.utime (workaround for bnc#857610)
It seems that os.utime raises EINVAL if the file resides on a nfs
share. Since osc itself does not rely on the correct utime, we simply
ignore this exception.
2014-01-09 14:15:30 +01:00
Marcus Huewe
a4632969e4 - core.Package.commit: only update store if the commit was successful
This fixes bug #65
2014-01-09 13:56:34 +01:00
Marcus Huewe
5e5427f9be - ServiceInfo.execute: also cleanup dirs
Fixes #67.
2014-01-09 10:24:48 +01:00
Michal Vyskocil
111fd87715 passx encode/decode functions
The string.encode('bz2') does not work in python3. Implement
passx_encode/passx_decode functions compatible with python 2.6, 2.7 and
3.3.

Add a simple unit test.
2014-01-08 15:43:57 +01:00
Vitezslav Cizek
f85c76bd42 correctly specify --delete option when using rsync 2014-01-08 15:18:02 +01:00
Michal Vyskocil
5d5185cbc6 chmod handling
* prefer os.open instead of open && os.chmod
 * prefer os.fchmod when fd exists
2014-01-06 11:12:02 +01:00
Marcus Huewe
550039f746 - core.request_interactive_review: be able to edit a "maintenance_incident"
Fixes #64.
2013-12-16 10:59:07 +01:00
Michal Čihař
e9793df634 Fixed typo in authentication 2013-12-09 19:26:15 +01:00
Marcus Huewe
daf5da2f18 Merge branch 'master' of https://github.com/bartosh/osc 2013-12-06 10:57:25 +01:00
Marcus Huewe
d04c36189e - core.http_request: remove timeout cruft 2013-12-05 18:30:40 +01:00
Ed Bartosh
2d29c35f46 Fixed traceback in get_prj_results
The reason of the crash is that not all targets are always defined for
all packages. In our environment it happens when linked project is
created and sources have just been uploaded to one package.

Here is the crash:
Traceback (most recent call last):
  File "../tools-testing/build-package", line 313, in <module>
    sys.exit(main(sys.argv))
  File "../tools-testing/build-package", line 309, in main
    return build(apiurl, tproject, package, timeout)
  File "../tools-testing/build-package", line 226, in build
    hide_legend=True, csv=True)
  File "/usr/lib/python2.7/site-packages/osc/core.py", line 5135, in get_prj_results
    row = [pac] + [status[pac][tg] for tg in targets]
status[pac]]
KeyError: ('Fedora_18', 'i586', 'outdated')

Please note that this fix fixes only csv mode. For other modes osc still
can crash, but it's hard to reproduce here as we're not using them.

Signed-off-by: Ed Bartosh <bartosh@gmail.com>
2013-12-05 16:46:30 +02:00
f202fbd111 add option for deleterequests using auto-accept 2013-12-05 10:23:53 +01:00
Dinar Valeev
359d5c5a84 ppc64le can be built on ppc64
In case vm-type is KVM, we can build Little Endian packages on Big
Endian host.

Signed-off-by: Dinar Valeev <dvaleev@suse.com>
2013-12-03 08:25:13 +01:00
Andreas Schwab
b2e94ff3af Fix wipebinaries 2013-12-01 19:01:58 +01:00
Marcus Huewe
2d7f644f44 Merge branch 'master' of https://github.com/thorstenb/osc 2013-11-28 11:52:02 +01:00
602841f14b - fix upload of binary files via POST api call (use right content type) 2013-11-27 11:13:08 +01:00
Thorsten Behrens
9561a99d6b Do not pass on unicode password from keyrings.
Seems at least gnome keyring returns a unicode string here
needlessly, which calling code then trips over.
2013-11-21 23:46:45 +01:00
99b3af9a41 - open 0.143 development 2013-11-21 10:32:17 +01:00
de3e141256 - roll 0.142 release 2013-11-21 10:27:49 +01:00
Sascha Peilicke
89eb129e4d Same output as "osc branch" for mbranch command
Users can just copy-paste the "osc co ..." command in their shell and be
more productive.
2013-11-18 13:48:09 +01:00
Marcus Huewe
73048d1159 - yet another fix for the previous commit 2013-11-15 11:42:58 +01:00
Marcus Huewe
b2493a25ae - fix for 6a36b5180a
It is ridiculous that we have duplicated code for "osc sr" and
"osc createrequest"...
2013-11-15 11:39:21 +01:00
Marcus Huewe
6a36b5180a - do_submitrequest: automatically supersede existing requests if "--yes" was specified
Fixes #58
2013-11-15 11:13:27 +01:00
a7ea5043ae - allow also to execute a token with a registered service 2013-11-13 18:23:44 +01:00
B S Srinidhi
bd3a6d2fc8 Include filelimit=0 when querying full serverside diff
Without this change, "osc rdiff -p" simply returns "(XXX lines skipped)"
2013-11-11 01:39:32 +05:30
Dinar Valeev
82a5350a11 Add ppc64le architecture
This commit adds PowerPC64 Little Endian architecture support

Signed-off-by: Dinar Valeev <dvaleev@suse.com>
2013-11-06 09:11:05 +01:00
63e1124c09 - add support to handle authentification token support 2013-10-31 09:12:17 +01:00
67802e6a41 - support restartbuild and abortbuild
small refactoring but keep api compability
2013-10-28 18:30:32 +01:00
Sascha Peilicke
43499172af Kill Danny's awesome english 2013-10-28 10:21:21 +01:00
ad9a32ca8f - handle also gateway timeout error code when watching build results 2013-10-22 17:58:53 +02:00
Marcus Huewe
e89bc8197b - fixed #52 ("osc dumps on ci") 2013-10-22 13:49:14 +02:00
Marcus Huewe
b85beda33b Merge branch 'master-develproject-unset' of https://github.com/saschpe/osc 2013-10-21 18:04:43 +02:00
Michael Schroeder
930974b4ab prepare for the serviceinfo element having an xsrcmd5 in the error case 2013-10-18 14:58:18 +02:00
Sascha Peilicke
569e89fede Add --unset parameter to setdevelproject
Allows to unset the devel project (much like setlinkrev -u).
2013-10-18 11:50:07 +02:00
Sascha Peilicke
5ef2d4035c Merge pull request #37 from k0da/master
Add ppc64p7 architecture
2013-10-18 02:31:30 -07:00
Sascha Peilicke
3d72e60321 Improve devel project commands.
Let "osc develproject" (with new alias "dp") display the devel package
if it doesn't match the package name. Deprecate "--raw" option which
only was a crude workaround for that anyway.

Add "osc setdevelproject" (alias "sdp") command to change a package's
devel project / package.
2013-10-07 14:31:50 +02:00
Sascha Peilicke
42f9f2bf3e Set socket timeout to 0 by default.
As long as the timeout is >= 0, Python's _ssl module will still use
non-blocking I/O but not poll() but select(). poll(&fd, 1, TIMEOUT)
seems to block _at least_ TIMEOUT time regardless of any errors.

Currently, with SUSE's internal IPv6 layout, this meant a hang of a
second per binary to fetch during "osc build".
2013-09-30 17:23:02 +02:00
Marcus Huewe
7f1d7f6258 - do_request: added --no-devel option in order to disable the forwarding to the devel project (if the request is accepted)
Original patch by "Dominique Leuenberger a.k.a. Dimstar" <dimstar@opensuse.org>
(I just renamed the option from "--nodevel" to "--no-devel").
2013-09-25 15:36:54 +02:00
f5ec5734e3 - set mtime (if specified) after copying from .osc/ directory.
Patch by Roman Drahtmüller
2013-09-23 17:11:52 +02:00
38edcb605f - drop double read(), the copy_pac method is doing that already and python 2.6 is crashing here 2013-09-17 16:39:23 +02:00
744ce9155f - release 0.141 2013-09-17 13:49:53 +02:00
Sascha Peilicke
529e1d4716 Fix copypac with _pattern files
Some _pattern packages do have indeed a _meta.
2013-09-16 17:27:01 +02:00
Marcus Huewe
bf2e372c30 - added new "osc clean" command
"osc clean" removes all untracked files from a package working
copy.
2013-09-12 16:14:14 +02:00
aef9f7e6d2 - _sslcert is stored in meta space 2013-09-05 14:54:15 +02:00
edda98eaff - add signkey --sslcert option to fetch the optional create ssl certificate instead of gpg key 2013-08-30 09:41:13 +02:00
Marcus Huewe
b2b2d54312 - oscerr.ServiceRuntimeError: fixed docstr 2013-08-29 15:35:40 +02:00
Marcus Huewe
1614123f82 - babysitter: catch ServiceRuntimeError
Note: it is probably better to raise a ServiceRuntimeError in
Serviceinfo.execute instead of Package.commit because "execute"
has all the information about the failing service...
2013-08-29 15:22:25 +02:00
Marcus Huewe
1176983a9a - core.edit_submitrequest: fixed (logic) typo 2013-08-28 23:03:25 +02:00
Marcus Huewe
77f9030016 - core.Action: added basic support for a "group" action
Request.format_action is no staticmethod anymore because the formatting
of a "group" action needs the request id.
2013-08-28 23:00:35 +02:00
a8e7b6edd0 - report valid error on "group" request actions for now 2013-08-16 11:53:21 +02:00
Marcus Huewe
c78da6c496 - _load_plugins: also add imported modules to the class
This is needed for backward compatibility. New plugins
(which do not care about "old" osc versions) should not
use "self.<imported modname>.<something>" anymore
to refer to the imported module. Instead use
"<imported modname>.<something>" (this will only work with
osc > 0.140.1).
2013-08-15 17:26:07 +02:00
1c412c14ee - show warning on auto accepting requests 2013-08-14 18:30:43 +02:00
bdc772ef10 - sync appliance building using obsrepositories with bs_worker code 2013-08-14 18:30:43 +02:00
Marcus Huewe
420f61cdca - OscConfigParser: check explicitly for python3 when importing "configparser" (patch by Kay Hayen <kay.hayen@gmail.com>)
There's a another python module around which is also called
"configparser" but which does not seem to be api compatible => so
do not import it.
2013-08-14 15:19:03 +02:00
2be979361e All rename cases require delete=False 2013-08-13 11:54:11 +02:00
6461c9faf0 add --last parameter for build logs to show last finished log file, if currently building 2013-08-13 10:38:43 +02:00
531251a86c Fix file descriptor leaks during download
This makes it possible to build packages which
require more than 512 packages for building.
2013-08-12 18:31:27 +02:00
Marcus Huewe
bcacedcd96 - babysitter.run: added new argv parameter
This way other python scripts can execute osc commands via the
babysitter. Example:

>>> from osc import babysitter, commandline
>>> cli = commandline.Osc()
>>> babysitter.run(cli, ['osc', 'ls', '<project>'])
2013-08-07 23:25:31 +02:00
Marcus Huewe
aacbf6a03b - core: added new _editor_command function
Used by "run_editor" and "_edit_message_open_editor" to retrieve
the editor command.
2013-08-03 19:34:47 +02:00
Marcus Huewe
132a2d128f - run_editor: added fallback if shlex.split raises a SyntaxError
Fall back to a plain split in order to support an arbitrary $EDITOR
value.
2013-08-03 19:23:25 +02:00
Marcus Huewe
0e30e56ded - run_editor: use shlex.split instead of plain split in order to build a proper cmd for $EDITOR 2013-08-03 17:20:03 +02:00
Ionuț Arțăriși
2dac43aecf rephrase trust prompt
'always' is a key word in that sentence and it should be the first word;
it also sounds like better English this way
2013-07-25 17:19:04 +02:00
Marcus Huewe
67a0671c8a - _load_plugins: follow-up fix for commit 58d716a6f7
Only add functions to the Osc class which are defined in the _current_
module.
2013-07-23 12:10:31 +02:00
Miroslav Suchý
12ffb4e3c4 correctly refer to exception
this is left-over from 87d354e1a0

Addressing:
Traceback (most recent call last):
  File "/usr/bin/osc", line 26, in <module>
    r = babysitter.run(osccli)
  File "/usr/lib/python2.7/site-packages/osc/babysitter.py", line 60, in run
    return prg.main()
  File "/usr/lib/python2.7/site-packages/osc/cmdln.py", line 335, in main
    self.postoptparse()
  File "/usr/lib/python2.7/site-packages/osc/commandline.py", line 136, in postoptparse
    override_verbose = self.options.verbose)
  File "/usr/lib/python2.7/site-packages/osc/conf.py", line 873, in get_config
    add_section(conffile, url, user, passwordx)
  File "/usr/lib/python2.7/site-packages/osc/conf.py", line 712, in add_section
    except OscConfigParser.ConfigParser.DuplicateSectionError:
AttributeError: class OscConfigParser has no attribute 'ConfigParser'
2013-07-17 10:22:29 +02:00
41adda44f6 - add support for manual release of sources with binaries (FATE #315250) 2013-07-08 15:59:14 +02:00
Marcus Huewe
2b9a7d166e - fixed "get_prj_results(...)" when calling with status_filter='U' 2013-07-04 22:15:14 +02:00
0437ab9be0 - support for kiwi appliance builds using obsrepositories:/ directive 2013-07-04 16:41:59 +02:00
Marcus Huewe
87aaa9aac4 - checker.check: always close fd 2013-07-04 14:24:29 +02:00
1d7cb3d1db - add armv6hl definition 2013-07-04 11:04:31 +02:00
Marcus Huewe
58d716a6f7 - _load_plugins: add all functions from the plugin to the Osc class
Adding only functions which starts with "do_" breaks the old
behavior.
2013-06-26 10:18:14 +02:00
Marcus Huewe
4996b1d1ac - do_copypac: fixed help text of the --revision option (as suggested by darix)
It "copies" the specified revision instead of "linking" it.
2013-06-21 15:11:20 +02:00
Marcus Huewe
668a017565 - open 0.141 development 2013-06-21 15:10:54 +02:00
dbd38296fa - tag it as 0.140 2013-06-20 10:46:37 +02:00
Marcus Huewe
58532bbac7 - small fix for commit d338254bb7
catch HTTPError instead of TypeError
2013-06-17 17:37:40 +02:00
Sascha Peilicke
d338254bb7 Display meaningful message for queries w/o project
Like: osc rq list -U $USER -t change_devel
2013-06-17 16:26:00 +02:00
Sascha Peilicke
4007800880 Catch specific exception. Catch-all is calling for error 2013-06-17 16:21:32 +02:00
Marcus Huewe
0ac1d32945 - oscssl.verify_certificate: also print cert info if http_debug is set
If http_debug is set we redirect sys.stdout to an StringIO
instance in order to do some header filtering (see conf module)
so we have to use the "original" stdout for printing the certificate
information.
2013-06-15 08:53:26 +02:00
Marcus Huewe
b6c9505274 - reworked the plugin loading mechanism
Using the "old" exec approach isn't possible anymore because it'll break all
plugins which aren't compatible with python3 (for instance the usage of
python2's "print" statement will lead to an error). In order to circumvent
this problem we do the following:

- import the plugin/module
- update the module's global symbol table with the "globals()" of the
  commandline module
- bind the module's "do_*" functions to the "Osc" class

This basically mimics the old "exec" semantics.
2013-06-13 20:10:12 +02:00
467757b76d - do not show unpublished information in dirty situation 2013-06-13 16:42:25 +02:00
da8c123d85 - show the situation that packages succeeded to build, but are not yet published (way to many questions due to that) 2013-06-13 16:27:58 +02:00
Dinar Valeev
51b549db3a Add ppc64p7 build definitions 2013-06-07 13:28:57 +02:00
Juergen Weigert
4b48cc611f fixed plugin crash message: include the plugin name
Two occurences.
2013-06-06 12:36:48 +02:00
Juergen Weigert
c7a15b9dab fixed plugin crash message: include the plugin name 2013-06-06 11:55:50 +02:00
Marcus Huewe
4736763c22 - reverted commit 9acda37d5f
Now "get_built_files" always returns a tuple which consists of two strings.
So no cast is needed anymore.
2013-06-03 16:32:39 +02:00
Danny Al-Gaaf
96183f41f3 OscConfigParser.py: silence pylint false positive E0702
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-27 15:20:56 +02:00
Danny Al-Gaaf
a3cf8e8552 OscConfigParser.py: fix __delitem__
Two issues:
- There is no _find() member in ConfigLineOrder. Use _find_section()
  instead
- Use 'key' instead of 'line' as argument for _find_section() since
  'line' is used before assignment.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-27 15:14:15 +02:00
Danny Al-Gaaf
a5d14bfd48 checker.py: "More than one statement on a single line"
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-27 14:58:58 +02:00
Danny Al-Gaaf
6a6b25f9cb fetch.py: fix "More than one statement on a single line"
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-27 14:58:15 +02:00
Danny Al-Gaaf
f889edabfa core.py: add missing spaces
Add missing spaces around operators and spaces after comma.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-27 14:56:24 +02:00
Danny Al-Gaaf
3ac21eb1e3 build.py: add missing spaces
Add missing spaces around operators and spaces after comma.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-27 14:47:16 +02:00
Danny Al-Gaaf
b55d4d6b99 util/archquery.py: remove unnecessary semicolon
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-27 14:30:08 +02:00
Danny Al-Gaaf
2f197c698b build.py: remove unnecessary semicolon
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-27 14:28:59 +02:00
Danny Al-Gaaf
2062333977 core.py: fix bad indentation
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-27 14:26:58 +02:00
Danny Al-Gaaf
7e3a901596 build.py: fix bad indentation
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-27 14:19:44 +02:00
Danny Al-Gaaf
6db0431cb7 fetch.py: fix bad indentation
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-27 14:16:58 +02:00
Danny Al-Gaaf
e1ea202802 cmdln.py: fix reimport of 're'
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-27 14:13:19 +02:00
Danny Al-Gaaf
b99a05e167 cmdln.py: remove some reimports of sys
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-27 14:07:04 +02:00
Danny Al-Gaaf
c84f413c10 oscssl.py: remove reimport of m2 from M2Crypto
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-27 13:47:48 +02:00
Danny Al-Gaaf
ca306fbb29 commandline.py: remove some unnecessary pass statements
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-27 13:42:28 +02:00
Danny Al-Gaaf
42b8d5ff45 commandline.py: fix "More than one statement on a single line"
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-27 13:38:49 +02:00
Danny Al-Gaaf
c261a80d46 commandline.py: remove comma, causing trouble
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-27 13:06:01 +02:00
Danny Al-Gaaf
00e3932e43 commandline.py: wrap some really long lines
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-27 13:03:46 +02:00
Danny Al-Gaaf
8403c92059 commandline.py: add missing spaces
Add missing spaces around operators, add missing spaces after comma.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-27 12:41:50 +02:00
Danny Al-Gaaf
439e03501d commandline.py: remove unnecessary semicolon
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-27 12:18:43 +02:00
Danny Al-Gaaf
e1b8022ca0 commandline.py: fix bad indentation
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-27 12:16:44 +02:00
Danny Al-Gaaf
9acda37d5f build.py: add cast to be able to use str.splitlines()
Cast some variables  to str() to be able to use str.splitlines().

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-26 20:25:44 +02:00
Danny Al-Gaaf
e6f8a1a7b3 cmdln.py: fix "More than one statement on a single line"
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-26 15:27:05 +02:00
Danny Al-Gaaf
f0a92430e8 cmdln.py: fix bad indentation
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-05-26 11:24:17 +02:00
Marcus Huewe
cdd73ba983 - fetch.OscFileGrabber: fix for commit 9ab5a37113
We still have to support older urlgrabber versions where the class
"URLGrabber" is an old-style class and therefore we cannot use a "super(...)"
call. This fixes issue #32
2013-05-23 15:04:20 +02:00
eea716f11f - support listing of deleted source files "ls -D $PROJECT $PACKAGE" 2013-05-17 10:37:51 +02:00
Gui Chen
9ab5a37113 fix OscFileGrabber missing 'opts' attribute issue
given urlgrabber version 3.9.1, MirrorGroup trys to access
grabber.opts, but the derived grabber OscFileGrabber hasn't
this attribute

Signed-off-by: Gui Chen <gui.chen@intel.com>
2013-05-14 10:16:10 +02:00
Andreas Schwab
ae2f9515ef Fix examples in link_template 2013-05-10 20:57:03 +02:00
Michal Čihař
f2a1bde695 Fix typo in help 2013-05-07 09:29:59 +02:00
954c2fc2b2 - fix request ... --or-revoke command for automated request accept/revoking 2013-05-06 18:45:51 +02:00
Marcus Huewe
41661d741a - babysitter: print out headers in case of status 5XX 2013-05-02 22:33:04 +02:00
Marcus Huewe
69150040c2 - do_submitrequest: --diff is not supported in a project working copy
This (partly) fixes issue #29.
2013-05-02 22:18:14 +02:00
Marcus Huewe
5e0ef46aed - fixed issue #28 ("calling with -H option causes traceback") 2013-05-02 14:55:31 +02:00
90d51da3d2 - add --message option for creating set_bugowner requests 2013-05-02 11:38:53 +02:00
71c40acc51 - fix using --set-bugowner-request on explicit specified containers 2013-05-02 11:08:27 +02:00
69e6e586c7 - fix print syntax 2013-05-02 11:05:48 +02:00
ce998fbc29 - fix spelling typo 2013-05-02 10:57:15 +02:00
a8f14bed60 - allow to set bugowner/maintainership for a given binary 2013-05-02 10:50:05 +02:00
Marcus Huewe
cdc1245960 - pass a str to exec() instead of an open file object
An open file object isn't supported anymore by python3.
This fixes issue #26.
2013-04-30 17:44:38 +02:00
Marcus Huewe
0c0ffe50fb - Serviceinfo.execute: always cleanup (remove) tmpdir
This fixes issue #24.
2013-04-26 20:44:53 +02:00
9595aa9f09 - show also groups in maintainer/bugowner search 2013-04-22 17:09:33 +02:00
Marcus Huewe
a8def0f433 - build: fixed typo (patch by darix)
typo was introduced in commit d3648be24b
2013-04-22 16:26:31 +02:00
Marcus Huewe
51e6fca88f - fetch: check if errno == 14 before accessing the URLGrabError's code attribute
Unfortunately the class URLGrabError does not define constants for the
different error codes therefore we have to hardcode the errno (alternatively
we can define them in our fetch module).
2013-04-22 15:54:55 +02:00
Marcus Huewe
5a8baf9b88 - util.ar: do not import StringIO from the cStringIO module
The class ArFile inherits from StringIO but StringIO from cStringIO
is just a function (this got broken by commit 87d354e1a0).
2013-04-22 09:24:48 +02:00
Marcus Huewe
439dafbdc5 - ServiceInfo.execute: fixed NameError 2013-04-22 09:17:38 +02:00
Marcus Huewe
d28cddfede - use a buffer instead of a memoryview if python version < 2.7
(forgot to remove this code in commit 034d2e4746)
2013-04-18 15:04:58 +02:00
Marcus Huewe
034d2e4746 - http_request: do not use a memoryview for python27
python27's mmap does not behave like a bytearray therefore we
cannot directly pass it to the memoryview.
2013-04-18 14:19:45 +02:00
2b06180efa - anotehr python3 syntax fix 2013-04-16 15:57:30 +02:00
Michal Vyskocil
1cd12ac566 python3 compatibility: fix a man page generation
Fixes a fail on a building of a documentation
http://lists.opensuse.org/opensuse-buildservice/2013-04/msg00099.html
2013-04-16 15:51:14 +02:00
e1291fdcc6 - fix the general architecture detection for incomplete "osc build" lines 2013-04-16 15:42:37 +02:00
b99233e3ae - hostarch is an array :/ 2013-04-16 15:24:28 +02:00
ce04f8b9bb - fix syntax to satisfy testsuite 2013-04-16 11:01:56 +02:00
Michal Vyskocil
b787ca2b39 python3 compatibility: make all unit test pass
There are many places can't be covered by 2to3, especially the
str/unicode -> str/bytes change done in python3. This is a big patch
incorporating all changes made in order to make python3 suite.py run
without any single failure.

It

 * adapt the introspect_handler_3 for case there are no __defaults__
 * adds the ET_ENCODING variable for ET.fromstring ("unicode" in py3,
  "utf-8" in py2)
 * (re)adds various builtins to both python versions
    - memoryview to python 2.6
    - bytes compatible with py3 to 2.6 and 2.7

and it changes few parts of tests/common.py in order to be compatible
with python3

 * new urlcompare method compares all components or url + parsed query
   string in a dictionary, so the ordering, neither quoting does not matter
 * bytes builtin has been added to 2.x and used in assertEqualMultiline
2013-04-16 10:51:42 +02:00
Michal Vyskocil
f0186dbde8 python3 compatibility: fix all tests 2013-04-16 10:51:42 +02:00
Michal Vyskocil
419367fca3 python3 compatibility: urllib
fixes all renames in urllib, urllib2, urlparse modules in python3
2013-04-16 10:51:42 +02:00
Michal Vyskocil
f6edc186c2 python3 compatibility: unicode
reintroduce unicode function - despite the fact I am pretty sure the
usage is plain wrong, because code says - return a unicode string from
utf-8 encoded one, which is probably not what was intended. I bet
something like encode the input as utf-8 was wanted.
2013-04-16 10:51:42 +02:00
Michal Vyskocil
5cc72902e0 python3 compatibility: raw_input
raw_input has been removed and equals to input in py3. Unfortunatelly no
__future__ statement exists for that. Ensure all modules uses
osc.core.raw_input except osc.cmdln, where there is NameError way
implemented.
2013-04-16 10:51:41 +02:00
Michal Vyskocil
b534ae0a6a python3 compatibility: raise
support for old style exceptions has been removed from python3
2013-04-16 10:51:41 +02:00
Michal Vyskocil
7f2031558c python3 compatibility: print function
The most visible change in python3 - removal of print statement and all
the crufty
   print >> sys.stderr, foo,

The from __future__ import print_function makes it available in python
2.6
2013-04-16 10:51:41 +02:00
Michal Vyskocil
0dcbddbafe python3 compatibility: new syntax for literals
The octal literals got a new syntax 0755 -> 0o755
2013-04-16 10:51:18 +02:00
Michal Vyskocil
87d354e1a0 python3 compatibility: import proper modules
Some modules (httplib, StringIO, ...) were renamed in python3. This
patch try to import the proper symbols from python3 and then fallback to
python2 in a case ImportError will appear.

There is one exception, python 2.7 got the io module with StringIO, but
it allow unicode arguments only. Therefor the old module is poked before
new one.
2013-04-16 10:51:18 +02:00
Michal Vyskocil
c612e8d47e python3 compatibility: use relative imports
Use relative imports when using module's own modules - this makes a
clear distinction between already developed copy and installed package.
2013-04-16 10:51:18 +02:00
Michal Vyskocil
f814fe4af4 python3 compatibility: idioms
more idiomatic code - changes

  * type(foo) == bar to isinstance(foo, bar)
  * changes the uneeded .sort calls by sorted()
2013-04-16 10:51:18 +02:00
Michal Vyskocil
2ad4a8c873 python3 compatibility: has_key
don't use method removed from python3
2013-04-16 10:51:17 +02:00
Michal Vyskocil
19f689ce0b python3 compatibility: getcwdu
used just on one place, seems to be enough to simply remove it
2013-04-16 10:51:17 +02:00
Michal Vyskocil
a134074417 python3 compatibility: funcattrs, methodattrs
the introspection names changed a lot in python3, so lets have two
implementations used by respective runtime
2013-04-16 10:51:17 +02:00
Michal Vyskocil
600a565428 python 3 compatibility: exec
exec is no longer a statement
2013-04-16 10:51:17 +02:00
Michal Vyskocil
3a93ac6d10 python3 compatibility: except
changes 'except FooError, fe' to 'except FooError as fe'

available in python 2.6
2013-04-16 10:51:17 +02:00
Michal Vyskocil
d3648be24b python3 compatibility: dict
this patch
 1.) removes the iteritems/itervalues, which were dropped in py3
     items/values are used instead
 2.) add an extra list() in a cases the list-based access is needed
     (included appending, indexing and so)
 3.) changes a sorting idiom in few places
     instead of
     foo = dict.keys()
     foo.sort()
     for i in foo:

     there is a recommended

     for i in sorted(dict.keys()):
 4.) in one occassion it removes a if dict.has_key() by simpler
   dict.get(key, default)
2013-04-16 10:51:17 +02:00
Michal Vyskocil
c5a235ed78 python3 compatibility:
python 2.6 does not have memoryview, so lets define it as buffer
2013-04-16 10:51:17 +02:00
b8faeeddb4 - fix build on ppc/s390/ia64 (bnc#815296) 2013-04-16 09:04:34 +02:00
Marcus Huewe
67d45a5324 - request_interactive_review: offer diff option for a maintenance_incident 2013-04-15 17:52:46 +02:00
Marcus Huewe
9e6e76c712 - do_localbuild: made "arch" argument optional 2013-03-25 20:28:27 +01:00
Sascha Peilicke
c31d7d5671 Fix typo in default build-root path 2013-03-20 15:43:06 +01:00
Michael Schroeder
1299b73efa fix with/without definitions, --with should not define %_without and vice versa 2013-03-20 15:38:25 +01:00
320238350f - reset retry counter on 404 answer for all python 2.7.x versions 2013-03-20 14:11:58 +01:00
b0ddb63432 - Abort when the server is not answering with 200 or 404 when downloading _pubkey files
- really use the internal rpm signature check
2013-03-19 17:17:14 +01:00
d082c75958 - drop the support for deprecated cbinstall and cbpreinstall directives 2013-03-19 08:17:13 +01:00
948687c4cf - do not crash on manual configured buildroot 2013-03-18 17:41:57 +01:00
Marcus Huewe
56979493d6 - fixed grammar error 2013-03-08 19:09:29 +01:00
Marcus Huewe
03b8cba2af - fixed bnc#807621
Bug summary: "osc: when forwarding a request, previous request is
not superseded automatically"
2013-03-08 19:06:04 +01:00
Marcus Huewe
49eeda0a17 - core.edit_message: changed message file opening (only affects vim/vi users)
With the current implementation it's possible to detect if the user saved
the message file or if he/she just quits the editor (e.g. to abort the commit).
2013-03-08 17:17:45 +01:00
Marcus Huewe
93df866787 - added new function core.run_external which can be used to execute an external program
Basically it's just a wrapper around subprocess.call which raises an ExtRuntimeError
exception if subprocess.call raised an OSError with errno set to ENOENT (unfortunately
the OSError's filename attribute is set to None therefore we cannot print a meaningful
error message (that's why an ExtRuntimeError is raised)).
Replaced all occurrences of subprocess.call with a corresponding run_external call.
2013-03-08 00:56:57 +01:00
Marcus Huewe
ec595d361b - core.edit_message: use a more informative messsage if the default template wasn't changed 2013-03-06 17:34:49 +01:00
6d7de62755 - explain the "osc maintainer" command a bit more extensive 2013-03-06 11:49:54 +01:00
Marcus Huewe
b228fc3c98 - do_service: fixed typo in command description
Thanks to Richard Bos <rbos@opensuse.org> for spotting this.
2013-03-02 15:27:20 +01:00
6e42a61076 - add a accept-or-revoke function for requests. useful for mass automatisation of processing stuck requests. 2013-02-28 10:32:29 +01:00
Marcus Huewe
45e49905ce - do_mv: minor cosmetic changes 2013-02-28 00:30:05 +01:00
Bogdano Arendartchuk
1d3805f30e Allow using directories as mv targets
Otherwise osc would crash because the target directory would be in use (in
case of ".".)
2013-02-27 18:40:59 -03:00
Sascha Peilicke
f9a718f662 Provide a better default build-root.
Previously it was /var/tmp/build-root but
/var/tmp/build-root/%(repo)s-%(arch)s makes much more sense.
2013-02-27 13:43:05 +01:00
Marcus Huewe
e2dc1d7fe6 - fixed bnc#801027 ("osc starts with a traceback") 2013-02-25 18:07:27 +01:00
907e5f67a5 - open 0.140 development 2013-02-25 15:44:01 +01:00
74f950d409 - prepare 0.139 release 2013-02-25 15:40:26 +01:00
e5189178a1 - create multiple-submit requests with revision numbers 2013-02-25 15:22:00 +01:00
3e88c3ce32 - fallback to set_bugowner request when writing to specified container is not permitted 2013-02-21 12:10:02 +01:00
14f6986331 - use server side default when searching the container for setting a bugowner. 2013-02-21 07:26:59 +01:00
220ec0e2cf "maintainer --user" support to search for all official maintained instance for given user or group 2013-02-20 11:41:29 +01:00
Marcus Huewe
f0d1acf8d4 - removed debug output 2013-02-14 15:39:57 +01:00
Marcus Huewe
920028524b - fixed UnboundLocalError when creating a submitrequest from a project wc
The error occured if no target project was specified by the user.
2013-02-14 15:36:04 +01:00
55ee5763b0 - abort on "search --maintained". Do not redirect to the new command automatically, since it has a different logic 2013-02-14 11:32:27 +01:00
Marcus Huewe
93c0a2d88f - core.Project.update: fixed deletion of packages with local state "!" and which don't exist on the server side 2013-02-13 18:50:01 +01:00
Marcus Huewe
c8bfad3661 - core.edit_message: check if the user modified the log template
If the user didn't change the default template it either means that
he wants to use the default message or that he wants to abort the process.
So if the template wasn't modified osc will prompt:

Commit template was not changed
a)bort, c)ontinue, e)dit:
2013-02-13 11:42:34 +01:00
Michal Vyskocil
a69d10616a osc build on remote --host
The new argument for osc build --host will perform the build on a remote
host. It is a shortcut for

rsync -az -e ssh `pwd` user@hostname:/remote/dir
rsync -az -e ssh prefer-dir \
user@hotname:/remote/dir/__prefer-rpms__/prefer-dir
ssh -t user@hostname "cd /remote/dir/package; osc build *build-args"
rsync -az -e ssh user@hostname:/remote/dir/__keep-pkgs__ keep-pkgs

iow it copy the current directory to the /remote/directory on hostname
(if not specified, the ~/ is supplied) and then run the osc build on
hostname. All global and local arguments are supplied to the remote osc
build, but arguments points to local path (--host, --keep-pkgs, --prefer-pkgs,
--rsync-dest, --rsync-src and --overlay) are modified to match to remote
host.

It support the OSC_ variables, so running with
OSC_BUILD_ROOT=/somewhere osc build --host ... will push the variable to
the remove osc process
2013-02-12 15:08:20 +01:00
d26b3df32f - handle architecture parsing also right when an emulator is used. Just warn in that case,
because we can check for sure if an emulator is configured.
2013-02-11 15:35:15 +01:00
b358e7085f - remove debug output 2013-02-11 13:01:58 +01:00
d21bbe48fd - fix display of time in jobhistory when the job builds more than one day 2013-02-11 11:19:02 +01:00
Marcus Huewe
7d46c5f879 - do_chroot: fixed suargs handling (patch by Olaf Hering <olaf@aepfle.de>) 2013-02-07 15:50:53 +01:00
143af44479 - support --target argument for "osc build" 2013-02-06 17:12:52 +01:00
ef5b892285 Merge pull request #19 from andreas-schwab/master
_submit_request: add missing newline before diff
2013-02-05 23:16:18 -08:00
Dmitry Marakasov
8e9e8c492c Raise exception when there're no CA certificates
This is more useful and meaningful error message than M2Crypto's
"ValueError: cafile and capath can not both be None." when neither
of cafile and capath is defined for load_verify_locations call.
2013-02-06 03:50:18 +04:00
b07891879b _submit_request: add missing newline before diff 2013-02-05 11:13:07 +01:00
8097a9550d - fix local build with emulator support.
- fix package signing check (skip always for use inside of secure VMs)
2013-02-03 19:08:38 +01:00
f1c55334b3 - add aarch64 build definitions 2013-02-03 13:25:32 +01:00
Andreas Schwab
8f38f33228 do_submitrequest: missing newline before diff in message 2013-02-01 12:21:52 +01:00
Andreas Schwab
7ef8bee0b8 osc diff: use pager also for local diff 2013-02-01 12:21:33 +01:00
1106eb5166 - open 0.139 development 2013-02-01 12:19:06 +01:00
Markus Lehtonen
68670a7a83 Fix %(apihost)s in "build-root" option for osc chroot
Prevents a crash in osc chroot when %(apihost)s is defined in the
"build-root" config option.

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
2013-02-01 12:18:29 +01:00
1fd7eda7c3 - prepare 0.138 release 2013-01-31 16:44:14 +01:00
d84bc081ef - disable keyring usage by default 2013-01-31 16:03:31 +01:00
4e0fb4cbeb submitrequest: old not anymore used maintenance code got removed. It is possible now
to create one request to submit all changed packages of an project in
               one request. Just run "osc sr" in the checked out project directory.
2013-01-31 16:03:16 +01:00