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

feat(plugins): Plugin version pinning #791

Merged
merged 1 commit into from
Apr 29, 2020

Conversation

robzienert
Copy link
Member

Adds new metadata store for pinning plugin versions to a server group. This
ensures a server group will continue to load the same plugins even through
instance replacement on long-lived server groups.

Metadata is regularly cleaned up, leaving the last N records for a particular
cluster, by default leaving the last 10 (which is likely excessive).


@RestController
@RequestMapping("/pluginVersions")
public class PluginVersionController {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need an endpoint for defining the "latest" versions for a service? I.E., in the case wherein the server group is unknown (because it has not been deployed yet) and we want to define the versions for that next server group.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think that would be an endpoint that falls in scope of this PR. We'll need ways to actuate the versions, but there's a lot more than just that endpoint involved in making the feature work - I'd rather tackle that when we get to the overall feature. WDYT?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That works for me. 👍

Copy link
Contributor

@jonsie jonsie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks legit.

@jonsie
Copy link
Contributor

jonsie commented Apr 28, 2020

I think we'll want to add a DefaultTableDefinition and a migration to create the plugin_versions SQL table.

Adds new metadata store for pinning plugin versions to a server group. This
ensures a server group will continue to load the same plugins even through
instance replacement on long-lived server groups.

Metadata is regularly cleaned up, leaving the last N records for a particular
cluster, by default leaving the last 10 (which is likely excessive).
@robzienert robzienert added the ready to merge Approved and ready for merge label Apr 29, 2020
@mergify mergify bot merged commit d4d33ed into spinnaker:master Apr 29, 2020
@mergify mergify bot added the auto merged label Apr 29, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants