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

Virtualization Management, automate Harvester extension installation #12640

Open
torchiaf opened this issue Nov 21, 2024 · 2 comments · Fixed by #12757
Open

Virtualization Management, automate Harvester extension installation #12640

torchiaf opened this issue Nov 21, 2024 · 2 comments · Fixed by #12757

Comments

@torchiaf
Copy link
Member

torchiaf commented Nov 21, 2024

Is your feature request related to a problem? Please describe.

We added some guidelines about how to manually add the Harvester extension repository and install the extension in 2.10.
We want to automate the Harvester extension installation.

image

Describe the solution you'd like

Show an installation button if:

  • The extension is not installed.
  • A new version is available.

Describe alternatives you've considered

Additional context

@torchiaf torchiaf added area/harvester kind/enhancement area/extensions QA/dev-automation Issues that engineers have written automation around so QA doesn't have look at this labels Nov 21, 2024
@torchiaf torchiaf added this to the v2.10.1 milestone Nov 21, 2024
@torchiaf torchiaf modified the milestones: v2.10.1, v2.11.0 Nov 27, 2024
@torchiaf
Copy link
Member Author

/backport v2.10.1

@IsaSih
Copy link

IsaSih commented Dec 13, 2024

For 2.11-head, the installation was tested 3 times, due to a failure in the first attempt. I'm going to leave my findings about the error that occurred on the first try here:
Image

API call:

{
"id": ["harvester"](https://isa-211-xs.qa.rancher.space/v1/catalog.cattle.io.clusterrepos/harvester),
"type": ["catalog.cattle.io.clusterrepo"](https://isa-211-xs.qa.rancher.space/v1/schemas/catalog.cattle.io.clusterrepo),
"links": {
"chart": ["…/v1/catalog.cattle.io.clusterrepos/harvester?link=chart"](https://isa-211-xs.qa.rancher.space/v1/catalog.cattle.io.clusterrepos/harvester?link=chart),
"icon": ["…/v1/catalog.cattle.io.clusterrepos/harvester?link=icon"](https://isa-211-xs.qa.rancher.space/v1/catalog.cattle.io.clusterrepos/harvester?link=icon),
"index": ["…/v1/catalog.cattle.io.clusterrepos/harvester?link=index"](https://isa-211-xs.qa.rancher.space/v1/catalog.cattle.io.clusterrepos/harvester?link=index),
"info": ["…/v1/catalog.cattle.io.clusterrepos/harvester?link=info"](https://isa-211-xs.qa.rancher.space/v1/catalog.cattle.io.clusterrepos/harvester?link=info),
"remove": ["…/v1/catalog.cattle.io.clusterrepos/harvester"](https://isa-211-xs.qa.rancher.space/v1/catalog.cattle.io.clusterrepos/harvester),
"self": ["…/v1/catalog.cattle.io.clusterrepos/harvester"](https://isa-211-xs.qa.rancher.space/v1/catalog.cattle.io.clusterrepos/harvester),
"update": ["…/v1/catalog.cattle.io.clusterrepos/harvester"](https://isa-211-xs.qa.rancher.space/v1/catalog.cattle.io.clusterrepos/harvester),
"view": ["…/apis/catalog.cattle.io/v1/clusterrepos/harvester"](https://isa-211-xs.qa.rancher.space/apis/catalog.cattle.io/v1/clusterrepos/harvester)
},
"actions": {
"[install](https://isa-211-xs.qa.rancher.space/v1/catalog.cattle.io.clusterrepos/harvester?action=install#)": ["…/v1/catalog.cattle.io.clusterrepos/harvester?action=install"](https://isa-211-xs.qa.rancher.space/v1/catalog.cattle.io.clusterrepos/harvester?action=install),
"[upgrade](https://isa-211-xs.qa.rancher.space/v1/catalog.cattle.io.clusterrepos/harvester?action=install#)": ["…/v1/catalog.cattle.io.clusterrepos/harvester?action=upgrade"](https://isa-211-xs.qa.rancher.space/v1/catalog.cattle.io.clusterrepos/harvester?action=upgrade)
},
"apiVersion": "catalog.cattle.io/v1",
"kind": "ClusterRepo",
"metadata": {
"creationTimestamp": "2024-12-13T00:43:57Z",
"fields": [ 6 items
"harvester",
null,
null,
["https://github.com/harvester/harvester-ui-extension"](https://github.com/harvester/harvester-ui-extension),
"gh-pages",
"2024-12-13T00:44:01Z"
],
"generation": 2,
"managedFields": [ 2 items
{
"apiVersion": "catalog.cattle.io/v1",
"fieldsType": "FieldsV1",
"fieldsV1": {
"f:spec": {
".": { },
"f:forceUpdate": { },
"f:gitBranch": { },
"f:gitRepo": { }
}
},
"manager": "rancher",
"operation": "Update",
"time": "2024-12-13T00:44:00Z"
},
{
"apiVersion": "catalog.cattle.io/v1",
"fieldsType": "FieldsV1",
"fieldsV1": {
"f:status": {
".": { },
"f:branch": { },
"f:commit": { },
"f:conditions": { },
"f:downloadTime": { },
"f:indexConfigMapName": { },
"f:indexConfigMapNamespace": { },
"f:observedGeneration": { },
"f:url": { }
}
},
"manager": "rancher",
"operation": "Update",
"subresource": "status",
"time": "2024-12-13T00:44:02Z"
}
],
"name": "harvester",
"relationships": [
{
"toId": "cattle-system/harvester-0-ce0b9716-aaf2-40fa-86af-7f7b75be0dae",
"toType": "configmap",
"rel": "owner",
"state": "active",
"message": "Resource is always ready"
}
],
"resourceVersion": "382401",
"state": {
"error": false,
"message": "Resource is current",
"name": "active",
"transitioning": false
},
"uid": "ce0b9716-aaf2-40fa-86af-7f7b75be0dae"
},
"spec": {
"forceUpdate": "2024-12-13T00:44:01Z",
"gitBranch": "gh-pages",
"gitRepo": ["https://github.com/harvester/harvester-ui-extension"](https://github.com/harvester/harvester-ui-extension)
},
"status": {
"branch": "gh-pages",
"commit": "853bcb26320bd50651c791181aeb26b6354a0cd8",
"conditions": [ 2 items
{
"error": false,
"lastUpdateTime": "2024-12-13T00:43:57Z",
"status": "True",
"transitioning": false,
"type": "FollowerDownloaded"
},
{
"error": false,
"lastUpdateTime": "2024-12-13T00:44:02Z",
"status": "True",
"transitioning": false,
"type": "Downloaded"
}
],
"downloadTime": "2024-12-13T00:44:01Z",
"indexConfigMapName": "harvester-0-ce0b9716-aaf2-40fa-86af-7f7b75be0dae",
"indexConfigMapNamespace": "cattle-system",
"observedGeneration": 2,
"url": ["https://github.com/harvester/harvester-ui-extension"](https://github.com/harvester/harvester-ui-extension)
}
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants