openSUSE / open-build-service

Build and distribute Linux packages from sources in an automatic, consistent and reproducible way #obs
https://openbuildservice.org
GNU General Public License v2.0
939 stars 440 forks source link

automatic import of .src.rpm does not work #5728

Open seife opened 6 years ago

seife commented 6 years ago

Issue Description

Uploaded source rpms are not automatically imported

Expected Result

After uploading a source rpm, it should be automatically unpacked and imported by a source service, as described by Adrian here: https://lists.opensuse.org/opensuse-buildservice/2018-08/msg00052.html

How to Reproduce

  1. Go to your home project
  2. Click on add package, choose a name and description
  3. Click on "add file", add a source rpm
  4. nothing happens, all build targets change to "excluded" state after a short time.

The same happens if this is done via the osc command line client (osc mkpac foo; cp source.rpm foo/; osc add foo/source.rpm; osc commit -m "foo" foo/)

dmarcoux commented 6 years ago

Thank you for reporting this issue. I had a look and was able to reproduce it.

For anyone interested in reproducing this, get some source RPMs with zypper source-download -d /some/dir/.

ChrisBr commented 6 years ago

If you provide the URL it works.

3) Switch to remote_url 4) e.g. add https://build.opensuse.org/package/binary/download/openSUSE:Factory/bzip2/standard/x86_64/bzip2-1.0.6-42.1.src.rpm 5) Click add file 6) A source service gets generated download_src_package

@adrianschroeter maybe you can clarify if the normal upload should also work and which service should do that? I did not find any traces in the code ...

ChrisBr commented 6 years ago

After discussions with @adrianschroeter in IRC, this works as expected. Assigning to @adrianschroeter to create a card for grooming if this is priority.

adrianschroeter commented 4 years ago

re-assigning to current webui PO.

IMHO we should behave the same when using the "Add File" button.

And it would be super nice if we would have the merge service functionality available. For example behind a button which is avaliable when _service exists. That way a user could even edit files he imported using this functionality (or any other service which we provide).

The webui could do so by executing the following api calls to the src server:

POST:/source/$project/$package?cmd=waitservice POST:/source/$project/$package?cmd=mergeservice

the first one will ensure that the user is not getting an error because the download and extraction is still running.

isbm commented 4 years ago

@adrianschroeter first the functionality would be best just overall fixed. Web UI additional features probably should be in another issue.

isbm commented 4 years ago

@adrianschroeter question: osc add foo.src.rpm should unrpm it in-place, right? It doesn't happen though...

hennevogel commented 3 years ago

Let me try to clarify this.

This is how it works right now:

Peek 2020-12-10 13-54

Achieving the same result when you use the file chooser

Screenshot from 2020-12-10 14-06-36

on that page is the feature we talk about.