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

mimirtool: Add new migrate-utf8 command #7383

Merged
merged 12 commits into from
Feb 15, 2024
Merged

mimirtool: Add new migrate-utf8 command #7383

merged 12 commits into from
Feb 15, 2024

Conversation

grobinson-grafana
Copy link
Contributor

@grobinson-grafana grobinson-grafana commented Feb 14, 2024

What this PR does

This commit adds a new migrate-utf8 command to mimirtool to migrate Alertmanager configurations for UTF-8 strict mode. It includes updated docs on how to use the command and validate its output.

Which issue(s) this PR fixes or relates to

Fixes #

Checklist

  • Tests updated.
  • Documentation added.
  • CHANGELOG.md updated - the order of entries should be [CHANGE], [FEATURE], [ENHANCEMENT], [BUGFIX].
  • about-versioning.md updated with experimental features.

@grobinson-grafana grobinson-grafana self-assigned this Feb 14, 2024
Copy link
Contributor

@gotjosh gotjosh left a comment

Choose a reason for hiding this comment

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

LGTM

Can you please add a changelog entry?

Copy link
Member

@jdbaldry jdbaldry left a comment

Choose a reason for hiding this comment

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

In general, it's better to keep documentation timeless and instead keep changes and announcements to release notes or changelogs.

Is it possible that this can be rewritten to be timeless documentation?

If not, do we know when this will no longer be "new" and need preparation? For example, will it be the "normal" state of things in the next release of Mimir or perhaps the one after that?

It will be important to update the documentation to reflect that once we hit that time.

@grobinson-grafana
Copy link
Contributor Author

In general, it's better to keep documentation timeless and instead keep changes and announcements to release notes or changelogs.

Is it possible that this can be rewritten to be timeless documentation?

Hmm, I'm not sure, let's see if we can? The docs here describe a one time command some Mimir users will need to run, depending on the state of their current configuration. This command is not really for Mimir server owners, but the tenants in those servers. If release notes and CHANGELOG.md is the best place for that then I'm happy to go with whatever works.

If not, do we know when this will no longer be "new" and need preparation? For example, will it be the "normal" state of things in the next release of Mimir or perhaps the one after that?

It will be important to update the documentation to reflect that once we hit that time.

The transition period is going to be ~6 months, after that, the backwards compatible code will be removed. If a tenant has not prepared their configuration before that time then their Alertmanager configuration may stop working, depending on whether it had any incompatible matchers in the first place.

@grobinson-grafana grobinson-grafana changed the title mimirtool: Add new prepare command mimirtool: Add new migrate-utf8 command Feb 14, 2024
This commit adds a new prepare command to mimirtool to prepare
Alertmanager configurations for UTF-8 strict mode. It includes
updated docs on how to use the command and validate its output.
@grobinson-grafana
Copy link
Contributor Author

I had to rebase main due to a conflict in go.mod.

Copy link
Member

@jdbaldry jdbaldry left a comment

Choose a reason for hiding this comment

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

Docs look great to me, thank you!

Perhaps a maintainer can advise where we should announce the breaking change to make sure that it is properly communicated.

@gotjosh
Copy link
Contributor

gotjosh commented Feb 15, 2024

Perhaps a maintainer can advise where we should announce the breaking change to make sure that it is properly communicated.

Hi Jack! There's no breaking change... yet. We're planning on making strict mode turned on by default in a couple of versions but we've plenty of time before that change is made.

@gotjosh
Copy link
Contributor

gotjosh commented Feb 15, 2024

I'm going to proceed with the merging of this as we have customers that are waiting to use this - please do let @grobinson-grafana know if there's more feedback he should address in a further PR @jdbaldry and @56quarters

@gotjosh gotjosh merged commit 3d00a4f into main Feb 15, 2024
28 checks passed
@gotjosh gotjosh deleted the grobinson/mimirtool-fix branch February 15, 2024 10:41
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

4 participants