The pre_checkin.sh is script run after each checkin of package into
SUSE. Osc build and commit commands now runs it automatically too,
unless --no-precheckin is specified.
su-wrapper = su -c has been broken since commit 5376580. Handle this
case so that people do not have to update their configs.
Signed-off-by: Michal Marek <mmarek@suse.cz>
- rewrote Action class: instances only provide attributes for their specific type (for details see class doc).
Renamed "dst_project" attribute to "tgt_project" and "dst_package" attribute to "tgt_package" (only affects
types which have a <target /> element)
- added AbstractState class: Base class which represents state-like objects (<review />, <state />)
- rewrote ReviewState and RequestState classes
- rewrote Request class: apart from internal rewrites the format of the "__str__" and "list_view" methods
slightly changed
Now it should be much easier to create new requests without constructing the
request xml by hand.
Example:
r = Request()
r.add_action('submit', src_project='foo', src_package='bar', tgt_project='targetprj', tgt_package='targetpkg')
r.add_action('set_bugowner', tgt_project='foobar', person_name='buguser')
r.add_action('delete', tgt_project='prj', tgt_package='deleteme')
print r.to_str()
->
<request>
<action type="submit">
<source package="bar" project="foo" />
<target package="targetpkg" project="targetprj" />
</action>
<action type="set_bugowner">
<target project="foobar" />
<person name="buguser" />
</action>
<action type="delete">
<target package="deleteme" project="prj" />
</action>
</request>
This shows all the hard to retrieve, but 'essential' details about a
package: version, revision, srcmd5
If there is a better way some day, than digging through _history,
please improve core.py:get_source_rev()
It is a new option, only because it is so slow; the version
number should rather be in default output.
This shows all changes since branching, be they committed or not.
Implementation folded into do_diff() for reuse of code, although
this can behave quite differently.
- removed getStatus
- added the following new methods to the Project class:
* get_status: get the status of all packages in the project
* status: get the status of a single package
* get_pacobj: return a new Package object
- added the following new method to the Package class:
* get_status: get the status of all files in the package
- do_commit: fixed getStatus() call
- do_status: rewrite (uses new methods)
Revert a part of b3c5204, the do_main has to have at least one
argument, unless following exception will appear
osc.cmdln.CmdlnError: incorrect argcount for do_man(): takes 1, must
take 2 for 'argv' signature or 3+ for 'opts' signature
Signed-off-by: Petr Uzel <puzel@suse.cz>
Signed-off-by: Michal Vyskocil <mvyskocil@suse.cz>
Fix situation where osc has added a blank username to the keyring and
update the config parse script to do the right thing and not allow blank
usernames.
I was in a very confusing situation where my keyring ended up with two
entries:
- @api.suse.de
- philipsb@api.suse.de
And I was getting 401s because of it.
Signed-off-by: Brandon Philips <bphilips@suse.de>
There is a bug either in buildservice or in iChain which sometimes
truncates data and sends empty Content-Length header (see bnc#656281).
This patch makes osc retry request to workaround this problem.
The number of retries are configurable in config file as http_retries.