Skip to content

Profile rollout state - #204

Merged
gianlucam76 merged 1 commit into
projectsveltos:mainfrom
gianlucam76:profile-rollout-state
Oct 27, 2026
Merged

gianlucam76 merged 1 commit into
projectsveltos:mainfrom
gianlucam76:profile-rollout-state

Conversation

@gianlucam76

Copy link
Copy Markdown
Member

No description provided.

Description

A profile with maxUpdate does not reach all its matching clusters at once. The
matching clusters table only showed the deployment status of each cluster's
current ClusterSummary, so a cluster that is queued behind maxUpdate and still
runs the previous configuration looked Provisioned.

This shows where each matching cluster is in the rollout of the latest version
of the profile. It uses the rolloutState and rollout fields that ui-backend now
returns from GET /profile (ui-backend PR: <link>), so it needs that change
before anything shows up.

Matching clusters table:

- A Rollout column next to Status, with a badge per cluster: Updated, Updating,
  Waiting, Paused or Not ready. Each badge has a tooltip saying what the state
  means, for example that a waiting cluster does not have the latest version yet
  and is queued because the maxUpdate limit is reached.
- A filter above the table to list only the clusters in one state. It only
  offers states that have at least one cluster. It resets to All when the
  selected state has no cluster left.
- Both appear only when at least one cluster has a rollout state. Profiles
  without a pending rollout or paused cluster look as before.

Summary above the table, shown only while a rollout is pending:

- "Rollout in progress", a progress bar and "3 of 10 clusters updated".
- The count per state and "Max concurrent updates". When maxUpdate is a
  percentage, it is shown with the number of clusters it stands for, for example
  "30% (3)".
- Paused clusters are not counted in the progress, the rollout skips them.

Other changes:

- The accordion that opens a cluster's feature list is now tracked by cluster
  identity instead of row position, so it stays correct when the filter changes
  the rows.
- New strings in en.json, fr.json and ar.json. The French and Arabic are my
  translations and need a review by a native speaker. The Arabic follows the
  transliterations already used in the file (profile, cluster).

The page does not poll, so a rollout in flight is shown as of the last load of
the page.
@gianlucam76
gianlucam76 force-pushed the profile-rollout-state branch from 2794a88 to d096806 Compare October 23, 2026 15:33
@gianlucam76

Copy link
Copy Markdown
Member Author
Screenshot 2026-10-23 at 16 44 18

@gianlucam76
gianlucam76 merged commit 9d8c3eb into projectsveltos:main Oct 27, 2026
1 check passed
@gianlucam76
gianlucam76 deleted the profile-rollout-state branch October 27, 2026 07:51
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.

1 participant