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

Tracking Operator updates and Helm releases #26

Open
devdattakulkarni opened this issue Feb 14, 2019 · 0 comments
Open

Tracking Operator updates and Helm releases #26

devdattakulkarni opened this issue Feb 14, 2019 · 0 comments

Comments

@devdattakulkarni
Copy link
Contributor

This repository contains all the operators code.

  • When any operator code is complete we should create a new release. Trouble with following semantic versioning for this repo is that each operator is independent of others. If we update Moodle Operator's public API then we bump the major number. But later if we update Postgres Operator's internal implementation then without changing its public API then we should be updating only the minor number. But when Moodle Operator was changed we had already bumped the major number. In reality that major version bump will break the expectation for Postgres operator users even before we trying to make a change to accommodate minor version change.

So looks like Semantic versioning does not play nicely with Mono repos.

So what should we do?

I guess simplest approach is we follow a monotonically increasing number scheme when tagging a release in this repo. Then in each Operator's helm chart we include this release tag number so that we know exactly which version of the code has been used when creating the Helm chart. What about the Moodle container? What versioning number scheme should we use for that? It makes sense to use semantic versioning for tagging Moodle container images. However, if we do that how/where can we maintain the association between the monotonically increasing release numbers of the code and the semantic versioning numbers of the container images?

One option is we combine the two schemes. Basically tag the container image as:
releasenumber-semantic-version-number

Semantic version numbers are incremented as per its own rules based on whether external API has been modified or not.

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

No branches or pull requests

1 participant