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

4118 Commits

Author SHA1 Message Date
0d239cc265 Change NoPBTextMeter to display no output at all 2023-10-13 20:36:55 +02:00
268424797a Fix retrieving config values in core.vc_export_env() 2023-10-13 20:34:09 +02:00
9067a803cc Fix retrieving the configured user in 'user' command
Testing if 'user' config value is present is not necessary,
because the 'username' field is mandatory in HostOptions
and there is also a check that prompts user to enter new credentials if
user is not set.
2023-10-13 20:23:26 +02:00
53968bf91c Fix retrieving a password in case a function returns another callable 2023-10-13 19:14:34 +02:00
225fea0e06 release 1.4.1 2023-10-10 20:06:27 +02:00
d678095d89 Fix core.change_request_state_template() to always return a string 2023-10-10 16:32:50 +02:00
c0e2f8c1a3 Always display apiurl when asking for credentials 2023-10-10 16:32:50 +02:00
61b5f7bebc Ask for new credentials when user is missing from an apiurl section in the config file 2023-10-10 16:32:50 +02:00
386c4e8b40 Fix testing revision for being empty
Revision 0 is a valid value, but conditions evaluate it as False along with None and "".
This change treats 0 as a proper revision.
2023-10-06 08:32:06 +02:00
90b821e777 Change 'rdiff' command to display diff for _project if no package is specified 2023-10-05 10:34:54 +02:00
62e4817ff5 release 1.4.0 2023-10-04 11:49:04 +02:00
a16654663b
Merge pull request #1415 from dmach/rootless-kvm-and-podman
Rootless kvm and podman
2023-10-04 09:12:18 +02:00
bd14f7e000
Merge pull request #1416 from adrianschroeter/keep_packages_locked
add support for keep_packages_locked on request revoke
2023-10-04 08:49:11 +02:00
ce72ffb225 Fix loading password from keyring 2023-10-03 09:12:28 +02:00
a6946587e1 Fix reading configuration from ENV 2023-09-29 09:54:50 +02:00
a33d4c2d41 Print a hint to clean the build root after a failed build 2023-09-29 09:53:59 +02:00
f6cb228242 Document that 'request revoke' command may need '--keep-packages-locked' option to avoid unlocking source packages 2023-09-29 08:33:55 +02:00
0848aba7b9 add support for keep_packages_locked on request revoke
jsc#OBS-134
2023-09-28 14:50:20 +02:00
41ce932673 Fix 'build' command to pass '--vm-type' option to the underlying build tool 2023-09-27 23:24:31 +02:00
47f32e6ef1 Update list of supported vm_type values in conf.Options.vm_type 2023-09-27 23:24:31 +02:00
28efb4396a Rename conf.Options.build_type to vm_type to be consistent with obs build and osc --vm-type option 2023-09-27 23:24:31 +02:00
88c2bf4fea Avoid adding a newline to prompt in 'wipe' command 2023-09-27 23:24:31 +02:00
8eb360234e Add rootless build support to 'build' command for 'kvm' and 'podman' vm types
To avoid filesystem permission collisions with the builds using su_wrapper,
use an alternative buildroot path that appends username to '/var/tmp/build-root' for the rootless builds.
2023-09-27 23:24:31 +02:00
2f1cb0edb1 Remove any duplicated code loading configuration from ENV
The current conf.get_config() function already handles loading from ENV.
Also, always use osc.build.calculate_build_root() instead of making a custom variable substitution.
2023-09-27 23:24:31 +02:00
ee725ff51b Fix a crash in 'Fix handling empty vm_type in Store.last_buildroot' when last_buildroot is empty 2023-09-25 14:41:17 +02:00
93cfb76a46 Fix handling empty vm_type in Store.last_buildroot 2023-09-25 10:16:00 +02:00
4b5534b070 Load empty optional configuration values as 'None' 2023-09-25 10:15:52 +02:00
f788db0d97 service: do not reject documented 'r' abbreviation for 'run' 2023-09-19 16:57:36 +02:00
d0c80e71a9
Merge pull request #1409 from dmach/rq-show-supersede
Fix 'request show' command to print superseded_by information
2023-09-14 14:59:15 +02:00
9361d78012 Fix 'request show' command to print superseded_by information 2023-09-14 14:40:49 +02:00
1d47dfc89d Unify how the 'commit' and 'build' commands work with '--noservice' option
Both commands now take the following options: '--skip-local-service-run', '--noservice', '--no-service'
Both commands now honor the 'local_service_run' config option if none of the options above is specified
2023-09-14 09:49:19 +02:00
0894724219
Merge pull request #1407 from dmach/wrap-password-into-Password-object
Fix validating configuration by wrapping password into Password object
2023-09-14 08:41:38 +02:00
1a42b7a2c9 Fix validating configuration by wrapping password into Password object 2023-09-13 14:25:47 +02:00
2e8fa9ef12 fix crash when settings like realname are not set.
Otherwise:
  File "/usr/lib/python3.11/site-packages/osc/core.py", line 451, in execute
    result = self._execute(dir, old_dir, callmode, singleservice, verbose)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/osc/core.py", line 493, in _execute
    vc_export_env(self.apiurl)
  File "/usr/lib/python3.11/site-packages/osc/core.py", line 8917, in vc_export_env
    os.environ[env] = val
    ~~~~~~~~~~^^^^^
  File "<frozen os>", line 684, in __setitem__
  File "<frozen os>", line 758, in encode
TypeError: str expected, not NoneType
2023-09-13 08:36:30 +02:00
848f5fe48f Switch 'osc.conf.config' from dict to Options class with type checking 2023-09-11 21:14:45 +02:00
930b7a8a4e Add 'osc.util.models' module implementing an alternative pydantic-like data validation 2023-09-11 21:11:05 +02:00
54d1884e1d Add 'osc.util.xdg' module for handling XDG paths 2023-09-11 21:11:05 +02:00
Tammo Oepkes
b9014ccd56
Fix api_host_options for custom CAs (#1403) 2023-09-11 21:06:34 +02:00
b870782a51
Merge pull request #1401 from dmach/build-just-print-buildroot
Add '--just-print-buildroot' option to print build root path and exit to 'build' command
2023-09-11 09:19:24 +02:00
e8fc97b231 search: resolve -B . to current project 2023-09-04 12:12:58 +02:00
465edfb098 Add '--just-print-buildroot' option to print build root path and exit to 'build' command 2023-09-04 11:48:11 +02:00
657c45085b checkconstraints: add -M/--multibuild-package 2023-08-31 14:57:08 +02:00
4a0c9a0f70
Merge pull request #1399 from dmach/checkout-include-files
Implement 'exclude_files' and 'include_files' config options that allow skipping files in the 'checkout' command
2023-08-30 11:57:52 +02:00
4255711344 Implement 'exclude_files' and 'include_files' config options that allow skipping files in the 'checkout' command
Examples:
    osc checkout --setopt='include_files=*.spec *.changes'
    osc checkout --setopt='exclude_files=*.tar.* *.obscpio'
2023-08-30 11:28:30 +02:00
daafc1906d checkconstraints: allow constraints file with remote request 2023-08-28 13:53:37 +02:00
a77f3d43d2 release 1.3.1 2023-08-28 13:33:45 +02:00
ec2c93a4be Fix string + int concatenation errors in 'build' command by using f-strings instead 2023-08-28 11:30:44 +02:00
baeca0b48b Fix '--all' option in 'rebuild' command
When 'osc rebuild --all' was executed from a package working copy,
the package name was automatically read and used instead
of passing None to the underlying rebuild() function.
2023-08-28 10:29:18 +02:00
5a67bd3376 Fix GitStore to error out properly if there is no 'origin' remote in the git repo 2023-08-28 09:54:38 +02:00
6eb9c4b186 Stop suggesting that the working directory is git/mercurial/svn/cvs
We're using Git SCM now and the error message might be confusing in some cases
2023-08-28 09:49:39 +02:00
a0d4889d64 Fix 'build' command when '--alternative-project' option is specified and the git branch cannot be mapped to a project 2023-08-23 12:02:25 +02:00
fa8da38747
Merge pull request #1380 from dirkmueller/helpful_deprecation
Be helpful in deprecating commands
2023-08-16 17:00:29 +02:00
bf4b847f2c
Merge pull request #1382 from andreas-schwab/master
print_buildlog: Remove control characters from build log before printing (CVE-2012-1095)
2023-08-15 15:04:07 +02:00
f9dc3122f9 Add more config options among integer options 2023-08-15 14:29:18 +02:00
d857e5dbf8 print_buildlog: Remove control characters from build log before printing (CVE-2012-1095) 2023-08-15 10:15:09 +02:00
f9fbfd8e9d
Be helpful in deprecating commands
At least give *some* hint of what needs to be done rather than
just barking at the user. Also remove description of obsolete
commands.
2023-08-10 13:42:52 +02:00
57a4cdc6a4 release 1.3.0 2023-08-09 13:34:16 +02:00
b36c2101ba
Merge pull request #1360 from dmach/edit-attribute
Make 'meta' command capable of editing attributes
2023-08-07 10:28:56 +02:00
e3149fb478
Merge pull request #1375 from Vogtinator/kiwiprefer
Fix --prefer-pkgs for noinstall="1" packages in kiwi builds
2023-08-07 10:27:08 +02:00
Fabian Vogt
4d432b6535 Fix --prefer-pkgs for noinstall="1" packages in kiwi builds
For kiwi to find those packages, they have to be in one of the listed repos.
Create a "_local" repo with all prefer-pkgs in buildinfo.

Note: The code currently doesn't look at noinstall at all, so any package
in the buildinfo which is provided by --prefer-pkgs is treated as noinstall="1"
and noinstall="0" simultaneously currently...
2023-08-01 15:33:59 +02:00
56747274d3 Fix less pager by adding '-R' to LESS env 2023-08-01 13:51:33 +02:00
95998ef80d Make 'meta' command capable of editing attributes 2023-07-31 14:48:43 +02:00
001bbdf365
Merge pull request #1358 from dmach/setopt
Add '--setopt' option for setting config options from the command-line
2023-07-31 13:27:47 +02:00
8f58795f4d
Merge pull request #1352 from dmach/git-support-in-service-command
Update 'service' command to work with git SCM ('factory' branch only for now)
2023-07-31 09:39:38 +02:00
26b7c0a9e7
Merge pull request #1370 from ncounter/osc-rq-force-doc
Enhance '--force' parameter description
2023-07-31 08:56:35 +02:00
0749ee5684 Add support of Git SCM to the 'service' command 2023-07-31 08:43:05 +02:00
8aedb1c28f Change pop_project_package_from_args() to use get_store() to support Git SCM 2023-07-31 08:43:05 +02:00
aae20248d7
Merge pull request #1344 from dmach/build-from-git
Support building directly from git
2023-07-31 08:41:46 +02:00
ncounter
1090bfd9bb
Enhance '--force' parameter description
https://github.com/openSUSE/open-build-service/issues/3687

The code is fixed: '--force' does ignore devel-package
dependencies now. Documenting it to make it clear while using it.
2023-07-28 17:09:45 +02:00
5a2ebda567 Raise a RuntimeError when GitStore.project couldn't determine project from the current branch 2023-07-28 14:42:52 +02:00
7943b55a6e Add limited support of Git SCM to the 'build' command 2023-07-28 14:42:52 +02:00
4138a40e02 Use alternative project if specified in parse_repoarchdescr() 2023-07-28 14:42:52 +02:00
f60db24e15 Add 'git_scm' module for handling packages that live in git scm rather than usual obs scm 2023-07-28 14:41:59 +02:00
71dc7a6808
Merge pull request #1367 from dmach/request-list-i-build-log
Add an interactive option to display build log in 'request list -i' command
2023-07-27 15:09:09 +02:00
87d1c489f2
Merge pull request #1369 from dmach/build-store-object
Change osc.build module to use 'store' object instead of calling core.store_*() functions
2023-07-27 13:34:30 +02:00
99fb94eddf Improve print_msg() and migrate some arbitrary prints to it 2023-07-27 10:16:08 +02:00
a9af18dded Change osc.build module to use 'store' object instead of calling core.store_*() functions
Also drop the "This may be a project managed entirely via git?" section
because it was never triggered due to a bug:

>>> project = store_read_project(Path.cwd())

should have been

>>> project = store_read_project(Path.cwd().parent)

Let's bring it back when a proper git scm support is in place.
2023-07-25 16:21:13 +02:00
c56d9fcca6 Add an interactive option to display build log in 'request list -i' command
Also show rpmlint logs in pager.
2023-07-20 13:02:00 +02:00
1284867dbb
Merge pull request #1359 from dmach/checkout-dont-print-open-requests
Change 'checkout' command to print open requests only when running in an interactive terminal
2023-07-20 10:49:12 +02:00
eaad34fefd Fix crash when HTTP_PROXY env contains no auth 2023-07-20 09:07:43 +02:00
6f58d4f925
Merge pull request #1362 from dmach/meta-attribute-add-deduplicate
Change '--add' option in 'meta attribute' command to skip duplicate values
2023-07-18 21:38:16 +02:00
ac23ed0fca Change '--add' option in 'meta attribute' command to skip duplicate values 2023-07-18 15:37:43 +02:00
658f2acb4f Fix xml indent() on Python 3.6 2023-07-18 14:25:43 +02:00
9ec1b24c2e Add '--setopt' option for setting config options from the command-line 2023-07-17 09:15:28 +02:00
3e08681167 Change 'checkout' command to print open requests only when running in an interactive terminal 2023-07-17 09:03:12 +02:00
c22aceb28d release 1.2.0 2023-07-14 11:08:24 +02:00
ba2488a702
Merge pull request #1324 from dmach/repo-commands-for-managing-repositories-in-meta
Add 'repo' command and subcommands for managing repositories in project meta
2023-07-14 10:57:40 +02:00
a2e6a3b0be
Merge pull request #1353 from asdil12/diff
Add highlighting for "osc diff" and similar commands
2023-07-14 10:55:45 +02:00
80c8976d5d
Merge pull request #1356 from isbm/isbm-debbuild-fix
Do not determine queried package by the source package origin
2023-07-14 10:04:16 +02:00
Dominik Heidler
42d778be04 Add highlighting for "osc diff" and similar commands 2023-07-14 10:00:15 +02:00
Bo Maryniuk
3559336247 Detect target package by its full name, instead of assuming its origin is identical to the source package type 2023-07-13 13:46:01 +02:00
45d70f8320 Fix a crash in 'localbuildlog' command by removing unwanted decode_it() call 2023-07-13 13:25:03 +02:00
51052dafe0 The repo list command now resolves and displays flags (build, publish, ...) 2023-07-07 13:15:34 +02:00
e1e8128af9 Modify 'repo list' command to use the new output module 2023-07-07 13:15:34 +02:00
445c93300b
Fix local service execution of scmsync packages
read _service file even when it is not tracked. This is the case
in scmsync case.

I am not aware of a situation where it would break, when the
local _service file exists but is not tracked yet.

osc#1350
2023-07-04 15:54:30 +02:00
afcf76aa44
Merge pull request #1340 from adrianschroeter/fix_crash_no_link
Fix crash when submiting a package which has no _link
2023-06-19 08:50:10 +02:00
c3954ff4fd Fix printing utf-8 characters to stdout
When utf-8 encoded text is transferred over network and read in chunks,
if frequently happens that a character gets split between 2 chunks.
Decoding such chunks fails on invalid multibyte sequence.

The solution is to forward the bytes to stdout's buffer
and make the utf-8 decoding "someone else's problem".
2023-06-16 09:03:49 +02:00
ff66c1e4f7 Fix crash when submiting a SCM package which has no _link 2023-06-14 12:30:27 +02:00
03016a6f7b
Merge pull request #1335 from dmach/unicode-passwords
Correctly handle passwords with utf-8 characters
2023-06-12 09:24:29 +02:00
7aa68d0c8a Fix 'api' command to stream output to avoid running out of memory 2023-06-06 13:40:41 +02:00
c8fad57151 Add 'output' module for handling console output 2023-06-02 15:58:31 +02:00
41df798205 Add 'repo' command and subcommands for managing repositories in project meta 2023-06-02 15:58:31 +02:00
Elisei Roca
2726b5a46d Open requests in browser via osc browse 2023-06-02 10:26:24 +02:00
d9676debb9 Correctly handle passwords with utf-8 characters 2023-06-01 14:00:03 +02:00
14fba8bcb7 Fix ValueError: Cannot set verify_mode to CERT_NONE when check_hostname is enabled 2023-05-30 16:29:25 +02:00
56de8ceebb release 1.1.4 2023-05-24 08:59:45 +02:00
45ad7349ee
Merge pull request #1329 from dmach/req_states-review-list
Change 'review list' command to display open requests (state: new, review, declined)
2023-05-23 16:01:18 +02:00
3f2f5f5ab1 Fix running osc in an AppImage by switching to the correct working directory 2023-05-23 15:30:32 +02:00
7744e32ba4
Merge pull request #1328 from andreas-schwab/master
Handle ProtocolError exception
2023-05-19 22:16:36 +02:00
64c0cc6a5a Change 'review list' command to display open requests (state: new, review, declined)
The original behavior was that only requests in the 'review' state
were displayed.
2023-05-19 22:04:50 +02:00
7c085b18d5
Merge pull request #1323 from Vogtinator/req_state
Add req_states parameter to osc.core.get_review_list
2023-05-19 22:04:06 +02:00
Andreas Schwab
623148a04a Handle ProtocolError exception 2023-05-19 21:43:21 +02:00
309f10633d Fix grabber to work with old urllib3 versions that do not contain URLSchemeUnknown exception 2023-05-15 22:38:21 +02:00
Fabian Vogt
70135090cc Add req_states parameter to osc.core.get_review_list
Keep the original behaviour by default, but allow other callers to also
request reviews on e.g. declined SRs.
2023-05-12 11:02:51 +02:00
d089e878ca release 1.1.3 2023-05-10 09:11:35 +02:00
1ad022a616 Fix 'diff' command when no files are specified 2023-05-09 21:45:20 +02:00
dc50e6c981
Merge pull request #1319 from dmach/review-list-state
Consider only open requests when listing requests with a given review state
2023-05-09 16:54:28 +02:00
00decd25d1 Consider only open requests when listing requests with a given review state 2023-05-09 16:12:21 +02:00
c8f2ae1ae6 Fix core.xmlindent() to work with ElementTree objects 2023-05-09 08:42:53 +02:00
b789cdfed6 Backup edited messages and notify user about them when osc errors out
The messages are kept in ~/.cache/osc/edited-messages for 1 day.
2023-05-04 11:00:07 +02:00
3f9b9a2fb8
Merge pull request #1313 from dmach/trusted_prj-globs
Add glob support to the 'trusted_prj' config option
2023-05-04 10:02:49 +02:00
32a3078d67 release 1.1.2 2023-05-03 10:11:24 +02:00
2502f7a57f Add glob support to the 'trusted_prj' config option 2023-05-02 09:56:27 +02:00
aa5e0952e2 Fix fallback KeyringLocked to inherit from Exception 2023-05-02 09:55:30 +02:00
651dc708a5
Merge pull request #1311 from dmach/fix-diff-specify-files
Fix 'diff' command to support diffing selected files only
2023-04-28 21:55:35 +02:00
c6e09900ab
Merge pull request #1312 from dmach/fix-exception-when-failed-to-unlock-kwallet
Fix a traceback when failed to unlock a keyring
2023-04-28 21:54:59 +02:00
1a6fa63ac9 Fix a traceback when failed to unlock a keyring 2023-04-28 16:12:19 +02:00
80fc2bf7cb Don't retry on 400 HTTP status code in core.server_diff() 2023-04-28 14:54:51 +02:00
b0629f6b90 connection: Allow disabling retry on 400 HTTP status code
We probably want the retry on by default to retry on running services,
but in some cases such as osc diff it only adds delays while handling
a quite expected errror state.
2023-04-28 14:53:29 +02:00
49cfd020fd Fix 'diff' command to support diffing selected files only 2023-04-28 14:38:43 +02:00
01ac4bef6f
Merge pull request #1309 from dmach/fix-urlgrab-invalid-scheme
Fix urlgrab to skip mirrors with invalid scheme
2023-04-28 11:24:14 +02:00
a08ab2ef18 Identify inherited packages in the 'dependson' command output 2023-04-28 09:30:38 +02:00
ea69d13157 Fix urlgrab to skip mirrors with invalid scheme
The package will get downloaded from another mirror
or directly from the API.
2023-04-28 09:02:28 +02:00
2cdf0520f3 Fix build.get_repo() to return only directory that contains 'repodata/repomd.xml' 2023-04-27 13:58:13 +02:00
6d5493130e
Merge pull request #1306 from dmach/connection-retry-on-errors
Retry on receiving the following HTTP status codes: 400, 500, 502, 503, 504
2023-04-27 11:31:56 +02:00
3f421c8fad
Merge pull request #1305 from dmach/link-popt
Document 'popt' attribute in the _link template
2023-04-27 11:29:14 +02:00
9f62fce5a4 Add '--buildtool-opt' option passing options to underlying rpmbuild to the 'build' command 2023-04-26 11:28:01 +02:00
e25dc2d24f Retry on receiving the following HTTP status codes: 400, 500, 502, 503, 504
Retrying 400 mitigates a problem with retrieving data from OBS API while the
server runs a service.
2023-04-26 10:29:34 +02:00
04b6fb137a Document 'popt' attribute in the _link template 2023-04-26 09:33:04 +02:00
9926791bf0 Fix 'buildhistory' command by setting the type of the '--limit' option to int 2023-04-17 15:35:17 +02:00
Martin Liska
a01d2a43df clean-up .old folder if an exception happens
Fixes: openSUSE/obs-build#920
2023-04-14 13:53:32 +02:00
53e204f275 Bring the '--debug' option back to the 'buildinfo' command
It was automatically removed by the argument parser when resolving
a conflict between buildinfo's --debug and the global --debug option.
Now we're iterating backwards to give the command's options
a priority over parent/global options.
2023-04-11 17:09:50 +02:00
fcc4b9cc7e release 1.1.1 2023-04-11 14:01:52 +02:00
c2b0898bbe
Merge pull request #1290 from hellcp-work/master
Fix creq command not working
2023-04-11 13:51:33 +02:00
Jacob Michalskie
67f77ae582 Fix creq command not working 2023-04-11 13:43:10 +02:00
1a9d973bce
Merge pull request #1298 from dmach/fix-interactive-config-setup
Fix interactive config setup
2023-04-11 13:41:59 +02:00
43f07f90c4
Merge pull request #1293 from dmach/cli-fix-loading-plugins
commandline: Append plugin dirs to sys.path to allow loading modules installed next to the plugins
2023-04-11 13:41:11 +02:00
0600b6745d ls: Fix listing all projects when project equals to '/' 2023-04-11 12:49:13 +02:00
713856d15a commandline: Handle missing config or credentials 2023-04-11 11:27:34 +02:00
5f912a8d7d conf: Display apiurl when asking for a username or a password 2023-04-11 11:25:24 +02:00
cf6e33a59b conf: If apiurl is not set in interactive_config_setup(), use apiurl from DEFAULTS 2023-04-11 11:11:25 +02:00
baca98abbb commandline: Do not recurse into subdirs when loading plugins 2023-04-05 15:54:20 +02:00
497f4db18b commandline: Append plugin dirs to sys.path to allow loading modules installed next to the plugins 2023-04-05 15:53:17 +02:00
b6a6ee5c00 Decode entities in HTTPError message body 2023-04-04 14:36:32 +02:00
9e0d7783d6 release 1.1.0 2023-04-03 13:45:36 +02:00
b3e88c5380
Merge pull request #1289 from dmach/fix-commandline-default-apiurl
commandline: Fix regression in handling default apiurl from oscrc
2023-04-03 09:33:20 +02:00
bc468b7710 commandline: Fix regression in handling default apiurl from oscrc
The default apiurl (https://api.opensuse.org) was always used as default
regardless the settings in oscrc.
2023-04-03 09:12:01 +02:00
a25ea8d175 conf: Do not error out if oscrc is owned by another user 2023-04-03 08:59:25 +02:00
d7af821ec1 rq list: Restore 'include_request_from_project' conf option functionality 2023-03-31 14:01:55 +02:00
26a8fb1acf commandline: New class-based commands
This is based on a prototype we've worked on together
with Laurin Fäller <laurin.faeller@suse.com>.
2023-03-31 09:39:04 +02:00
e0404c003b cmdln: Sort commands before printing help 2023-03-31 09:39:04 +02:00
f7c84d42a3 Simplify how babysitter works with options and config 2023-03-31 09:39:04 +02:00
8ea24b1a3c commandline: No longer read plugins from /var/lib/osc-plugins 2023-03-31 09:39:04 +02:00
483685aaa8
Prefer f-strings ove c-style string expansion
This exists since Python >= 3.6 and is shorter and easier to read.
2023-03-30 10:25:49 +02:00
a953dcf8b8 release 1.0.1 2023-03-17 16:05:07 +01:00
2c04bd64d7
Merge pull request #1282 from dmach/fix-conf-disable_hdrmd5_check
conf: Fix a cut&paste error in setting 'disable_hdrmd5_check' config option
2023-03-17 15:30:11 +01:00
7c826dc605 conf: Fix a cut&paste error in setting 'disable_hdrmd5_check' config option
This set credentials_mgr_class to 'False', which caused
TransientCredentialsManager to ask for a password even when doing ssh auth.
2023-03-17 14:13:21 +01:00
da822b3cfc connection: Set Content-Type of POST requests without data to 'application/x-www-form-urlencoded' 2023-03-17 11:53:50 +01:00
77517ce280 release 1.0.0 2023-03-14 14:07:06 +01:00
97496a4154 Revert "Remove the '-A' option from the 'maintainer' command"
This reverts commit 3763bff901.

The change is no longer needed, because the argument parser resolves
the conflicts now and we can use -A as either --add or --apiurl
depending on if we use it before or after the subcommand name.
2023-03-14 10:14:59 +01:00
4f9fb9f1ac core.get_request_list: Remove deprecation warning
It turned out that get_request_list() and get_request_collection()
are not interchangeable and we need both for different use cases.

get_request_collection() was designed mainly for the 'osc my' command,
while get_request_list() should be used in a generic use case
2023-03-13 13:07:20 +01:00
85973f20fc commit: Update help text for --force option 2023-03-09 15:27:01 +01:00
8df8ee63aa
Merge pull request #1265 from andreas-schwab/master
Pass --force down to delete_package
2023-03-09 13:14:12 +01:00
5d1141eb96 meta attribute: Add --add option to append values to the existing list 2023-03-06 10:12:59 +01:00
e15c530fb2 _private.api: Rewrite find_node() and find_nodes() to use a simplified xpath notation 2023-03-06 10:12:59 +01:00
e4723f7f74 Replace arbitrary XML escaping code with xml_escape() 2023-03-06 10:12:59 +01:00
bacaa29a78 _private.api: Add xml_escape() function 2023-03-06 10:12:59 +01:00
13979f79d3 _private.api: Add xml_indent() function 2023-03-03 11:48:05 +01:00
8fb243e897 _private.api: Use an own ElementTree import instead of importing it from core 2023-03-03 11:46:41 +01:00
0ad39a9ec9 build: New option 'disable_hdrmd5_check' to ignore hdrmd5 mismatches 2023-02-21 14:53:08 +01:00
2a9edeec5b conf: Change how api_host_options determine option types
The _integer_opts and _boolean_opts specify option types for both
global options as well as api_host_options
2023-02-21 14:42:30 +01:00
5b67164a9c Pass --force down to delete_package 2023-02-16 10:35:31 +01:00
815009f647 core.ReviewState: Add __repr__() method 2023-02-14 16:24:20 +01:00
e132d093e7 core.Action: Add __repr__() method 2023-02-14 16:24:20 +01:00
95be11130e core.Action: Add src_pkg_object and tgt_pkg_object properties providing object wrappers to file lists 2023-02-14 16:24:20 +01:00
f5da27ad24 core.Action: Remember apiurl 2023-02-14 15:57:15 +01:00
770217bb8d core.Request: Add issues property that loads issues on demand 2023-02-14 15:57:15 +01:00
27c3159fdb core.Request: Add id property that is a shortcut to the reqid attribute 2023-02-14 15:57:15 +01:00
17e25776a2 core.Request: Add from_api() class method 2023-02-14 15:57:15 +01:00
09ad87c865 core.Request: Store apiurl the object was initialized from 2023-02-14 15:57:15 +01:00
16288a2972 release 1.0.0b5 2023-02-09 15:04:54 +01:00
81e5a7b958 rq list: Fix a traceback when --type is not specified 2023-02-09 13:32:28 +01:00
05d381ad79 connection: Retry all, not just default allowed methods 2023-02-09 13:11:23 +01:00
2f6b50ec2b connection: Wait between retries 2023-02-09 09:32:25 +01:00
1d96c6eb2a checkout_package: Use pathlib.Path
Modify it to use pathlib.Path along with its callers. Some str(path) was
necessary to avoid having a large changeset.

It addresses #1258 and continues the work started in
bac162a712.
2023-02-08 11:46:16 +01:00
83b1e22e52 release 1.0.0b4 2023-02-03 11:01:51 +01:00
4c7cdaec19 rq list: Fix passing values of the --type option 2023-02-03 09:57:51 +01:00
b047154ee5
Merge pull request #1250 from dmach/revert-1107-do-not-list-declined-requests-by-default
Revert "Do not list declined requests by default"
2023-02-02 21:19:18 +01:00
5810e09aab Revert "Do not list declined requests by default"
This reverts commit 2892f1bb11.
This reverts commit 9073b1a1d2.

The declined requests are still on maintainer's TODO list,
they should be either superseded with another request or revoked.
2023-02-02 14:11:04 +01:00
efa2c09e2e connection: Fix traceback on loading an invalid cookiejar file
Ignore the error and overwrite the cookiejar file with new content
after we get a new cookie from server.
2023-02-02 11:01:06 +01:00
18f4d88231 connection: Save cookiejar only when there's a Set-Cookie header in the response 2023-02-02 10:54:59 +01:00
40a24d3185
Merge pull request #1246 from dmach/fix-rdiff-no-new-project
rdiff: Fix traceback when new project is not specified
2023-02-02 10:53:27 +01:00
cce4301bcd
Merge pull request #1238 from dmach/buildhist-fix-package-checkout
buildhist: Fix running from a package checkout
2023-02-01 10:59:28 +01:00
76facfa171
Merge pull request #1242 from andreas-schwab/master
Fix regression in osc rebuild
2023-02-01 10:58:38 +01:00
286db02a40 rdiff: Fix traceback when new project is not specified 2023-02-01 10:49:50 +01:00
080ffc1655 connection: Mute the "Converted retries value" debug message 2023-02-01 09:45:12 +01:00
Andreas Schwab
c811db7a3e Fix regression in osc rebuild 2023-01-29 12:46:46 +01:00
428dd23bf4 buildhist: Do not traceback on missing duration 2023-01-26 15:53:20 +01:00
d24e98b212 buildhist: Fix running from a package checkout 2023-01-26 15:49:21 +01:00
dcc913dd5a
Merge pull request #1229 from Vogtinator/fixlist
Support withfullhistory in osc.core.get_request_list again
2023-01-26 14:56:58 +01:00
c6e8fd103e build: Fix reading extra-pkgs from oscrc 2023-01-26 14:11:59 +01:00
53b9cc3a65 copypac: Do not enforce source revision when revision is not specified on the command line 2023-01-26 11:04:16 +01:00
208dbdf6d1 copypac: Fix downgrading a package to an old revision 2023-01-26 10:34:31 +01:00
6bd2c6eaf1 mv: Fix regression
Moved Package.todo handling in one place.
Fixed a situation when path to a file that doesn't exist is passed to Package
2023-01-26 10:11:54 +01:00
Fabian Vogt
3c200caf50 Support withfullhistory in osc.core.get_request_list again 2023-01-25 15:41:00 +01:00
Fabian Vogt
732ff678e7 Fix osc.get_request_list ignoring the req_type parameter 2023-01-25 11:38:08 +01:00
fdd2c3a8f0 Fix creating a Package object by providing multiple files on the command line 2023-01-20 16:52:11 +01:00
d941cc4d57 build: Mute pylint error E1101: Instance of 'Pac' has no '<attr>' member (no-member) 2023-01-20 16:21:32 +01:00
dd64cf1fae build: Fix mytmpdir.__exit__() arguments 2023-01-20 16:16:23 +01:00
2ee52591a5 Fix arguments of PackageInternalError 2023-01-20 16:16:23 +01:00
da029941bc Add oscerr.ProjectError class needed by core.delete_project() 2023-01-20 16:16:23 +01:00
7f885ac6b2 Fix pylint error: Using variable 'fd' before assignment 2023-01-20 16:16:23 +01:00
b1e2a00b82 Fix ValueEror message in _private.common.print_msg 2023-01-20 16:16:23 +01:00
6d01df35e6 Use distro module to detect distro on all python versions
Also, add a related Recommends to to the spec file
2023-01-20 16:16:23 +01:00
987db92f3b Mute pylint false-positive errors related to rpm 2023-01-20 16:16:23 +01:00
64aefffc87 Fix calling _private.get_configuration_value() 2023-01-20 16:13:49 +01:00
7e7e8a0690 Fix typo in _private.api_build 2023-01-20 16:13:49 +01:00
lethliel
18cdec2554 use correct variable prj instead of project 2023-01-20 11:48:52 +01:00
f963ed1a61 release 1.0.0b3 2023-01-17 09:35:55 +01:00
62464025b6
Merge pull request #1213 from dmach/fix-cmdln-hide
cmdln: Fix hide() decorator to take an optional argument with a boolean value
2023-01-16 16:32:41 +01:00
cb52884f86 cmdln: Fix hide() decorator to take an optional argument with a boolean value
To restore compatibility with the install plugin.
2023-01-16 16:06:19 +01:00
Adrian Schröter
f90c8cdcb9 add verbose option for running local services
Showing the call parameters to enable debugging of services
2023-01-12 14:05:20 +01:00
Adrian Schröter
a292e2b6ab fix manual run of source service
A service explicit called via singlerun could get skipped otherwise,
if the service is defined with a different mode.

eg. running

  osc service mr download_files

to update and merge files after a version update, but the project has a
global download_files service configured for validation.
2023-01-12 14:05:20 +01:00
bce0c3ffe4 Fix develproject arg handling 2023-01-12 13:44:32 +01:00
19dcb3dc78 rebuild: Migrate to pop_project_package_repository_arch_from_args() 2023-01-12 11:51:35 +01:00
3ea7d7d908 commandline: Improve argument parsing, add more tests 2023-01-12 11:51:35 +01:00
acbb040137 pull: Remove a workdir check that is covered by Package object already 2023-01-12 10:49:43 +01:00
c77e193bdb rdiff: Improve CLI handling 2023-01-12 10:49:43 +01:00
ba5d1542a6 Replace show_configuration() with get_configuration_option() 2023-01-12 10:49:43 +01:00
747680f5f7 browse: Migrate to pop_project_package_from_args() 2023-01-12 10:49:43 +01:00
a95a86dcf6 unlock: Simplify, improve CLI handling 2023-01-12 10:49:43 +01:00
c639dfd89c lock: Move code to core.py/lock(), improve CLI handling 2023-01-12 10:49:43 +01:00
5d31fc1486 rdelete: Migrate to pop_project_package_from_args() 2023-01-12 10:49:35 +01:00
be2c33d86f undelete: Migrate to pop_project_package_from_args()
INCOMPATIBLE CHANGE:
It is no longer possible to specify multiple packages at once,
because it was inconsistent with the rest of osc.
Call osc in a cycle to undelete multiple packages instead.
2023-01-12 10:47:46 +01:00
55fd77650d copypac: Migrate to pop_project_package_targetproject_targetpackage_from_args() 2023-01-12 10:47:46 +01:00
fd851bbe83 aggregatepac: Migrate to pop_project_package_targetproject_targetpackage_from_args() 2023-01-12 10:47:46 +01:00
d779eb936d detachbranch: Migrate to pop_project_package_from_args() 2023-01-12 10:47:46 +01:00
f7d2d1592a linktobranch: Migrate to pop_project_package_from_args() 2023-01-12 10:47:46 +01:00
1b034921c8 linkpac: Improve command-line handling 2022-12-20 17:15:01 +01:00
ce4cd4e4e9 commandline: Add pop_project_package_targetproject_targetpackage_from_args() function 2022-12-20 16:53:21 +01:00
ba32ff57cb linkpac: Fix linking a locked package by not copying the lock to the target package 2022-12-20 14:42:19 +01:00
0384db5e2e setlinkrev: Write a log message on setting a revision 2022-12-19 14:58:12 +01:00
c1aa427254 _private: Avoid circular import of osc.core, osc.connection and osc.store 2022-12-15 16:51:06 +01:00
6e4ad5db1c buildhistory: Produce proper output using build_table() and a CSV writer 2022-12-15 16:29:58 +01:00
2735d5a0d1 commandline: Add methods for parsing repo, arch from the arguments 2022-12-15 16:25:17 +01:00
af7d3900cf build_table: Convert all items to strings so we can also pass other types 2022-12-15 16:25:17 +01:00
85d86249d4
Merge pull request #1193 from dmach/commandline-project-package
commandline: Migrate project, package argument parsing to pop_project_package_from_args()
2022-12-13 09:02:49 +01:00
3027edc0eb Move 'release' code from commandline to _private 2022-12-13 08:45:33 +01:00
56bb193b4e Add 'repository' and 'dest_repository' args to format_msg_project_package_options() 2022-12-13 08:45:33 +01:00
37a34e58d4 Migrate 'setlinkrev' command to pop_project_package_from_args() 2022-12-13 08:45:33 +01:00
62ba626eb5 Migrate 'log' command to pop_project_package_from_args() 2022-12-13 08:45:33 +01:00
4634690176 Move showlinked code from commandline to _private 2022-12-13 08:45:33 +01:00
2f70408dea Move addcontainers code from commandline to _private 2022-12-13 08:45:33 +01:00
6dcc45f272 Improve argument handling in the 'develproject' command 2022-12-13 08:45:33 +01:00
c6b30e500f Add 'dest_project' and 'dest_package' args to format_msg_project_package_options() 2022-12-13 08:45:33 +01:00
Luca Weiss
ace4612a83 Fix osc add for github /archive/ URLs
"osc add https://github.com/foo/bar/archive/12345.tar.gz" should
treat the URL as archive and not as git source.
2022-12-12 18:15:40 +01:00
59e7013cf2 Move enablechannels code from commandline to _private 2022-12-12 16:48:28 +01:00
ad85ff437f Move addchannels code from commandline to _private 2022-12-12 16:48:28 +01:00
78c3cf1c4c Add functions for printing to stdout or debug outputs 2022-12-12 16:48:28 +01:00
d81c688759 Add _private.api.post() function 2022-12-12 16:48:28 +01:00
76b1821f19 Add commandline.pop_project_package_from_args() 2022-12-12 16:48:28 +01:00
074abb400c
Merge pull request #1200 from SchoolGuy/add-types
mypy: Add types to methods
2022-12-07 16:19:25 +01:00
37bb5e7785 Handle empty EDITOR=/PAGER= env variable properly 2022-12-07 16:04:10 +01:00
Enno Gotthold
7335a84235
mypy: Add types to methods
This is a bulk add of typing that also includes the
formatting with darker.
2022-12-07 13:01:23 +01:00
Enno Gotthold
c1350d2004
Add py.typed marker to osc 2022-12-05 15:28:02 +01:00
Enno Gotthold
3e1d91e4bd
core: Add type annotations 2022-12-05 15:23:54 +01:00
0c2238435f
Merge pull request #1184 from dirkmueller/cleanups
Cleanups
2022-12-05 09:30:48 +01:00
Dirk Müller
adb1a9b4ef mark boolean and integer_opts as private
It is unused elsewhere, and only used for unit-testing
2022-12-01 10:05:32 +01:00
4c5d0cf18a Add branch --disable-build option 2022-11-08 15:34:55 +01:00
2ec573ca79 Add linkpac --disable-build option 2022-11-08 15:01:37 +01:00
dc1470a3d7 store: Remove trailing slash from apiurl 2022-11-07 13:57:24 +01:00
eccbe5c4f1 Replace deprecated ElementTree.Element.getiterator() with iter() 2022-11-07 09:43:41 +01:00
cd257dc15f
Merge pull request #1188 from mig4/fix-delete-pass
Avoid crash when deleting a password
2022-11-04 11:13:26 +01:00
mig4
b4afd1a8ea
Avoid crash when deleting a password
When using keyring, osc would crash when called as
`osc config ENDPOINT --change-password`
and when the password didn't exist in the backend.

This prevents it by first checking if a password exists.
2022-11-01 18:40:39 +00:00
d4e57798d3
Merge pull request #1187 from dirkmueller/pathlib_fixes
Fix path construction involving Path.cwd()
2022-10-31 10:57:29 +01:00
Dirk Müller
1eb5451732
Fix path construction involving Path.cwd()
pathlib uses the '/' operator to combine paths rather than '+'
2022-10-30 19:53:12 +01:00
Dirk Müller
fb44c5720e
avoid bare except 2022-10-27 10:49:52 +02:00
Dirk Müller
29274b5289
avoid importing the config global variable
in build we imported "conf" and "from .conf import config" which let to
two different instances of config: "global config" at import was the
DEFAULTS array, and conf.config the updated config after reading the
user configuration.

Convert everything to use conf.config as everywhere else, which makes
setting of build defaults in the oscrc work again (like build-jobs).
2022-10-27 00:20:47 +02:00
0289865bbf Write scm_url via Store 2022-10-25 13:09:29 +02:00
00842e36fa Deprecate store_write_apiurl() 2022-10-25 13:09:29 +02:00
e7912ceec0 Deprecate store_read_scmurl() 2022-10-25 13:09:29 +02:00
fd52727394 Deprecate store_read_apiurl() 2022-10-25 13:09:29 +02:00
5493d632cc Migrate Package.wc_repair() to Store 2022-10-25 13:09:29 +02:00
74d46bf8da Migrate Project.wc_repair() to Store 2022-10-25 13:09:29 +02:00
ba98834160 Rewrite _private.LocalPackage to use Store class 2022-10-25 13:09:29 +02:00
4e773cec32 Implement Store class that will replace store_{read,write}* functions 2022-10-25 13:09:29 +02:00
db06625197 Add _private.api.write_xml_node_to_file() function 2022-10-25 08:33:59 +02:00
7d64d5d425 Allow comparing File with a string 2022-10-25 08:33:59 +02:00
55503e13ca Implement ordering of File objects 2022-10-25 08:33:59 +02:00
e56773bbaa Add File.to_xml_node() method 2022-10-25 08:33:59 +02:00