OSCRC(5) | osc | OSCRC(5) |
NAME¶
oscrc - openSUSE Commander configuration file
The configuration file path is $XDG_CONFIG_HOME/osc/oscrc, which usually translates into ~/.config/osc/oscrc.
- 1.
- environment variables: OSC_<uppercase_option> or OSC_<uppercase_host_alias>_<uppercase_host_option>
- 2.
- command-line options
- 3.
- oscrc config file
GENERIC OPTIONS¶
apiurl : str = "https://api.opensuse.org"
AUTHENTICATION OPTIONS¶
sshkey : str
- keep empty for auto detection
- path to the public SSH key
- public SSH key filename (must be placed in ~/.ssh)
- fingerprint of a SSH key (2nd column of ssh-add -l)
NOTE: The private key may not be available on disk because it could be in a GPG keyring, on YubiKey or forwarded through SSH agent.
TIP: To give osc a hint which ssh key from the agent to use during auto detection, append obs=<apiurl-hostname> to the private key's comment. This will also work nicely during SSH agent forwarding, because the comments get forwarded too.
- To edit the key, run: ssh-keygen -c -f ~/.ssh/<private-key>
- To query the key, run: ssh-keygen -y -f ~/.ssh/<private-key>
- Example comment: <username@host> obs=api.example.com obs=api-test.example.com
use_keyring : bool = 0
VERBOSITY OPTIONS¶
quiet : bool = 0
verbose : bool = 0
debug : bool = 0
http_debug : bool = 0
http_full_debug : bool = 0
post_mortem : bool = 0
traceback : bool = 0
show_download_progress : bool = 1
CONNECTION OPTIONS¶
http_retries : int = 3
cookiejar : str = "~/.local/state/osc/cookiejar"
SCM OPTIONS¶
realname : str
email : str
local_service_run : bool = 1
getpac_default_project : str = "openSUSE:Factory"
exclude_glob : space-separated-list = ".osc CVS .svn .* _linkerror *~ #*# *.orig *.bak *.changes.vctmp.*"
exclude_files : space-separated-list
include_files : space-separated-list
checkout_no_colon : bool = 0
project_separator : str = ":"
check_filelist : bool = 1
do_package_tracking : bool = 1
checkout_rooted : bool = 0
status_mtime_heuristic : bool = 0
linkcontrol : bool = 0
BUILD OPTIONS¶
build_repository : str = "openSUSE_Factory"
buildlog_strip_time : bool = 0
packagecachedir : str = "/var/tmp/osbuild-packagecache"
no_verify : bool = 0
builtin_signature_check : bool = 1
disable_hdrmd5_check : bool = 0
OBS builds the noarch packages once per binary arch. Such noarch packages are supposed to be nearly identical across all build arches, any discrepancy in the payload and dependencies is considered a packaging bug. But to guarantee that the local builds work identically to builds in OBS, using the arch-specific copy of the noarch package is required. Unfortunatelly only one of the noarch packages gets distributed and can be downloaded from a local mirror. All other noarch packages are available through the OBS API only. Since there is currently no information about hdrmd5 checksums of published noarch packages, we download them, verify hdrmd5 and re-download the package from OBS API on mismatch.
The same can also happen for architecture depend packages when someone is messing around with the source history or the release number handling in a way that it is not increasing.
If you want to save some bandwidth and don't care about the exact rebuilds you can turn this option on to disable hdrmd5 checks completely.
REQUEST OPTIONS¶
include_request_from_project : bool = 1
request_list_days : int = 0
This is only the default that can be overridden with osc request list -D <VALUE>. Use 0 for unlimited.
check_for_request_on_action : bool = 1
request_show_interactive : bool = 0
print_web_links : bool = 0
request_show_source_buildstatus : bool = 0
submitrequest_accepted_template : str
Supported substitutions: %(reqid)s, %(type)s, %(who)s, %(src_project)s, %(src_package)s, %(src_rev)s, %(tgt_project)s, %(tgt_package)s
Example:
Hi %(who)s, your request %(reqid)s (type: %(type)s) for %(tgt_project)s/%(tgt_package)s has been accepted. Thank you for your contribution.
submitrequest_declined_template : str
Supported substitutions: %(reqid)s, %(type)s, %(who)s, %(src_project)s, %(src_package)s, %(src_rev)s, %(tgt_project)s, %(tgt_package)s
Example:
Hi %(who)s, your request %(reqid)s (type: %(type)s) for %(tgt_project)s/%(tgt_package)s has been declined because ...
request_show_review : bool = 0
review_inherit_group : bool = 0
submitrequest_on_accept_action : str
Choices: cleanup, update, noupdate
BUILD TOOL OPTIONS¶
build-jobs : int
If the value is greater than 0 then it is passed as --jobs to the build tool.
build-type : str
- <empty> chroot build
- kvm KVM VM build (rootless, needs build-device, build-swap, build-memory)
- xen XEN VM build (needs build-device, build-swap, build-memory)
- qemu [EXPERIMENTAL] QEMU VM build
- lxc [EXPERIMENTAL] LXC build
- uml
- zvm
- openstack
- ec2
- docker
- podman (rootless)
- pvm
- nspawn
See build --help for more details about supported options.
build-memory : int
build-root : str = "/var/tmp/build-root%(dash_user)s/%(repo)s-%(arch)s"
Supported substitutions: %(repo)s, %(arch)s, %(project)s, %(package)s, %(apihost)s, %(user)s, %(dash_user)s where:
- ``apihost`` is the hostname extracted from the currently used ``apiurl``. - ``dash_user`` is the username prefixed with a dash. If ``user`` is empty, ``dash_user`` is also empty.
NOTE: The configuration holds the original unexpanded string. Call osc.build.get_build_root() with proper arguments to retrieve an actual path.
Passed as --root <VALUE> to the build tool.
build-shell-after-fail : bool = 0
Passed as --shell-after-fail to the build tool.
build-uid : str
Passed as --uid <VALUE> to the build tool.
build-kernel : str
build-initrd : str
build-device : str
Passed as --vm-disk <VALUE> to the build tool.
build-vmdisk-filesystem : str
Passed as --vm-disk-filesystem <VALUE> to the build tool.
build-vmdisk-rootsize : int
Passed as --vm-disk-size to the build tool.
build-swap : str
Passed as --swap to the build tool.
build-vmdisk-swapsize : int
Passed as --vm-swap-size to the build tool.
build-vm-user : str
icecream : int = 0
Passed as --icecream <VALUE> to the build tool.
ccache : bool = 0
Passed as --ccache to the build tool.
sccache : bool = 0
Passed as --sccache to the build tool.
sccache_uri : str
Supported URIs depend on the sccache configuration. The URI allows the following substitutions:
- •
- {pkgname}: name of the package to be build
Examples:
- file:///var/tmp/osbuild-sccache-{pkgname}.tar.lzop
- file:///var/tmp/osbuild-sccache-{pkgname}.tar
- redis://127.0.0.1:6379
Passed as --sccache-uri <VALUE> to the build tool.
no_preinstallimage : bool = 0
extra-pkgs : space-separated-list
This corresponds to osc build -x pkg1 -x pkg2 .... The configured values can be overriden from the command-line with -x ''.
This global setting may leads to dependency problems when the base distro is not providing the package. Therefore using server-side cli_debug_packages option instead is recommended.
Passed as --extra-packs <VALUE> to the build tool.
PATHS TO PROGRAMS¶
build-cmd : str = "/usr/bin/build"
download-assets-cmd : str = "/usr/lib/build/download_assets"
vc-cmd : str = "/usr/lib/build/vc"
su-wrapper : str = "sudo"
HOST OPTIONS¶
apiurl : str
aliases : space-separated-list
user : str
credentials_mgr_class : str
pass : Password
sshkey : str
- keep empty for auto detection
- path to the public SSH key
- public SSH key filename (must be placed in ~/.ssh)
- fingerprint of a SSH key (2nd column of ssh-add -l)
NOTE: The private key may not be available on disk because it could be in a GPG keyring, on YubiKey or forwarded through SSH agent.
TIP: To give osc a hint which ssh key from the agent to use during auto detection, append obs=<apiurl-hostname> to the private key's comment. This will also work nicely during SSH agent forwarding, because the comments get forwarded too.
- To edit the key, run: ssh-keygen -c -f ~/.ssh/<private-key>
- To query the key, run: ssh-keygen -y -f ~/.ssh/<private-key>
- Example comment: <username@host> obs=api.example.com obs=api-test.example.com
downloadurl : str
cafile : str
capath : str
sslcertck : bool = 1
allow_http : bool = 0
http_headers : newline-separated-list
Example:
http_headers =
X-Header1: Value1
X-Header2: Value2
trusted_prj : space-separated-list
disable_hdrmd5_check : bool
OBS builds the noarch packages once per binary arch. Such noarch packages are supposed to be nearly identical across all build arches, any discrepancy in the payload and dependencies is considered a packaging bug. But to guarantee that the local builds work identically to builds in OBS, using the arch-specific copy of the noarch package is required. Unfortunatelly only one of the noarch packages gets distributed and can be downloaded from a local mirror. All other noarch packages are available through the OBS API only. Since there is currently no information about hdrmd5 checksums of published noarch packages, we download them, verify hdrmd5 and re-download the package from OBS API on mismatch.
The same can also happen for architecture depend packages when someone is messing around with the source history or the release number handling in a way that it is not increasing.
If you want to save some bandwidth and don't care about the exact rebuilds you can turn this option on to disable hdrmd5 checks completely.
realname : str
email : str
AUTHOR¶
openSUSE project <opensuse-buildservice@opensuse.org>
COPYRIGHT¶
Contributors to the osc project
November 8, 2024 |