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

[Feature] Re-inflate more releases when a new release is found #5

Open
HebaruSan opened this issue Jul 13, 2019 · 1 comment
Open
Labels
Enhancement New feature or request Indexer Receives inflated modules and adds them to CKAN-meta

Comments

@HebaruSan
Copy link
Member

HebaruSan commented Jul 13, 2019

This is an outgrowth of KSP-CKAN/CKAN#2789 (comment). I assume that the initial functionality of the queue-based bot will be identical to NetKAN-bot, so ideas for further improvements should be submitted here for better tracking.

Motivation

Some modules such as KSPInterstellarExtended and Kopernicus-Backport upload multiple releases at once, one per supported game version. Currently the bot only has the ability to crawl the latest release, so intervening releases can be missed.

The SpaceDock web hook currently addresses this for KSPInterstellarExtended; each release triggers inflation as it is uploaded, so uploading multiple releases in quick succession usually allows each one to be indexed. However, this does not help with modules that are hosted outside of SpaceDock.

Suggestion

When the Indexer component receives inflated metadata from its input queue, it should check whether the file for that version already exists. If not, then we may have caught one of these multiple-release events; the same module should then be re-submitted to the Inflator's input queue with the Releases attribute set to 3 or 4 or 5.

Maybe this should be controlled by a netkan property?

x_netkan_check_releases: 5

Note that if we implement this, it should also turn off the auto-epoch feature of KSP-CKAN/CKAN#2824, because the releases are likely to be intentionally out of order.

@HebaruSan HebaruSan added the Enhancement New feature or request label Jul 27, 2019
@techman83
Copy link
Member

This could be straight forward, the scheduler could just use an attribute on the sqs message (we already have a command line flag for this don't we?). If the x_netkan_check_releases exists, set a check_releases flag on the outgoing message and the indexer will take care of firing off an inflation task with the check_releases flag set to true.

@DasSkelett DasSkelett added the Indexer Receives inflated modules and adds them to CKAN-meta label Oct 23, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement New feature or request Indexer Receives inflated modules and adds them to CKAN-meta
Projects
None yet
Development

No branches or pull requests

3 participants