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

434 Commits

Author SHA1 Message Date
cf154b3465 Change 'build' command to pass '--jobs' option to 'build' tool only if 'build_jobs' > 0 2024-05-10 11:01:21 +02:00
2eb51575cb Improve 'build' and 'buildinfo' commands by uploading *.inc files to OBS for parsing BuildRequires (boo#1221340) 2024-05-07 13:45:51 +02:00
b226aac330 Fix variable name in f-string in create_build_descr_data() 2024-04-18 10:32:06 +02:00
9aae67615b Fix a message in create_build_descr_data() by converting to a f-string 2024-04-18 09:13:40 +02:00
Wolfgang Frisch
f2952bb210 Add rootless build support for 'qemu' VM type
Fixes https://github.com/openSUSE/osc/issues/1511
2024-03-11 14:27:37 +01:00
4ab81b6d44 Fix crash when no prefered packages are defined 2024-03-07 16:28:00 +01:00
8b5bdb2a01 Fix 'buildinfo' command to send complete local build environment as the 'build' command does 2024-02-28 09:31:39 +01:00
0f8a8430fc Remove all path quoting, rely on makeurl() 2024-02-09 13:26:37 +01:00
7434a31a89 productcompose: Support building with updateinfo.xml data 2023-11-24 15:47:12 +01:00
c3bcc276a5 obsproduct got renamed to productcompose 2023-11-20 15:45:47 +01:00
a7731e5ec9 fix noinstall filtering of obsproduct builds 2023-11-17 16:59:40 +01:00
c79a3a57ff initial support for obsproduct build type 2023-11-16 11:10:27 +01:00
3d20497ce9 Disable preinstall images in rootless builds 2023-11-02 16:06:55 +01:00
a33d4c2d41 Print a hint to clean the build root after a failed build 2023-09-29 09:53:59 +02:00
41ce932673 Fix 'build' command to pass '--vm-type' option to the underlying build tool 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
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
ec2c93a4be Fix string + int concatenation errors in 'build' command by using f-strings instead 2023-08-28 11:30:44 +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
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
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
2502f7a57f Add glob support to the 'trusted_prj' config option 2023-05-02 09:56:27 +02:00
2cdf0520f3 Fix build.get_repo() to return only directory that contains 'repodata/repomd.xml' 2023-04-27 13:58:13 +02:00
9f62fce5a4 Add '--buildtool-opt' option passing options to underlying rpmbuild to the 'build' command 2023-04-26 11:28:01 +02:00
0ad39a9ec9 build: New option 'disable_hdrmd5_check' to ignore hdrmd5 mismatches 2023-02-21 14:53:08 +01:00
c6e8fd103e build: Fix reading extra-pkgs from oscrc 2023-01-26 14:11:59 +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
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
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
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
5d0f1f6176
Merge pull request #1072 from Firstyear/20220506-highlight-md5-faults
OBS has a fault where is sends invalid md5s
2022-10-12 09:13:22 +02:00
lethliel
6c6428fbaa fix osc build
config['api_host_options'] were missing
extra_pkgs is a list not a str
2022-10-07 20:52:58 +02:00
William Brown
647c4fe34d OBS has a fault where is sends invalid md5s
This causes downloads to come from the api, generally on noarch packages.
However, in countries like australia, due to OBS' high latency, and poor
bandwidth, these faults can cause downloads to take more than an hour, compared
to using a local mirror which can take minutes. There is actually nothing
wrong with the packages it all, OBS just sends the wrong md5.

As a result, ignore the problem and complain about it, because OBS is broken
here, not osc, and this wastes a lot of time.
2022-10-06 10:50:24 +10: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
69af8b59a5 Bring 'osc build --verbose' back as --verbose-mode=MODE to avoid conflicts with global --verbose 2022-09-30 09:57:42 +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
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
f12c72a69f Fix dangerous (mutable) default values 2022-09-12 13:45:19 +02:00
ee39653dc7 Fix indentation 2022-09-09 09:33:51 +02:00
ff63226c2f Properly test for None 2022-09-09 09:33:51 +02:00
804db37dd4 Add missing 'apiurl' argument when creating CookieJarAuthHandler instance in build.py 2022-09-08 14:02:50 +02:00
eb83b42f32 Fix several undefined-variable issues reported by pylint 2022-07-28 21:01:16 +02:00