Skip to content

Investigate reworking the project link implementation #18601

@mlschroe

Description

@mlschroe

Currently project links are implemented in the find_package method of the project model. They work by going through the configured links and returning the package object from the linked project.

The downside of this is that the information about the project that contained the link is lost. This leads to some problems, because access checks are done with the wrong project. E.g. if you link to a project you can't modify (like openSUSE:Factory) you trigger rebuilds for the packages.

My idea is to implement linked projects with "readonly" packages like already in use for remote projects or scmsync projects. This means that find_package clones the package data and sets the project to the right value. The project where the package lives needs to be stored in another attribute, of course.

Of course this needs adjustments in a couple of places. For example the UI wants to display the real location of the package. But I think this is a sensible change and reduces mistakes in the future.

Metadata

Metadata

Assignees

No one assigned

    Labels

    FeatureFrontendThings related to the OBS RoR app

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions