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

chore: use stable as default image #30

Closed
wants to merge 4 commits into from
Closed

Conversation

fforootd
Copy link
Member

@fforootd fforootd commented Aug 8, 2022

No description provided.

@fforootd fforootd changed the title chore: propose to use stable as default image chore: use stable as default image Aug 8, 2022
@eliobischof
Copy link
Member

eliobischof commented Aug 10, 2022

I couldn't find any best practices for this.
The best thing IMO would be if we published additional docker tags for only major and minor versions, then set v2 as appVersion?

Edit: Then we would need release channels for each major version, like v2-stable?
In the meantime, I'd add stable as appVersion.

charts/zitadel/Chart.yaml Outdated Show resolved Hide resolved
charts/zitadel/values.yaml Outdated Show resolved Hide resolved
fforootd and others added 2 commits August 10, 2022 18:32
Co-authored-by: Elio Bischof <eliobischof@gmail.com>
Co-authored-by: Elio Bischof <eliobischof@gmail.com>
Copy link
Member Author

@fforootd fforootd left a comment

Choose a reason for hiding this comment

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

Incorporated the changes

@fforootd
Copy link
Member Author

I couldn't find any best practices for this. The best thing IMO would be if we published additional docker tags for only major and minor versions, then set v2 as appVersion?

Edit: Then we would need release channels for each major version, like v2-stable? In the meantime, I'd add stable as appVersion.

Interesting, how do other established players like grafana, gitlab, ... do this?

@eliobischof
Copy link
Member

@eliobischof
Copy link
Member

eliobischof commented Aug 11, 2022

If we want to have a fixed appVersion for a chart version too, maybe we should automate things.

@eliobischof
Copy link
Member

I think we should publish a stable channel for the chart repository as a whole somehow

@fforootd
Copy link
Member Author

I think we should publish a stable channel for the chart repository as a whole somehow

And when do we want to do this? In this PR, or should we proceed first with merging?

@eliobischof
Copy link
Member

eliobischof commented Aug 31, 2022

I think we should publish a stable channel for the chart repository as a whole somehow

And when do we want to do this? In this PR, or should we proceed first with merging?

I think we should close this PR, implement zitadel/zitadel#4219 instead and create a new issue for the charts stable channel. Edit: #36

@juliusrickert
Copy link

Using mutable image tags is considered to be an anti–pattern.

Firstly, you'd need to use a pullPolicy of Always, breaking in case of registry downtime or other issues.
Secondly, in case of a rollback, the image has been overwritten, so the rolled-back release may not work, or, potentially worse, different nodes could have different versions of the image.

Same goes for a Helm chart and an app version. Otherwise, it may be impossible to install an old version of the chart due to configuration changes or similar.

Automating the release process may be the way to go here. If the main application strongly adheres to semver, I think this should work.

@fforootd
Copy link
Member Author

Using mutable image tags is considered to be an anti–pattern.

Firstly, you'd need to use a pullPolicy of Always, breaking in case of registry downtime or other issues. Secondly, in case of a rollback, the image has been overwritten, so the rolled-back release may not work, or, potentially worse, different nodes could have different versions of the image.

Same goes for a Helm chart and an app version. Otherwise, it may be impossible to install an old version of the chart due to configuration changes or similar.

Automating the release process may be the way to go here. If the main application strongly adheres to semver, I think this should work.

True, I agree with this. Although I think using a latest tag is fine for easy to start cases.

Since ZITADEL strictly uses semver it should be feasible to create new tags as needed for this helm chart.

Since @eliobischof is in vacation this week he will pick-up next week with this 😁

@fforootd
Copy link
Member Author

@eliobischof can you have a look into this?

@eliobischof
Copy link
Member

I still think it is a bad idea to use mutable tags by default because I don't assume the chart is just used in easy to start cases.

I would rather add a --set image.tag=latest option to the docs and automatically trigger chart releases when ZITADEL is released, regardless of the ZITADEL tags release channel. I can do it tomorrow, it's not a big deal.

@fforootd
Copy link
Member Author

I still think it is a bad idea to use mutable tags by default because I don't assume the chart is just used in easy to start cases.

I do to, what I meant by looking into, is that we should automate the lifecycle of the helm chart depending on the ZITADEL release.

@eliobischof
Copy link
Member

Replaced by #43

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

Successfully merging this pull request may close these issues.

None yet

3 participants