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

[SURE-7399] Deploy new bundle versions when chart URL is unreachable on part of the managed clusters #2655

Closed
kkaempf opened this issue Jul 19, 2024 · 3 comments
Labels
Milestone

Comments

@kkaempf
Copy link
Collaborator

kkaempf commented Jul 19, 2024

SURE-7399

Issue description:

In a fleet.yaml file, the client adds their Helm charts via URLs to .tgz files for each of their cluster by using targetCustomizations. This is to allow them to use a specific registry per cluster.

They found out that when adding a URL to a registry that should only be used in their DR environment into the DR cluster, Fleet seems to try to access the URL on all controllers, which will not work since the DR chart URL will not be accessible in other environments (such as Dev and Prod).

This results in new bundle versions not being deployed when using one fleet.yaml for multiple Fleet controllers, even if the unreachable target URL is not in-scope of the targetCustomization.

Business impact:

Client cannot use a single fleet.yaml file to deploy charts to isolated clusters via targetCustomizations since this will stop the other charts (for other targetCustomizations) in the same fleet.yaml from deploying correctly.

Repro steps:

Create three downstream clusters in a Rancher 2.7.6 instance (with Fleet 0.7.1). Each cluster must have a label to identify it, which we'll use in the next steps.
Create a Fleet Git repo. It must have a fleet.yaml file with targetCustomizations and a chart URL for each downstream cluster (see attachments for an example, make sure to comment out the 'dr' block to remove the invalid hostname for now)
Once the initial deployment is done, uncomment the 'dr' block and replace the URL to a value that is only reachable by that downstream cluster

Workaround:

Is workaround available and implemented? yes (assumed)

What is the workaround: The client did not specify what workaround they used, but I think this can be worked around by deploying a different dedicated fleet.yaml per isolated registry.

Actual behavior:

Fleet tests all URLs in the fleet.yaml file and fails to deploy new versions of a bundle if one of the chart URLs is unreachable in any downstream cluster.

Expected behavior:

Fleet should only try to reach out to the registry of each targetCustomization that is in-scope for each cluster.

@kkaempf kkaempf added this to Fleet Jul 19, 2024
@github-project-automation github-project-automation bot moved this to 🆕 New in Fleet Jul 19, 2024
@kkaempf kkaempf added this to the v2.10.0 milestone Jul 19, 2024
@manno manno modified the milestones: v2.10.0, v2.11.0 Oct 23, 2024
@manno manno moved this from To Triage to 📋 Backlog in Fleet Nov 27, 2024
@p-se p-se assigned p-se and unassigned p-se Dec 12, 2024
@manno manno moved this from 📋 Backlog to Blocked in Fleet Dec 17, 2024
@manno
Copy link
Member

manno commented Dec 19, 2024

The title is misleading, the JIRA issue is now about continuing to create bundles when a download fails.

Keeping this around till the fix in #3141 is done.

@manno
Copy link
Member

manno commented Jan 10, 2025

See also #3114 for template errors, which do stop bundles from deploying.

@manno
Copy link
Member

manno commented Jan 21, 2025

Closing in favor of #3141

@manno manno closed this as not planned Won't fix, can't repro, duplicate, stale Jan 21, 2025
@github-project-automation github-project-automation bot moved this from Blocked to ✅ Done in Fleet Jan 21, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Status: Done
Development

No branches or pull requests

3 participants