1
0
mirror of https://github.com/openSUSE/osc.git synced 2025-01-08 15:36:14 +01:00
Commit Graph

1838 Commits

Author SHA1 Message Date
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
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
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
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
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
76b1821f19 Add commandline.pop_project_package_from_args() 2022-12-12 16:48:28 +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
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
fd52727394 Deprecate store_read_apiurl() 2022-10-25 13:09:29 +02:00
63436f4b81 rq list --all: Avoid conflict with the --state option 2022-10-21 10:29:45 +02:00
bac3336d90
Merge pull request #1166 from dmach/sr-accept-forwarding
sr accept: Enable forwarding requests to the parent projects; Introduce new osc._private module
2022-10-19 10:09:23 +02:00
Dirk Müller
ee68e87474
cleanups 2022-10-18 23:41:22 +02:00
Dirk Müller
51d993c1e7
Merge _expand_as_project_name into _process_project_name
This function was already doing most of the work, so we can do this
extra there as well. simplifies the code a little. also fix a regression
in previous change where Pwd.cwd().replace() would rename the directory
(rather than doing a replace on the string value).
2022-10-18 23:41:22 +02:00
fef07af464 sr accept: Enable forwarding requests to the parent projects
This works only with the --interactive option
2022-10-13 12:58:15 +02:00
ca744aa7d7
Merge pull request #1167 from OlegGirko/extra-pkgs-from-file
Add "--extra-pkgs-from" ("-X") option to osc build
2022-10-13 12:52:12 +02:00
741180fc52
Merge pull request #1169 from dirkmueller/handle_dot_expansion_in_more_commands
use Path.cwd() consistently
2022-10-13 12:45:01 +02:00
Dirk Müller
e002a45527
Use tuples when possible 2022-10-13 10:31:47 +02:00
bac162a712
use Path.cwd() consistently
we have a mix of os.curdir and os.getcwd(). consolidate on the
python 3.x recommended method of Path.cwd()
2022-10-13 09:53:20 +02:00
Oleg Girko
f0935fe47d Add "--extra-pkgs-from" ("-X") option to osc build.
This option adds extra packages listed in the specified file to build.

For now, osc does not support automatic buildrequires.

When a package has automatic buildrequires, osc just
returns error code 9 that is returned by build,
but build leaves a list of missing dependencies in
".build.packages/OTHER/_generated_buildreqs" file inside build root.

These extra packages can be added using "--extra-pkgs" ("-x") option,
but this is very inconvenient if there are many of them.

Allowing to add extra dependencies listed in a file makes building
packages with automatic buildrequires much more convenient:
just do a first stage build, resulting in a file with list of
extra dependencies, and then add extra packages from this file
using "--extra-pkgs-from" ("-X") option that is added by this change.

Signed-off-by: Oleg Girko <ol@infoserver.lv>
2022-10-13 00:14:32 +01:00
bd69fe73cf expand "." in copypac and rdelete as referencing the workdir project
dot (".") is already used as magic "current project/package" in
other commands like "ls" for example, but in the most useful ones
like copypac and rdelete it was missing. this adds a function that
does the dot expansion and adds it to the respective command expansions.
2022-10-11 13:20:50 +02:00
6f45a09f3a
Merge pull request #1160 from dmach/submitrequest-allow-aliases
osc sr: Do not error out on using an alias to apiurl
2022-10-05 13:58:25 +02:00
119ca682de osc sr: Do not error out on using an alias to apiurl 2022-10-05 11:55:17 +02:00
82981f544d Fix "NameError: name 'core' is not defined" when using Package 2022-10-05 11:51:44 +02:00
Adrian Schröter
ab8c5d1692 add create-pbuild-config(cpc) command
which allows to create a working config for pbuild tool based on OBS server side data

The cross build support is not yet done
2022-10-04 13:15:40 +02:00
a68f96fc7f
Merge pull request #1153 from mackdk/fix-maintenance-help-url
Wrong documentation URL for maintenancerequest and createincident
2022-10-03 09:44:45 +02:00
b9f8112003
Merge pull request #1154 from dirkmueller/for_in_cleanup
Use a more readable 'if ... in ' construct
2022-10-03 09:43:06 +02:00
4edd4799a1 Use a more readable 'if ... in ' construct 2022-09-30 14:10:29 +02:00
Thomas Florio
2bbb098a8b
Fixed the documentation url for maintenancerequest and createincident 2022-09-30 12:28:58 +02:00
4c24f50df2 Replace remaining occurences of optparse.SUPPRESS_HELP with argparse.SUPPRESS 2022-09-30 10:27:10 +02:00
cc7de20598 Bring 'osc buildinfo -d/--debug' back 2022-09-30 09:57:42 +02:00
69af8b59a5 Bring 'osc build --verbose' back as --verbose-mode=MODE to avoid conflicts with global --verbose 2022-09-30 09:57:42 +02:00
1fe2b17957
Merge pull request #1144 from dmach/1141-search-requests-created-by-myself
Properly handle osc rq -M/--mine option
2022-09-20 13:09:25 +02:00
c8f4487201 Replace core.findpacs() with Package.from_paths() and Package.from_paths_nofail()
The original findpacs() was returning either [Package]
or ([Package], [str]) depending on the `fatal` option.
This confused pylint and it was returning false-positives:
E1101: Instance of 'list' has no '...' member (no-member)
2022-09-20 11:32:25 +02:00
175a44bc97 Fix calling findpacs() with os.curdir
A list of strings is expected, but a string was passed.
It was working only by coincidence, because iterating
through ["."] and "." gives the same result.
2022-09-20 10:48:05 +02:00
c263d950ca Fix 'osc revert' command 2022-09-20 10:04:04 +02:00
42dcc7ca3c Fix 'osc mv' command 2022-09-20 10:03:52 +02:00
451067bf05 Fix 'osc whois' command 2022-09-20 10:03:42 +02:00
e65bb3819d Fix 'osc importsrcpkg' command 2022-09-20 10:03:32 +02:00
c011fffa02 Fix 'osc workerinfo' command 2022-09-20 10:03:21 +02:00
553bbf7b7d Fix 'osc rremove' command 2022-09-20 10:03:13 +02:00
2d14d0d1ec Fix 'osc lock' command 2022-09-20 10:03:02 +02:00
84138fb41f Fix 'osc init' command 2022-09-20 10:02:48 +02:00
6629da6fc6 Improve 'api' command argparse handling 2022-09-20 10:01:28 +02:00
584fd5e0f4 Fix osc rq -M/--mine option to show only requests created by the user 2022-09-16 12:49:08 +02:00
30d967513e Migrate from get_request_list() to get_request_collection()
The new function uses a new, fast API call.
2022-09-16 12:49:08 +02:00
5761d6bbf7
Add information about osc vc using the EDITOR envar to the help output
While for some developers/veteran Linux users this might be obvious,
many people will probably find it hard to know why osc vc is using
editor X instead of Y though.
2022-09-15 23:01:53 -03:00
54e873605d Always list requests with 'new,review' states by default 2022-09-15 08:53:05 +02:00
824c324dd5 Replace 'if not <cond> is None' with 'if <cond> is not None' 2022-09-12 14:23:47 +02:00
7e67269b74 Replace 'if not <cond> in ...' with 'if <cond> not in ...' 2022-09-12 14:15:34 +02:00
fe59986e1c Run autopep8 to fix whitespace issues 2022-09-12 13:45:19 +02:00
b511be20ff Always import at the toplevel 2022-09-12 13:45:19 +02:00
6d891d7488 Remove superfluous parens 2022-09-12 13:45:19 +02:00
ee39653dc7 Fix indentation 2022-09-09 09:33:51 +02:00
beaf312eee Use implicit booleaness instead of len() to test if iterables are empty 2022-09-09 09:33:51 +02:00
ff63226c2f Properly test for None 2022-09-09 09:33:51 +02:00
a362edee5e Handle conflicting options manually because the mutually exclusive group is buggy 2022-08-26 17:10:24 +02:00
3763bff901 Remove the '-A' option from the 'maintainer' command
It conflicts with the global '-A/--apiurl' option.
Use the long '--all' version from now on.
2022-08-26 17:04:56 +02:00
98b76d14b6 Replace the '-q/--hide-legend' option in 'prjresults' command with global '-q/--quiet' option 2022-08-26 17:04:41 +02:00
b5491911ea Add global options to subcommands so they can be specified in any place 2022-08-26 16:23:48 +02:00
41ceb4b5f8 Remove deprecated 'GnomeKeyringCredentialsManager' and related code 2022-08-25 13:20:25 +02:00
ed49664d3e Remove deprecated '--skip-validation' option from the 'commit' command 2022-08-25 13:06:58 +02:00
364a945440 Remove deprecated '--oldpkg', '--oldprj' options from the 'rdiff' command 2022-08-25 13:06:48 +02:00
dc22af0183 Remove deprecated subcommands 'create', 'list', 'log', 'show', 'decline', 'accept', 'delete', 'revoke' from the 'submitrequest' command 2022-08-25 10:01:36 +02:00
28c898a2cb Remove deprecated '--seperate-requests' option from the 'submitrequest' command 2022-08-25 09:57:42 +02:00
47d4aa1eda Remove deprecated '--raw' option from the 'develproject' command 2022-08-25 09:56:36 +02:00
cd66d2ab19 Remove deprecated '--maintained' option from the 'search' command 2022-08-25 09:50:42 +02:00
ee93af6d5f Remove deprecated 'rlog' command 2022-08-25 09:48:31 +02:00
c7df2a154b Remove deprecated 'rprjresults' command 2022-08-25 09:48:13 +02:00
7c282e80e9 Remove deprecated 'rresults' command 2022-08-25 09:47:49 +02:00
81d8c821d1 Remove deprecated 'results_meta' command 2022-08-25 09:47:26 +02:00
bfcdba8b4d Remove deprecated 'deleteprj' command 2022-08-25 09:46:54 +02:00
9ca0a5122e Remove deprecated 'deletepac' command 2022-08-25 09:46:35 +02:00
59e697e61e Remove deprecated 'editmeta' command 2022-08-25 09:46:08 +02:00
9cc4a5594f Fix resource warnings (unclosed files) 2022-08-24 08:43:09 +02:00
31b804eeec
Merge pull request #1114 from dmach/replace-imp-with-importlib
Replace imp with importlib
2022-08-23 08:29:34 +02:00
ddec088efc Replace imp with importlib 2022-08-22 15:45:25 +02:00
2892f1bb11 Do not list declined requests by default 2022-08-22 11:34:56 +02:00
lethliel
4b2bfb0b80 add version command to print the used version 2022-08-17 22:21:02 +02:00
6cb7412749 Remove duplicated --debug and --verbose options
Additional changes:
* rename getbinaries --debug to --debuginfo to avoid conflicts
* switch conf['verbose'] from int to bool

The changes were needed because the new argparser behaves differently
and commands such as `osc ls` ran in verbose mode by default.
2022-08-12 10:06:00 +02:00
84c97ab625 Fix crash caused by concatenating bytes with string 2022-08-12 10:06:00 +02:00
be8a5268a8 Replace unmaintained cmdln.py with a custom code
Cmdln.py is unmaintained for years and uses deprecated optparse.
Let's replace it with a simpler custom code. Also remove code
that generates man page, we'll replace it with a 3rd party tool.
2022-08-12 10:05:59 +02:00
e469c2c184
Merge pull request #1041 from AdamMajer/master
Add support for project separator
2022-08-12 10:03:23 +02:00
Anatoli Babenia
0036aa931e Print debug messages to stderr 2022-08-04 17:12:57 +03:00
Anatoli Babenia
988f19f9ce Document build repo selection logic 2022-08-03 13:36:31 +03:00
Anatoli Babenia
0660c14a62 Add debug print for REPO (and desc just in case) 2022-08-03 10:40:29 +03:00
Anatoli Babenia
0b6039025f Shortened build help and add debug prints
Debug prints are needed for troubleshooting ARCH selection problem in
https://github.com/openSUSE/osc/pull/241#issuecomment-1203463612
2022-08-03 08:36:51 +03:00
Anatoli Babenia
d9bc6d1c12 Remove unused code for discontinued distributions 2022-08-02 14:47:56 +03:00
Anatoli Babenia
5751222bd0 Remove extra line from the end of osc dists output 2022-08-02 14:45:23 +03:00
Anatoli Babenia
4d6a6aaf96 Move output formatting from core into commandline
This makes `get_distributions()` return list of dicts.
2022-08-02 14:45:23 +03:00
Anatoli Babenia
10a156d4ca Fix spelling mistake in get_distributions method name 2022-08-02 14:45:23 +03:00
Anatoli Babenia
560e556d36 Do not ask for login for -h,--help 2022-07-29 18:59:25 +03:00
eb83b42f32 Fix several undefined-variable issues reported by pylint 2022-07-28 21:01:16 +02:00
feb53212dd Modernize code with pyupgrade
pyupgrade --keep-percent-format --py36-plus `find -name '*.py'`
2022-07-28 19:14:12 +02:00
229913a77f Clean imports up, drop python 2 fallbacks 2022-07-28 13:17:43 +02:00
e16e196fa1
Merge pull request #1040 from dmach/fix/multibuild-commandline
Fix -M/--multibuild user experience, allow globs where possible
2022-07-28 11:03:34 +02:00
84fa637556 Add XDG compatible location for osc plugins.
I believe it is generally a good idea to move stuff from $HOME to
XDG-compatible directories.
2022-07-28 10:26:13 +02:00
ff1ae5e25e Fix multibuild packages in osc wipebinaries 2022-07-26 09:51:16 +02:00
f70b480cab Fix multibuild packages in osc jobhistory 2022-07-26 09:51:16 +02:00
a51524e5af Fix multibuild packages in osc buildhistory 2022-07-26 09:51:16 +02:00
1a4942da83 Fix multibuild packages in osc build 2022-07-26 09:51:16 +02:00
5198b6334b Fix multibuild packages in osc buildinfo 2022-07-26 09:51:16 +02:00
0fd93f7443 Fix multibuild packages in osc triggerreason 2022-07-26 09:51:16 +02:00
182e8e20a4 Fix multibuild packages in osc remotebuildlog 2022-07-26 09:51:15 +02:00
26ad5aa35c Fix multibuild packages in osc buildlog 2022-07-26 09:51:15 +02:00
502bff50ff Fix multibuild packages in osc restartbuild 2022-07-26 09:51:15 +02:00
30a3106375 Fix multibuild packages in osc sendsysrq 2022-07-26 09:51:15 +02:00
55ad41d33b Fix multibuild packages in osc results 2022-07-26 09:51:15 +02:00
6ccdb9cfe3 Fix multibuild packages in osc rebuild 2022-07-26 09:51:15 +02:00
637cfe8471
Merge pull request #1023 from dmach/fix/622-additional-changes
parseRevisionOption(): Raise an exception on invalid revisons
2022-07-25 18:26:06 +02:00
8d843b5968 Revert "interpretation of string literals in messages"
Emojis were broken due to this commit.

The revert causes a change in behavior:
"\n" no longer gets resolved to a newline.
It is suggested to do the following instead:

$ osc <command> ... -m "first line
second line"

This reverts commit 16fda3115c.
2022-07-07 15:42:22 +02:00
Adam Majer
f10247014d Process input with configurable project separators
This allows for usage of configurable project name separator in
the command line inputs

Fixes: #1024
2022-07-04 15:05:05 +02:00
Adam Majer
c4c2d2a933 Add project_separator to config file
This allows for arbitrary string to be used as a project
separator instead of restricting oneself to : or directory
structure.

Fixes: #1024
2022-07-04 15:05:05 +02:00
253d760a76 fix crash on "osc up" for git based package/projects 2022-06-24 08:46:49 +02:00
295ea7f356 Warn when trying to commit a prj/pac managed in scm 2022-06-08 14:18:33 +02:00
fad89f8e09
Merge pull request #1027 from adrianschroeter/github
add another exception for github URLs for "osc add"
2022-06-02 10:21:02 +02:00
a223dd085a
Merge pull request #1009 from dmach/aggregatepac-flavor
Support flavors in aggregatepac
2022-06-02 10:06:21 +02:00
cf5da11b26 Enable md5 revisions in osc log 2022-06-02 10:02:32 +02:00
Mihai Moldovan
f2474fa7f0 commandline: handle calls without arguments gracefully
Fixes the following error:

```
%  osc
Traceback (most recent call last):
  File "/usr/bin/osc", line 45, in <module>
    r = babysitter.run(osccli)
  File "/usr/lib/python3.10/site-packages/osc/babysitter.py", line 67, in run
    return prg.main(argv)
  File "/usr/lib/python3.10/site-packages/osc/cmdln.py", line 341, in main
    self.postoptparse()
  File "/usr/lib/python3.10/site-packages/osc/commandline.py", line 137, in postoptparse
    if self._get_canonical_cmd_name(self.args[0]) == "help":
IndexError: list index out of range
```
2022-05-30 20:43:37 +02:00
Marco Strigl
c3d535c3b2
Merge pull request #1012 from adrianschroeter/obs_git
initial obs-git support
2022-05-24 11:39:45 +02:00
cc0b8f1606 Never require login in the help command 2022-05-05 11:07:28 +02:00
Dirk Müller
56ad831a39
Add osc helm type build support 2022-05-04 23:17:20 +02:00
c875ca2886
initial obs-git support
* init command is working inside of a git repository
* downloadassets command fetches references assets from build description
* checkout is cloning from git
2022-04-29 09:59:13 +02:00
Dirk Müller
3ed913c007
Whitespace fixes as expected by pycodestyle/pep8 2022-04-27 14:13:18 +02:00
Dirk Müller
69c83d41aa
add support for building preinstall images
This is yet another build type supported by the obs-build
script intended to build images that speed up the build setup
phase.
2022-04-27 14:00:00 +02:00
Dirk Müller
32f37e307a
Stylistic cleanups 2022-04-26 09:37:18 +02:00
Marco Strigl
d5e04f806f
Merge pull request #1015 from dmach/fix/1014-getbinaries-download-into-subdirs
Fix getbinaries command by downloading files in subdirs named by the packages
2022-04-25 11:29:35 +02:00
e88459e02b
add another exception for github URLs for "osc add"
osc#905
2022-04-11 08:48:30 +02:00
Daniel Mach
34563aa7b2
Merge pull request #850 from lethliel/fix_issue_849
use sr_ids[0] for superseding
2022-04-07 10:43:43 +02:00
Daniel Mach
5d6cfe80d5
Merge pull request #622 from jberry-suse/parseRevisionOption-clean
osc/core: parseRevisionOption(): cleanup and make logic consistent.
2022-04-04 10:52:37 +02:00
c9f8fedf01 Fix getbinaries by downloading logs and metadata into subdirs named by packages
This applies when downloading multiple packages, typically the whole repo.
When downloading a single package, everything works as usual
and the subdir is not created.
2022-03-30 11:14:19 +02:00
a342eacf2e Revert "Skip fetching metadata and logs in the getbinaries command"
This reverts commit 08a70952c0.
2022-03-21 17:10:07 +01:00
Daniel Mach
cb4b2389a6
Merge pull request #747 from adrianschroeter/request_diffing
support request diffing relative to a former request
2022-03-16 14:20:20 +01:00
c568cf7b41 support request diffing relative to a former request 2022-03-16 13:57:01 +01:00
Daniel Mach
ade215c071
Merge pull request #460 from JanZerebecki/rm-dead-doc-ref
Remove reference to non existing documentation
2022-03-15 09:56:41 +01:00
5c5597432c Support flavors in aggregatepac 2022-03-02 14:38:21 +01:00
Daniel Mach
ced706080b
Merge pull request #1006 from dmach/getbinaries-multibuild
Fix getbinaries command to fetch also multibuild packages
2022-02-28 16:35:26 +01:00
e37e144099 Fix getbinaries -M/--multibuild-package option usage 2022-02-28 13:31:51 +01:00
08a70952c0 Skip fetching metadata and logs in the getbinaries command
They have identical names for all downloaded packages
and get overwritten by the last downloaded file.
Unless we dowload them into subdirs or prefix them with package name,
it makes no sense to download them.
2022-02-28 13:09:37 +01:00
John Paul Adrian Glaubitz
483e07042a Add -F option to osc submitreq
Fixes #1001
2022-02-25 12:01:10 +01:00