Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

staging_plugin enhancement: list --supersede --dry-run #1279

Open
fcrozat opened this issue Nov 30, 2017 · 2 comments
Open

staging_plugin enhancement: list --supersede --dry-run #1279

fcrozat opened this issue Nov 30, 2017 · 2 comments

Comments

@fcrozat
Copy link
Contributor

fcrozat commented Nov 30, 2017

list --supersede is very useful to "cleanup" incoming requests with pending one, but it can also cause a "supersede" in a staging you were about to accept (everything is green) or didn't want to touch (very slow to rebuild).

Some --dry-run for the supersede would be useful, to analyze if supercede will be "safe" or not.

@DimStar77
Copy link
Contributor

This still won't guarantee the staging remains acceptable:

  • A user could do osc rq --supersede
  • the time gap between running osc staging list --dry-run vs finally running the execution is non-atomic, changes could happen in the mean time (a new submission incoming)

With those limitations understood, I'd say a --dry-run CAN be beneficial in some cases

@jberry-suse
Copy link
Contributor

The supersede code was rather fragile as I discovered when trying to make it actually output what changes were made. Adding a dry-run mode and propagating through the call stack will likely either be cumbersome or somewhat ugly to do. The ReviewBots have a --dry-run mode that provides a class variable that can be checked before making actual changes which could be mimicked in the StagingAPI class.

Alternatively, perhaps one could indicate the stagings on which to act (ie ones you are not about to accept). The supersede command I added already supports acting on specific packages and requests and should not be too hard to filter on staging.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants