Skip to content

feat(track/2): Smooth cross-track upgrades#304

Open
MichaelThamm wants to merge 7 commits intotrack/2from
test/lifecycle-input-track-2
Open

feat(track/2): Smooth cross-track upgrades#304
MichaelThamm wants to merge 7 commits intotrack/2from
test/lifecycle-input-track-2

Conversation

@MichaelThamm
Copy link
Copy Markdown
Contributor

@MichaelThamm MichaelThamm commented Apr 24, 2026

Blocked by:

Workaround for:

Blocks:

Relates to:

Issue

We want a smooth UX for users upgrading across tracks for our product modules: COS and COS Lite. Ideally, a user should be able to take their track/2 state and plan an upgrade to track/3.0 without any manual intervention.

Solution

  1. Use the juju_charm datasource to provide the latest revisions for a charm in a specific track.
  2. Use lifecycle {replace_triggered_by = [terraform_data.grafana_ingress_interface]} to replace the juju_integration in the event that the interface changes.

Checklist

  • PR title makes an appropriate release note and follows conventional commits syntax.
  • Merge target is the correct branch, and relevant tandem backport PRs opened.
  • Update the README

Context

In the future charms will have unique tracks which the products needs to map to:

Testing Instructions

All testing will be conducted in:

The general idea is to:

  1. Deploy COS 2/stable
  2. Update TF module source to dev/edge
  3. terraform init -upgrade; terraform apply

Documentation

Documentation will be addressed in:

Comment thread terraform/cos/applications.tf Outdated

module "grafana" {
source = "git::https://github.com/canonical/grafana-k8s-operator//terraform?ref=track/2"
source = "git::https://github.com/canonical/grafana-k8s-operator//terraform?ref=test/lifecycle-input-track-2"
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Suggested change
source = "git::https://github.com/canonical/grafana-k8s-operator//terraform?ref=test/lifecycle-input-track-2"
source = "git::https://github.com/canonical/grafana-k8s-operator//terraform?ref=track/2"

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Make sure to test the full demo again before reverting this and then merge.

Comment thread terraform/cos-lite/applications.tf Outdated
Comment thread terraform/cos-lite/upgrades.tf
Comment thread terraform/cos-lite/upgrades.tf Outdated
Comment thread terraform/cos/upgrades.tf Outdated
@MichaelThamm MichaelThamm marked this pull request as ready for review April 27, 2026 17:33
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.

4 participants