1
0
mirror of https://github.com/openSUSE/osc.git synced 2024-12-30 19:56:14 +01:00
Commit Graph

566 Commits

Author SHA1 Message Date
Michal Marek
b46c000b61 update_package_meta: correctly replace existing <url> element 2008-08-21 12:03:42 +00:00
Marcus Hüwe
854fe0d97a - addFiles(): added optional prj_obj parameter
- do_addremove():
  * if "do_package_tracking" is enabled scan the project dir for new/disappeared packages
  * added --recursive option (If CWD is a project dir then scan all package dirs as well)
  * minor pathname fix
- fixed argument handling in some methods: don't remove items from a list while looping over it
2008-08-20 19:24:55 +00:00
Susanne Oberhauser
572ed13aba Actually use the new http_headers now available in the config. 2008-08-20 14:18:06 +00:00
Susanne Oberhauser
e1d9c67f1c Parse http_headers in api host sections. 2008-08-20 14:07:11 +00:00
Susanne Oberhauser
6ded17ebf0 Factor api_host_options from get_apiurl_usr to access all host
specific options, not just the user.
2008-08-20 10:41:10 +00:00
Susanne Oberhauser
f7d2a690f5 - extend the 'auth_dict' to more generic per-host options 'api_host_options'
This allows in a next step to add per-host extra http-headers,
  here for special authentication purposes.
2008-08-20 09:45:49 +00:00
Susanne Oberhauser
f07da13359 - only reparse the config if it was actually modified. 2008-08-20 09:40:00 +00:00
Marcus Hüwe
b2aceda67a add new --project option to prjresults in order to show the results of a project without having a local wc (patch by Michael Wolf <maw@novell.com>) 2008-08-19 19:37:08 +00:00
Marcus Hüwe
1f2df92d12 submitrequest log: use the description of the submitrequest for the initial log entry otherwise its comment attribute would contain None 2008-08-19 19:15:29 +00:00
Marcus Hüwe
7dd72fd089 don't add an empty string ('') to the extra-pkgs list 2008-08-19 14:36:52 +00:00
Marcus Hüwe
e93678d5a0 - added submitrequest log command to show the history of a given id 2008-08-19 14:18:05 +00:00
Marcus Hüwe
bb11aea3fc submitrequest show: show the current state's comment 2008-08-19 12:29:26 +00:00
Marcus Hüwe
06c5316ba2 changed text for the revoke message (as suggested by darix) 2008-08-17 21:14:59 +00:00
Marcus Hüwe
5140deebff add the id of the new request to the revoke message 2008-08-17 20:12:19 +00:00
Marcus Hüwe
fc0d61bfce - fixes for the last commit (r4684), actually only the change in core.py was intended.
now 'osc submitrequest create' checks if you already submitted requests for this package, if so it'll ask you if the previous submissions should be revoked
2008-08-17 19:10:44 +00:00
Marcus Hüwe
f4e4c91376 - minor fix in get_submit_request_list() 2008-08-17 18:53:54 +00:00
Lars Vogdt
5aaaa3572a - enhanced the package template 2008-08-15 17:38:08 +00:00
Dr. Peter Poeml
f82ea05051 osc build: moved the architecture check more to the top. Now we first check
whether we can build for the target architecture, *before* we start downloading
packges.
2008-08-15 14:04:27 +00:00
Marcus Hüwe
d58fffc7b6 removed debugging and other superfluous stuff 2008-08-14 12:12:41 +00:00
Michal Marek
4df8ffd6ea Make 'metafromspec' and alias to 'updatepacmetafromspec', to make the command
easier to memorize
2008-08-08 15:23:03 +00:00
Michal Marek
d047b30aa8 unbreak osc init 2008-08-08 15:19:54 +00:00
Dr. Peter Poeml
93e916eb39 remove empty parens after class definition so Python 2.4.2 can parse it 2008-08-07 17:51:28 +00:00
Marcus Hüwe
3359646b02 - fix bug #412918
- added a file attribute to the ConfigError() class
- added new ConfigMissingApiurl() class
2008-08-07 17:14:26 +00:00
Marcus Hüwe
8d055f7990 - added OscConfigParser module:
OscConfigParser() behaves like a normal ConfigParser() object. The
  only differences is that it preserves the order+format of configuration entries
  and that it stores comments.
  In order to keep the order and the format it makes use of the ConfigLineOrder()
  class.
- removed .netrc cruft from the conf module
- other config cleanups
2008-08-07 16:40:55 +00:00
Dirk Mueller
1a3c80423a typo fix 2008-08-04 13:33:40 +00:00
Dirk Mueller
45e944efbf - --state , means "any state"
- fix streaming support in osc buildlog. do not download all of the
  buildlog into memory before printing it (it could be very big), just
  print as the log comes in
2008-08-04 13:21:49 +00:00
Dirk Mueller
65e9011f00 - add support for listing submitrequests not in state New to
osc submitreq list
2008-08-04 13:20:29 +00:00
Marcus Hüwe
707b057891 - updatepacmetafromspec: also update the Url in the metadata (patch by Lenz Grimmer <lenz@grimmer.com>) (applied slightly modified version)
- read_meta_from_spec(): use the re module to find tags and sections to avoid problems with lowercase/uppercase letters (e.g. "Url" vs. "URL")
2008-08-03 19:36:07 +00:00
Marcus Hüwe
3c5847e054 - init: added support to initialize a project dir 2008-08-01 13:58:49 +00:00
Marcus Hüwe
ae07c9a945 do_package_tracking: be a bit more verbose when updating a project 2008-08-01 11:31:12 +00:00
Michal Marek
36fb38afd0 update the new project template with current distributions 2008-07-31 08:15:28 +00:00
Marcus Hüwe
0020074a8a - fix enhancement request #412157 (Add some guessing to "osc build")
- "osc build" can be called with the following arguments:
  * osc build [OPTS] PLATFORM ARCH BUILD_DESCR
  * osc build [OPTS] PLATFORM (ARCH = hostarch, BUILD_DESCR is detected automatically)
  * osc build [OPTS] ARCH (PLATFORM = build_platform (config option), BUILD_DESCR is detected automatically)
  * osc build [OPTS] BUILD_DESCR (PLATFORM = build_platform (config option), ARCH = hostarch)
  * osc build [OPTS] (PLATFORM = build_platform (config option), ARCH = hostarch, BUILD_DESCR is detected automatically)
2008-07-30 16:45:00 +00:00
Marcus Hüwe
5c062ea121 - fixed bug #412145 (typo) 2008-07-25 10:19:32 +00:00
Dirk Mueller
6792642166 - add "submitrequest" as an alias for "submitreq"
- add "submitrequest revoke" command to be able to
  delete submissions to projects one can't write to
2008-07-25 09:34:29 +00:00
Dirk Mueller
494381866d revert back to throwing the httplib2 error, to be
able to preserve http headers etc
2008-07-23 20:56:20 +00:00
Dirk Mueller
048414088f - implement --no-checks for osc build
- make osc submitreq succeed for submitting new packages
  (previously the develproject check caused it to abort prematurely)
2008-07-23 20:05:09 +00:00
Marcus Hüwe
12ff5ac124 - some cleanups/changes for the config handling:
* extra-pkgs and urllist settings can be separated by a comma and/or whitespace:
    'extra-pkgs: foo, bar xyz'
  * 'True', 'False' etc. are accepted values for boolean options
2008-07-18 12:08:03 +00:00
Dr. Peter Poeml
b37af9ed4f add more information about aggregation of packages, and a link to the wiki page about it. 2008-07-17 17:46:21 +00:00
Dr. Peter Poeml
f43a22c502 version 0.107 2008-07-16 15:15:42 +00:00
Dr. Peter Poeml
6ff961279c osc update / checkout: don't check out a working copy, or update an existing
one, when a source link cannot be applied [bnc#409373]

 - linkinfo elements can have an "error" attribute which indicates link
   application failure, which means that updating the working copy is not
   possible. 

 - Before this fix, osc could silently remove locally modified sources!
2008-07-16 15:14:57 +00:00
Dr. Peter Poeml
2618902347 remove an os.getcwd() call from function arguments, because that call fails when running the program from a directory which doesn't exist anymore, and thus osc would not run at all. 2008-07-16 15:04:37 +00:00
Dr. Peter Poeml
cdab0b19ea - osc build: make the --extra-pkgs option configurable via .oscrc.
Default is "extra-pkgs = vim gdb strace" -- and it can be overridden with -x ''
  on the commandline, or set to empty in the config.  [bnc#345142]
- make tilde expansion work on the packagecachedir setting
2008-07-12 12:06:23 +00:00
Dr. Peter Poeml
d3da0085a4 bump version (0.106); update NEWS file 2008-07-11 10:42:01 +00:00
Dr. Peter Poeml
c38fe33646 always expand sources for "pretty" diffs -- this affects 'osc rdiff' and 'osc
submitreq show'
2008-07-11 10:39:22 +00:00
Marcus Hüwe
572c58bc24 show author's name when listing submitrequests 2008-07-10 01:57:38 +00:00
Dr. Peter Poeml
83862c1040 submitreq: add shortcut 'sr' for Darix 2008-07-09 20:38:49 +00:00
Dr. Peter Poeml
e9fe10b11e bump version (0.105) 2008-07-09 15:23:12 +00:00
Dr. Peter Poeml
de0bb98200 add submitreq delete action (thanks to Dirk for the patch) 2008-07-09 15:22:18 +00:00
Marcus Hüwe
acaef1d250 - disable signature check when getting data from a rpm file
- catch rpm.error exceptions
2008-07-08 15:51:37 +00:00
Marcus Hüwe
010c0ae7a0 fixed typo 2008-07-04 12:56:32 +00:00
Marcus Hüwe
5b84831d25 don't expand/unexpand if the working copy has local modifications - this is an ugly workaround for #399247 but this way the working copy isn't screwed up 2008-07-04 12:54:02 +00:00
Marcus Hüwe
c8b41c643a - copy_pac: use the correct userid when copying to another apiurl 2008-06-30 14:07:11 +00:00
Marcus Hüwe
73fd228c14 - use apiurl from the storedir when running 'osc submitreq list/create' 2008-06-27 17:54:59 +00:00
Dirk Mueller
eb8a8bbc79 - support "submitreq list" also in a project
directory
2008-06-27 17:14:15 +00:00
Dirk Mueller
6d5dab90b4 list submitrequests in a sorted order.. newest first 2008-06-27 16:36:36 +00:00
Dirk Mueller
72d0d2fbbb - add an optional parameter req_state to get_submitreq_list()
to be able to query also rejected submit requests
- make the list sortable
- make the list output more beautiful
2008-06-27 16:36:16 +00:00
Dirk Mueller
607ed31f97 - add news entry
- also list the http error code
2008-06-27 11:24:15 +00:00
Dirk Mueller
9eba706bd3 print the backend error code 2008-06-27 11:17:27 +00:00
Marcus Hüwe
5768e35047 - applied slightly modified version of Node's patch which added a --revision option to do_linkpac 2008-06-26 10:47:58 +00:00
Dirk Mueller
f16fb793e3 do not add _linkerror's to the project's working copy 2008-06-25 17:37:05 +00:00
Marcus Hüwe
927019a7eb - added initial support for involved projects/packages (the xpath predicate is stolen from the webclient;) ) 2008-06-24 15:07:44 +00:00
Dirk Mueller
3df4edb5bb update usage info 2008-06-24 09:39:39 +00:00
Dirk Mueller
aa0a6976cb guess the parameters of list if inside a working dir 2008-06-24 09:37:49 +00:00
Dirk Mueller
252e2a3e63 release is optional (doesn't exist on debian) 2008-06-23 08:38:05 +00:00
Dirk Mueller
1be2163733 double check the correctness of the build info for local build,
otherwise packages are stored incorrectly in the package cache
and that might cause problems later. Also refuse to build an
architecture locally that is not supported by the host architecture
2008-06-20 13:37:49 +00:00
Dirk Mueller
3fb7530028 add an API error type of class to throw 2008-06-20 13:36:45 +00:00
Marcus Hüwe
be934cc16d - fix bug #400431 2008-06-18 14:34:30 +00:00
Dr. Peter Poeml
2bd196d8e3 - osc buildhist: change the output into a format which better matches actual RPM filenames.
- give commit message tempfiles a ".diff" suffix, so syntax highlighting might work in some editors
2008-06-17 06:12:48 +00:00
Dr. Peter Poeml
7ee4444b6b show error messages from the API also for type 500 errors 2008-06-16 19:12:24 +00:00
Dr. Peter Poeml
dd9d1cb49f osc build: handle exception when getting buildinfo fails, for cases != 404 2008-06-12 12:12:29 +00:00
Marcus Hüwe
7675c55242 fix and use comparePac() 2008-06-11 13:02:40 +00:00
Dr. Peter Poeml
7d8834a0a3 bump version to 0.104, adjust NEWS file 2008-06-11 08:34:39 +00:00
Dr. Peter Poeml
693987ac49 osc update: after update, reset the revision when updating multiple package.
Fixes "404: Not Found" type errors when updating an entire project. [bnc#399177]
2008-06-11 08:29:27 +00:00
Dr. Peter Poeml
61e4cf6798 babysitter: The api returns error messages meanwhile. Thus, we don't need to
look up the reason of errors anymore.
2008-06-11 08:17:55 +00:00
Dr. Peter Poeml
f4228de56b osc wipebinaries: add missing check for commandline arguments, which could
cause a PACKAGE argument to be ignored
2008-06-11 08:01:10 +00:00
Marcus Hüwe
da101858ee - fixed make_diff in order to avoid errors when committing a new package (created with mkpac) 2008-06-10 22:32:53 +00:00
Dr. Peter Poeml
bce87c182d - handle error resulting from unexpected zero-length .osc/_files metadata
by raising oscerr.NoWorkingCopy()
2008-06-10 10:15:49 +00:00
Dr. Peter Poeml
06c2cbf882 bump version to 0.103, adjust NEWS file 2008-06-06 12:09:00 +00:00
Dr. Peter Poeml
86ad9766b2 - make submit request possible without giving commandline arguments, under some
circumstances -- when there is a working copy, and the package is a source
  link, osc will figure out what's needed.
- don't stop submitrequests on packages that have a devel project defined, if
  the submit comes from that project.
- osc checkout: checkout of source links is now done in expanded form per
  default. --unexpand-link can be used to get the raw link file (and patches).
2008-06-06 12:04:34 +00:00
Dr. Peter Poeml
916346f8c6 Show the <summary> from the server reply's body also for 403 errors. 2008-06-06 10:55:17 +00:00
Dr. Peter Poeml
8362728a8e bump version to 0.102 2008-06-03 15:12:49 +00:00
Dr. Peter Poeml
5438e4023a osc submitreq: look up the develproject of the target, and if there is one,
don't create the request, unless forced with --nodevelproject.
2008-06-03 15:01:01 +00:00
Dr. Peter Poeml
7641ed0c8c osc branch: add --nodevelproject 2008-06-03 13:16:55 +00:00
Dr. Peter Poeml
98090f8b09 make 'osc branch' show the actually created branch project name, not a guess one. 2008-06-03 12:43:52 +00:00
Dr. Peter Poeml
5000e4e148 A less confusing version of the last fix. 2008-06-03 12:33:29 +00:00
Dr. Peter Poeml
65e4d5bdd1 when -d (global, for debug) was used, save the body because it can't be read twice 2008-06-03 12:31:41 +00:00
Dr. Peter Poeml
f8daea6288 bump version (0.101) and update NEWS file 2008-05-27 11:03:21 +00:00
Dr. Peter Poeml
3f9b53ca6e osc branch: use --expand-link in the example that shows how to check out the
branched package
2008-05-26 13:12:05 +00:00
Dr. Peter Poeml
bbe533087e improve error handling, by printing the <summary> given by the API for HTTP status code 400 (bad request) 2008-05-21 16:38:50 +00:00
Dr. Peter Poeml
ac55bcaa5a make help of osc init clearer 2008-05-21 16:10:20 +00:00
Dr. Peter Poeml
d8245f5f36 - add osc branch command, using the branch API call to branch a package to
home:poeml:branches:PRJ/PKG
2008-05-21 15:49:00 +00:00
Dr. Peter Poeml
7e524fd442 - osc commit: open $EDITOR for commit message
- osc status: implement -q/--quiet switch
- osc deletepac: allow deletion of multiple packages at once
- osc info: slightly more verbose
- core.edit_message() added
- core.getStatus() accepts new "quiet" argument
- oscerr.UserAbort added
2008-05-21 13:44:49 +00:00
Marcus Hüwe
3c5a25f1a5 - don't do any exception handling in the sync() method of the metafile() class. It's up to the caller what to do in case of an exception
- edit_meta(): raise an exception instead of printing an "useless" error message.
- make "osc meta prjconf <project> -e" work again (probably r3702 caused the problem)
2008-05-20 16:03:08 +00:00
Tom Patzig
4476afafd7 -cosmetic changes for rprjresults and rresults
-show Legend for prjresults only, if there are also packages to show
2008-05-20 11:36:16 +00:00
Marcus Hüwe
aba87c08dd - added 'file_ext' key to the metatypes dict(). This key contains the filename extension for the particular metatype. This way we achieve that each metatype has the correct syntax highliting when running "osc meta -e <metatype>..." (e.g. prjconf => .txt, pkg => .xml etc.) 2008-05-20 09:23:57 +00:00
Dr. Peter Poeml
d80c47c0b9 - osc maintainer:
-D devel_project, --devel-project=devel_project
                        define the project where this package is primarily
                        developed
- core: add addDevelProject() method
2008-05-20 08:29:54 +00:00
Dr. Peter Poeml
fd0c04477b - update version to 0.100
- decouple osc's version number from the versioning of the .osc storage
  directory data format. The latter gets __store_version__ = 1.0 now.
2008-05-19 14:56:59 +00:00
Tom Patzig
abb97eb595 -new command rprjresults, to show remote project results
-new command rresults, to show remote package results
2008-05-16 12:25:50 +00:00
Tom Patzig
e69486bdc8 -in status-filter mode only show repos with the matching status
(in name-filter/or mixed  mode all repos are shown)
2008-05-16 11:15:41 +00:00
Tom Patzig
abcb4f8489 - legend in prjresults is default enabled
- added status-filter and name-filter option to prjresults
2008-05-15 18:09:24 +00:00
Dr. Peter Poeml
db6dcbe8a9 treat build status 'finished' as 'building' 2008-05-15 15:44:57 +00:00
Marcus Hüwe
34e7822bbb - added --baselibs option to osc build 2008-05-08 12:21:57 +00:00
Marcus Hüwe
3e0ba6285b - don't exit when there's nothing to do for a package (instead simply return)
- there's no need to catch SystemExit's when creating a new package or committing something
2008-05-08 11:55:32 +00:00
Michal Marek
25ab4d7af6 fix KeyError exception when a status is missing in the result 2008-05-05 12:27:34 +00:00
Marcus Hüwe
f041ee43ba - use absolute pathnames for preferred package dirs 2008-05-04 14:00:42 +00:00
Marcus Hüwe
602c146663 - return a real string instead of an tuple when invoking 'print' on the object 2008-05-03 18:25:24 +00:00
Pavol Rusnak
afec162189 - added --keep-maintainers switch to copypac
(do not remove original maintainers and replace them with caller)
2008-04-30 12:28:25 +00:00
Dr. Peter Poeml
3018460596 Merged revisions 3774-3775,3779,3781-3782,3787,3789-3793,3798,3802,3805,3817-3822,3827,3829-3830,3837-3839,3841-3842,3848-3850 via svnmerge from
https://forgesvn1.novell.com/svn/opensuse/branches/buildservice/osc-exception-handling

........
  r3774 | poeml | 2008-04-22 17:39:45 +0200 (Tue, 22 Apr 2008) | 3 lines
  
  A first draft on implement systematic exception handling: 
  Add errors.py with some exceptions defined, and babysitter.py to handle them
........
  r3775 | poeml | 2008-04-22 22:34:12 +0200 (Tue, 22 Apr 2008) | 9 lines
  
  - new global options:
       --debugger         jump into the debugger before executing anything
       --post-mortem      jump into the debugger in case of errors
       -t, --traceback    print call trace in case of errors
  - traceback and post_mortem can also be set in .oscrc.
  - catch more errors (HTTPError).
  - make config accessible from outside of the Osc instance, by making it a class
    attribute
........
  r3779 | poeml | 2008-04-23 00:55:49 +0200 (Wed, 23 Apr 2008) | 5 lines
  
  - new global option:
       -d, --debug        print info useful for debugging
  - catch some more errors (HTTPError), with OscHTTPError which isn't very
    advanced yet.
........
  r3781 | Marcus_H | 2008-04-23 01:02:00 +0200 (Wed, 23 Apr 2008) | 2 lines
  
  - added OscConfigError class (just for testing).
  - small change in the signature of the OscBaseError constructor (actually we should get rid of the 'args' tuple because it will be deprecated sooner or later
........
  r3782 | Marcus_H | 2008-04-23 02:02:13 +0200 (Wed, 23 Apr 2008) | 2 lines
  
  - access the prg.conf.config dict in a save way - this way we avoid AttributeErrors if the prg.conf.config dict doesn't exist
  - in case of an configparser error we have to use the prg.options object directly (this was removed in r3781 by accident)
........
  r3787 | poeml | 2008-04-23 09:23:56 +0200 (Wed, 23 Apr 2008) | 4 lines
  
  - remove local exception handling from do_req
  - for HTTPError, print details (headers and response) when in debug mode
  - catch AttributeError
........
  r3789 | poeml | 2008-04-23 16:23:14 +0200 (Wed, 23 Apr 2008) | 4 lines
  
  - errors: add two new classes named OscWrongOptionsError and OscWrongArgsError
  - commandline: raise instances of the new errors in a number of places
  - commandline: add get_cmd_help() to Osc instance which returns the formatted help of a subcommand
........
  r3790 | Marcus_H | 2008-04-23 16:48:28 +0200 (Wed, 23 Apr 2008) | 4 lines
  
  - added 2 new exception classes: OscNoConfigfileError and OscIOError
  - added new method write_config() to the conf.py module: This method writes osc's configuration file
  - minor cleanups in the conf module
........
  r3791 | poeml | 2008-04-23 17:11:07 +0200 (Wed, 23 Apr 2008) | 3 lines
  
  small compatibility fix for r3790: try-except-finally isn't supported in
  python-2.4.2, thus do the same as try-except inside a try-finally.
........
  r3792 | poeml | 2008-04-23 17:37:53 +0200 (Wed, 23 Apr 2008) | 2 lines
  
  fix up the remaining places regarding handling of errors related to commandline parsing
........
  r3793 | poeml | 2008-04-23 17:40:34 +0200 (Wed, 23 Apr 2008) | 3 lines
  
  raise a NoWorkingCopyError in osc.core.store_read_project() in case of an
  IOError
........
  r3798 | Marcus_H | 2008-04-23 23:55:24 +0200 (Wed, 23 Apr 2008) | 1 line
  
  ported -r3797 from trunk
........
  r3802 | Marcus_H | 2008-04-24 11:00:55 +0200 (Thu, 24 Apr 2008) | 1 line
  
  ported -r3801 from trunk
........
  r3805 | poeml | 2008-04-24 12:52:30 +0200 (Thu, 24 Apr 2008) | 2 lines
  
  raise OscHTTPError in show_pattern_meta(), replacing local error handling
........
  r3817 | poeml | 2008-04-24 20:21:32 +0200 (Thu, 24 Apr 2008) | 9 lines
  
  - remove errors.OscHTTPError again.
    it seems simpler to use urllib2.HTTPError instead (and just add a specific
    error text message where appropriate, and re-raise)
  - for 404s, check out _which_ part was not found
    it is very ugly, but may be considered Good for pragmatic reasons
  - removed local exception handling and workaround for returned 500's from
    delete_package() and delete_project(), thereby getting rid of 4 possible exit
    points.
........
  r3818 | Marcus_H | 2008-04-24 22:36:17 +0200 (Thu, 24 Apr 2008) | 1 line
  
  - this check is superfluous because every HTTPError instance has a code attribute
........
  r3819 | poeml | 2008-04-25 00:39:39 +0200 (Fri, 25 Apr 2008) | 1 line
  
  remove a forgotten debug line from core.delete_project()
........
  r3820 | poeml | 2008-04-25 10:07:58 +0200 (Fri, 25 Apr 2008) | 2 lines
  
  - ditch local error handling from wipebinaries(), rebuild(), and abortbuild()
........
  r3821 | poeml | 2008-04-25 10:56:38 +0200 (Fri, 25 Apr 2008) | 2 lines
  
  It is never needed to import the exception module.
........
  r3822 | poeml | 2008-04-25 11:13:39 +0200 (Fri, 25 Apr 2008) | 4 lines
  
  - when going into the debugger with --post-mortem, always print a traceback before
    (thus implying -t)
  - do not jump into the debugger if not on a TTY, or working in interactive mode
........
  r3827 | poeml | 2008-04-25 13:07:46 +0200 (Fri, 25 Apr 2008) | 9 lines
  
  - add errors.OscWorkingCopyOutdated, which takes a tuple with three args:
    path to working copy, current rev, expected rev
  - add handler for urllib2.URLError errors to the babysitter
  - simplify the OscWrongArgsError and OscWrongOptionsError handlers, by removing
    the extra line "Sorry, wrong ..." that was printed before the messages given
    when the error was raised.
  - remove one more errors.OscHTTPError which was still there, and raise
    urllib2.HTTPError instead (show_package_meta())
........
  r3829 | poeml | 2008-04-25 14:19:10 +0200 (Fri, 25 Apr 2008) | 11 lines
  
  - comment some methods in osc.core which are used by nearly all do_* methods in
    osc.commandline
  - improve "is not a package/project dir" error messages, by printing the
    absolute path tried, instead of '.' for the cwd
  - make core.store_read_package() raise a proper NoWorkingCopyError instead of
    terminating
  - give attribution to things in babysitter.py copied from mercurial
  - prefix HTTPError exceptions with 'Server returned an error:'
  - remove obsolete local error handling from do_prjresults(), do_importsrcpkg(),
    do_repos()
........
  r3830 | poeml | 2008-04-25 14:29:35 +0200 (Fri, 25 Apr 2008) | 1 line
  
  catch IOError exceptions in the babysitter
........
  r3837 | poeml | 2008-04-25 17:27:36 +0200 (Fri, 25 Apr 2008) | 5 lines
  
  - do_remotebuildlog: raise errors for wrong arguments, remove exits
  - raise AttributeError in make_meta_url() instead of exiting
  - delete unused method core.delete_server_files()
  - replace exit call inside make_meta_url() with an AttributeError 
........
  r3838 | poeml | 2008-04-25 17:49:18 +0200 (Fri, 25 Apr 2008) | 1 line
  
  simplify the check in do_checkout if a project exists, by using show_project_meta() instead of meta_exists
........
  r3839 | poeml | 2008-04-25 18:31:26 +0200 (Fri, 25 Apr 2008) | 6 lines
  
  - commandline do_checkout(): change the order of the two checks, first do the
    (cheaper) check for existing directory
  - core.core checkout_package(): simplify the check in if the package
    exists, by using show_package_meta() instead of meta_exists
    Let it throw an exception, instead of using sys.exit().
........
  r3841 | Marcus_H | 2008-04-27 15:48:06 +0200 (Sun, 27 Apr 2008) | 5 lines
  
  - added 2 new exception classes: PackageError() and PackageExistsError. The PackageError() class is meant to be the base class for all subsequent package exceptions.
  - get rid of 2 sys.exit(1) calls
  - make the update() method of the Project() class safer: in any case we have to write the _packages file otherwise the package tracking will be screwed up.
  - minor fix in delPackage(): use getTransActPath() when printing out the filename
........
  r3842 | Marcus_H | 2008-04-27 16:52:55 +0200 (Sun, 27 Apr 2008) | 3 lines
  
  - make the commit() method safe: in any case we have to write the _packages file otherwise the package tracking will be screwed up.
  - removed another sys.exit(1): raise an exception if a package is missing when doing a commit. For now we use the PackageExistsError() exception but this might change in the future (updated description of PackageExistsError() according to this change)
........
  r3848 | poeml | 2008-04-28 12:46:45 +0200 (Mon, 28 Apr 2008) | 3 lines
  
  rename several error classes, dropping the "Osc" prefix, and "Error" suffix in
  cases where they don't really make sense.
........
  r3849 | poeml | 2008-04-28 12:57:32 +0200 (Mon, 28 Apr 2008) | 3 lines
  
  - rename osc.errors module to osc.oscerr, to make it easier to import it from
    other programs and have a crystal clear namespace
........
  r3850 | poeml | 2008-04-28 13:26:12 +0200 (Mon, 28 Apr 2008) | 2 lines
  
  split PackageExists exception class into PackageExists and PackageMissing
........
2008-04-28 16:37:44 +00:00
Dr. Peter Poeml
5d7df534ee submitreq show: fix the --diff option; the diff was shown reversed. (bnc#379519) 2008-04-28 09:39:07 +00:00
Marcus Hüwe
2440bed285 - added --job option to the do_build() command. (this option will be passed to build script) 2008-04-24 09:00:23 +00:00
Marcus Hüwe
4c6ce9ae56 - added new method getStatus() which calculates the status of certain packages
- cleaned up do_status() and added support for multiple project dirs (osc st prj_dir1 /path/to/prj_dir2 ...)
2008-04-23 21:51:24 +00:00
Dr. Peter Poeml
40642ecaf4 save cookies even in case of urllib2.HTTPError exceptions [bnc#378421] 2008-04-23 07:07:45 +00:00
Marcus Hüwe
a4f4488a50 - fixed KeyError when printing the new_conf_template 2008-04-22 22:43:00 +00:00
Dr. Peter Poeml
34b5b109ac remove osc.core.urlopen(), which is depracated since at least a year 2008-04-22 22:41:49 +00:00
Dr. Peter Poeml
5d6984ac64 remove code that was added in commit 3504 for debugging purposes, but never used.
(Bug https://bugzilla.novell.com/show_bug.cgi?id=369176, empty responses from
api.opensuse.org.)
2008-04-22 22:35:48 +00:00
Marcus Hüwe
a13e822838 - use "rev=upload" when deleting otherwise this would result in a double commit (if "rev=upload" is not specified bs_srcserver does a "real" commit and additionally osc sends a request do a commit => 2 commits) 2008-04-21 15:07:34 +00:00
Michal Marek
c4f7b89062 warn only once for each unknown status in 'osc prjresults' 2008-04-18 11:37:19 +00:00
61e2a77eb1 fix api call to request log file file. This was the legacy call, which
seems not to work anymore.
2008-04-14 07:07:08 +00:00
6debf60892 temporary workaround for cookie handling problem by Andreas 2008-04-12 08:04:41 +00:00
Michal Marek
0835580d59 Abort if meta_exists encounters an unexpected error (bnc#377693).
The correct fix is to propagate this to commandline.py and exit() there.
2008-04-11 10:49:43 +00:00
Marcus Hüwe
e9176c7513 - fixed bug #378752 (osc fails to delete patterns) 2008-04-10 21:04:17 +00:00
Marcus Hüwe
80ab6bf345 - fixed bug #359846:
the BUILD_DIST environment variable will be ignored by osc
- the following environment variables can still be used:
  # OSC_SU_WRAPPER overrides the setting of su-wrapper. 
  # OSC_BUILD_ROOT overrides the setting of build-root.
  # OSC_PACKAGECACHEDIR overrides the setting of packagecachedir.
  (now they're documented in the helptext)
2008-04-09 18:45:59 +00:00
Dirk Mueller
5c064bc2c1 fix latent file descriptor leak in get_source_file() 2008-04-07 09:55:11 +00:00
Marcus Hüwe
d9ee2be26d - ignore dot packages too 2008-04-03 10:46:18 +00:00
Marcus Hüwe
a3f948dede - fixed bug #376285:
* make_dir() and checkout_package() got a new optionally 'prj_dir'     parameter. This parameter specifies in which dir we want to create new project/package dirs.
2008-04-02 15:30:44 +00:00
Dr. Peter Poeml
e62dd94cc0 copypac: make the server-side copy the default. But do a client-side copy if source and target are not on the same buildservice instance. 2008-04-02 14:36:23 +00:00
Dr. Peter Poeml
cc02e878b0 change some places where queries are passed to makeurl(). Use dictionaries for
that, which causes makeurl() to automatically do the quoting work.
2008-04-02 14:07:40 +00:00
Dr. Peter Poeml
6e5d41f481 - a slight simplification -- rev=upload is always okay. 2008-04-02 12:54:26 +00:00
Dr. Peter Poeml
5e5ca2e020 implement committing with keeping links 2008-04-02 12:37:56 +00:00
Dr. Peter Poeml
11fa192b33 - ignore all dot files (the buildservice doesn't handle them)
- fix Project class (used by the "package tracking" code path)
  to use fnmatch.fnmatch() on the list of exclude expressions
2008-03-31 14:42:11 +00:00
Marcus Hüwe
a20e354d07 - small apiurl fixes 2008-03-27 00:36:17 +00:00
Dr. Peter Poeml
a0bae2ab52 osc update: fix diff3 merging for expanded links, by adding the revision to the
get_source_file() call in the mergfile method.
2008-03-26 16:11:11 +00:00
Dr. Peter Poeml
3db9e6449c Link handling:
Add support for handling linked packages in expanded form. They can be checked
out, updated (expanding or unexpanding them), and built locally.
Missing: commit support.

Newly introduced options are:
- osc checkout: --expand-link 
- osc update: --expand-link and --unexpand-link 

Other changes:
- osc core: add show_upstream_xsrcmd5() method which returns the xsrcmd5 (if a
  linkinfo element exists only, of course)
- made updating of expanded sources work with package tracking, too.
2008-03-24 20:24:49 +00:00
Dr. Peter Poeml
2fa94dcf23 core:
- add isexpanded() method to Linkinfo class
 - add isexpandedlink() method to Package class
 - read lsrcmd5 and srcmd5 from the linkinfo element, which are present in
   expanded links.
osc info: 
 - make it show info about expanded and non-expanded links
2008-03-22 17:37:17 +00:00
Dr. Peter Poeml
f5af255798 core: relax the revision id check, so that source md5 sums are accepted 2008-03-22 16:35:22 +00:00
Dr. Peter Poeml
892e644f59 - add Linkinfo class to osc.core
- Package class: 
  - add linkinfo when reading in package data via update_datastructs()
  - add islink() method
2008-03-22 13:37:59 +00:00
Dr. Peter Poeml
64f3d8c55e submitreq show: if the target package doesn't exist, a diff cannot be produced. 2008-03-20 20:11:30 +00:00
Dr. Peter Poeml
c2c406aab2 submitreq: adjust to renamed API calls and XML ("merge" -> "submit") 2008-03-20 19:17:40 +00:00
Marcus Hüwe
303e5dcffc - all necessary auth-information are available in the 'auth_dict' (so there's no need to fool around with the ConfigParser...) 2008-03-18 13:51:57 +00:00
Marcus Hüwe
3c3e961f4e - minor fix in createPackageDir
- osc mkpac only works when 'do_package_tracking' is enabled
2008-03-17 23:43:32 +00:00
Marcus Hüwe
3fdf758dbb - do_repos() should work in a project dir too 2008-03-17 23:24:28 +00:00
Dr. Peter Poeml
2493ea555a - copypac: do a server-side copy (via a single api call) when
used with -s / --server-side. 
  This might be the default behaviour later.
  An option to specify the source revision is missing yet.
2008-03-17 21:46:42 +00:00
Dr. Peter Poeml
8ce42e2dd9 change osc.core.pretty_diff() to call makeurl() with a query dict 2008-03-17 21:39:27 +00:00
Dr. Peter Poeml
140a331c40 Enhance osc.core.makeurl(). This function accepts a query parameter in form of
a list. The query can now also be given as a dictionary, and in that case it
will be automatically urlencoded. The behaviour for a list is unchanged for 
the reason of backward compatibility.
2008-03-17 21:10:34 +00:00
Dr. Peter Poeml
54c1690309 osc req: add option -a / --add-header to add arbitrary request headers 2008-03-16 20:46:16 +00:00
Dr. Peter Poeml
7b91075229 handle mmap failure on filesystems like NTFS, which may not support
memory mapping when mounted under Linux
2008-03-16 19:02:38 +00:00
Marcus Hüwe
5d57d7e299 - added 3 new methods:
* createPackageDir(): create and initialize a new package dir in
    the given project.
  * get_apiurl_usr(): returns the username for a certain apiurl
  * get_configParser(): returns an ConfigParser() object which can be
    used for parsing the ~/.oscrc file
- fixed username issues when creating a new package (the problem was
  that the username for the default host was used and not the one for
  that specific apiurl)
- some small fixes in the do_importsrcpkg() method
2008-03-15 22:51:37 +00:00
Marcus Hüwe
c307449167 - we only need the "<entry />" nodes - otherwise listing files of a linked package fails 2008-03-13 21:45:24 +00:00
Dr. Peter Poeml
e8899aa165 if there are no credentials for the apisrv in use (which may be specified with
-A on the commandline), don't try to set up config['user'] with credentials.
2008-03-13 16:15:41 +00:00
Pavol Rusnak
734973a0bd csv exported project results now use ';' as default 2008-03-13 11:13:22 +00:00
Dr. Peter Poeml
2bf92fce75 submitreq:
- when requesting a submit, save the source package's revision id (looking up
   what it currently is)
 - give the user a way to override it, to submit an older revision
 - when using show --diff, take the actual old revision into account. Thus, the
   diff is against the source revision of the time of request creation.
2008-03-12 23:37:35 +00:00
Dr. Peter Poeml
6ab8fb52c7 - remove remove obsolete, commented code (do_editpac(), do_editprj())
- fix a small tabbing issue
2008-03-12 18:26:41 +00:00
Dr. Peter Poeml
241f528dc4 implement a submitreq 'accept' action, resulting in the respective state change 2008-03-12 18:22:11 +00:00
Dr. Peter Poeml
8fc20cfc74 ...which doesn't work. There are other requests where 0-replies are possible. 2008-03-11 17:09:25 +00:00
Dr. Peter Poeml
dad51ee405 add a temporary debug path to http_debug() for bug 369176 (empty responses from api.opensuse.org) 2008-03-11 16:39:47 +00:00
Dr. Peter Poeml
3f244d4b23 remove two stray lines which sneaked into osc/build.py with the last commit 2008-03-11 15:34:42 +00:00
Jürgen Weigert
0334ea4218 add --debuginfo switch to osc build 2008-03-11 15:18:02 +00:00
Dr. Peter Poeml
c0fabfc449 merged the package-tracking branch changes r2404:3491 into the trunk. 2008-03-10 18:04:23 +00:00
Michal Marek
3613893199 better fix: use %(mapping keys)s in templates 2008-03-07 09:13:30 +00:00
Michal Marek
ad2493d496 fixed last change (r3445) 2008-03-07 09:01:13 +00:00
3e30545e7b define bugowner by default for new project/package (just part of the
template, can be removed by the user)
2008-03-07 08:24:48 +00:00
Dr. Peter Poeml
d87de082c2 submitreq:
- rename 'refuse' -> 'decline', which is more polite.
  - show: make the diff optional
  - add RequestState class
  - handle state history
  - implement 'decline' action
2008-03-06 10:25:45 +00:00
Dr. Peter Poeml
d63779a6a4 rename the new merge requests to submit requests 2008-03-05 23:51:48 +00:00
Dr. Peter Poeml
f52458fdc5 osc mergereq show: suppress requests which are deleted or declined 2008-03-05 21:41:30 +00:00
Susanne Oberhauser
b4df120e5b - adjust osc init docstring to new realities (osc meta instead of osc
createpac)
2008-03-05 21:05:17 +00:00
Dr. Peter Poeml
488e14a0d8 typo accepd -> accept 2008-03-04 23:48:34 +00:00
Dr. Peter Poeml
aec7129a9b - add a new subcommand 'mergereq' to handle merge requests. So far, it can
create, list, show requests.
- internally, add a MergeReq class, and do the needed (HTTP) requests.
2008-03-04 23:41:00 +00:00
Michal Marek
6c20c7203f fix importsrcpkg when $projectdir/.osc/_apiurl is an alternative apiurl 2008-03-03 13:51:01 +00:00
Marcus Hüwe
016c80db86 - added optional apiurl parameter to the following methods:
meta_exists, make_meta_url, checkRevision
  if no apiurl parameter is specified the global value (conf.config['apiurl'])
  will be used. This should fix bug #361764
- some small apiurl fixes in the make_diff method (the package_tracking branch already has this fix)
2008-02-18 13:44:20 +00:00
Michal Marek
3dd6ef0f71 added option --csv to 'osc prjresults' to output a CSV table 2008-02-12 12:45:06 +00:00
Dr. Peter Poeml
8d52b94a6f - osc build: if the build fails, print out the buildroot, so it it at hand for debugging 2008-01-24 18:18:03 +00:00
Dr. Peter Poeml
63e4d8da3c - osc build: add --no-verify, to skip the package signature verification step 2008-01-24 18:06:45 +00:00
Marcus Hüwe
0e9e76ea68 - build: use the apiurl which is stored in the storedir (.osc/_apiurl)
when running osc build.
  This should fix bug #355144
2008-01-23 19:37:44 +00:00
Dr. Peter Poeml
646be729e7 fix display of built rpms in build.py (when did that broke??)
thereby fixing osc build --keep-pkgs
2008-01-22 23:49:31 +00:00
Marcus Hüwe
f8b5963c7a - check if a project exists before initializing the project dir 2008-01-18 10:35:57 +00:00
Marcus Hüwe
2e263514f8 - return a list instead of a tuple (this was already fixed in the packaging-branch) 2008-01-17 19:33:02 +00:00
Marcus Hüwe
a8788c2c4e - added revision option to do_cat() 2008-01-15 18:58:58 +00:00
Marcus Hüwe
c6249087f9 fixed typo: borken -> broken 2008-01-11 16:44:08 +00:00
Marcus Hüwe
5306a78503 - added two new options to osc build:
* --local-package: use this option if you're trying to build a
    package which doesn't exist on the server
  * --alternative-project <project>: use this option to specify an
    alternative project if the current project doesn't exist on the
    server, e.g.: osc build [OPTS] --alternative-project openSUSE:10.3 standard i586 BUILD_DESCR
- some other minor cleanups in build.py
- get_repos_of_project() is now a generator function
2008-01-07 14:54:31 +00:00
Marcus Hüwe
53e1640b1e - added new command "remotebuildlog" to show the buildlog of a package
(you don't have to checkout the package to view the buildlog)
- renamed "get_log()" to "get_buildlog" to avoid any confusion with
  "get_commitlog()"
- added new method "print_buildlog()" which prints out the buildlog on the
  standard output
2008-01-03 22:10:16 +00:00
Marcus Hüwe
5242289d3d - do_cat(): do not print a newline (strip the trailing '\n' from string) 2007-12-13 12:00:16 +00:00
Marcus Hüwe
dbfcb32435 - fixed bug #347377
- other minor fixes in make_diff()
2007-12-13 11:31:31 +00:00
Dr. Peter Poeml
6781119d43 - cat: simplify the code a bit; don't print header and footer lines
- unification of the help output of some commands
2007-12-10 14:23:58 +00:00
Dr. Peter Poeml
7826163ca2 bugfix in build: in order to verify package signatures, run the external rpm
command with en_EN locale, because the output is being parsed
2007-12-10 14:10:40 +00:00
Dr. Peter Poeml
aca6c6979e cat: fix the test if the file is binary, which swallowed the first 4098 bytes 2007-11-30 10:28:00 +00:00
Dr. Peter Poeml
9aafba838f improve wording in rdiff documentation 2007-11-29 17:32:52 +00:00
Dr. Peter Poeml
620bc2ea68 add rdiff subcommand, to allow server-side diffs between arbitrary packages 2007-11-29 17:22:57 +00:00
Marcus Hüwe
d4bfd42bb4 - copied init_project_dir() method from the osc-package-tracking branch (just removed the do_package_tracking stuff)
- checkout an empty project instead of doing nothing
2007-11-29 12:54:07 +00:00
Marcus Hüwe
7b9f85f97f - reworked the diff functionality:
* some new things like showing newly added files
  * moved the whole code into a new methode (make_diff())
  * behave more like svn when doing a diff against a certain revision
- changed the storedir attribut of the Package() class to an absolute
  filename - normally this shouldn't have any impact on existing methods, functionality etc.
2007-11-26 18:13:51 +00:00
Marcus Hüwe
5518e15673 - make sure that the package meta has a <person> element and remove
all <person> elements from the orginal package (this change affects
  {link,aggregate,copy}_pac).
  Patch from Michal Marek <mmarek@suse.cz> - thanks!
2007-11-09 18:03:19 +00:00
Marcus Hüwe
69e3fd1d4e - added new "cat" command to print a file on the standard output 2007-11-02 18:18:30 +00:00
Dr. Peter Poeml
675901bc5d - aggregatepac: new command, similar to linkpac. Patch from Pavol Rusnak.
- prjresults: for newly added packages, build status may be missing. Cope with that.
2007-10-30 13:45:54 +00:00
Dr. Peter Poeml
420b9cf25c bump version to 0.99; update NEWS file 2007-10-30 11:47:06 +00:00
Marcus Hüwe
db692ce10e - fixed bug #259711 (do not create dirs for non-existing packages during checkout) 2007-10-27 20:19:12 +00:00
Marcus Hüwe
42e128687d - added --build-failed and --broken options to the do_wipebinaries()
method (this also fixes bug/enhancement #335498)
2007-10-27 19:13:24 +00:00
Marcus Hüwe
d0b0b1bdb5 enabled deletion of packages as the backend now supports it. 2007-10-13 23:15:49 +00:00
Marcus Hüwe
69b7e3bfc7 added a bit more functionality to do_maintainers. It is possible to add and delete users from a project/package 2007-09-12 18:01:13 +00:00
Dr. Peter Poeml
bd9ae2fd05 print the list of URL to try, when in HTTP debug mode 2007-09-10 12:22:13 +00:00
Marcus Hüwe
40d2ce205e - added verbose option to do_maintainers:
* it basically lists some more information about
    each maintainer
- replaced get_user_email() with get_user_data()
2007-09-03 16:18:37 +00:00
Dr. Peter Poeml
9ce40d4bab - build: allow to use lbuild, a compatible replacement for build 2007-09-03 14:52:45 +00:00