1
0
mirror of https://github.com/openSUSE/osc.git synced 2024-11-10 06:46:15 +01:00
The Command Line Interface to work with an Open Build Service
Go to file
2006-05-21 11:00:42 +00:00
osc fix diff for last change (of course it was reverse) 2006-05-19 20:28:04 +00:00
osc_hotshot.py add osc_hotshot.py, a wrapper script for profiling osc.py 2006-04-27 13:59:34 +00:00
osc-wrapper.py 0.3 2006-05-19 20:13:29 +00:00
README use redirector url 2006-05-21 11:00:42 +00:00
setup.py 0.3 2006-05-19 20:13:29 +00:00
TODO 0.3 2006-05-19 20:13:29 +00:00

osc -- opensuse-commander with svn like handling

>>> BUG: at the moment, 'up' overwrites files with
         local modifications.


Please send patches to poeml@suse.de, or work directly on
https://forgesvn1.novell.com/svn/opensuse/trunk/buildservice/src/clientlib/python/osc/


INSTALLATION:

RPM packages are here (yum repository):
http://software.opensuse.org/download/repositories/openSUSE:Tools/

To install from svn, do
	python setup.py build
	python setup.py install
	# create a symlink 'osc' in your path pointing to osc.py.
	ln -s osc-wrapper.py /usr/bin/osc

Alternatively, you can directly use osc-wrapper.py from the source dir


The program needs the following python packages installed (that's their names
on SUSE anyway): 
	pyxml 
	python-elementtree




CONFIGURATION:

osc uses authentication data if it finds it in .netrc, otherwise it will ask
for username/password once, and store it in ~/.oscrc.



USAGE EXAMPLES:

osc ls 				# list projects
osc ls Apache 			# list packages in a project 
osc ls Apache subversion 	# list files of package of a project

# check out 
osc co Apache 			# entire project
osc co Apache subversion	# a package
osc co Apache subversion foo	# single file

# update working copy
osc up
osc up <directory>
osc up * 			# from within a project dir, update all packages

# check in
osc ci				# current dir
osc ci <dir>
osc ci file1 file2 ...

# show status
osc st
osc st <directory>
osc st file1 file2 ...

# initialize a source directory to be a 
# working copy of project <prj> package <pac>
osc init <prj> <pac>

# schedule files foo to be added / deleted
osc add file1 file2 ...
osc rm file1 file2 ...

# add all unknown files AND remove all missing files
osc addremove

# show diff
osc diff 			# current dir
osc diff file1 file2 ...

# show build results (xml)
osc results
osc results [platform]

# show logfile (must be run from workingdir)
osc log <platform> <arch>

# show platforms
osc platforms
# show platforms used by project Apache
osc platforms Apache

# show various xml meta
osc meta Apache
osc meta Apache subversion
osc id username




HINT FOR W3M USERS

Putting the following in the file ~/.w3m/passwd will make
w3m know the credentials for the buildservice servers:

"""
host api.opensuse.org
  port 80
  realm Authentication required
  login foo
  password bar

host build.opensuse.org
  port 80
  realm openSUSE Build Service
  login foo
  password bar
"""

chmod 0600 ~/.w3m/passwd