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

feat(ui): 411 overview dashboard core services #471

Merged
merged 33 commits into from
Oct 25, 2024

Conversation

BillyFigueroa
Copy link
Contributor

@BillyFigueroa BillyFigueroa commented Oct 18, 2024

Description

As a consumer of UDS Runtime, I would like to view a summary of core services, status and a corresponding link to view the service

Additional context

Figma Design
https://www.figma.com/design/zmKcJ9Xin7ChzyGy6RCFLe/UDS-Runtime-(UI%2FCLI)?node-id=4325-5166&m=dev

Related Issue

Screenshots

With Services

Screenshot 2024-10-18 at 1 17 11 PM

With out Services

Screenshot 2024-10-18 at 1 17 42 PM

@BillyFigueroa BillyFigueroa self-assigned this Oct 18, 2024
@BillyFigueroa BillyFigueroa linked an issue Oct 18, 2024 that may be closed by this pull request
@BillyFigueroa BillyFigueroa marked this pull request as ready for review October 18, 2024 19:28
@BillyFigueroa BillyFigueroa requested a review from a team as a code owner October 18, 2024 19:28
@TristanHoladay
Copy link
Contributor

@BillyFigueroa looks good! do the displayed "names" of the services need to be changed, though, given the Figma design? (e.g. Authorization, Monitoring, Service Mesh...)

@UncleGedd
Copy link
Contributor

UncleGedd commented Oct 21, 2024

@BillyFigueroa looks good! do the displayed "names" of the services need to be changed, though, given the Figma design? (e.g. Authorization, Monitoring, Service Mesh...)

Just chatted with @Madeline-UX about this, these names should (ideally) line up with the UDS functional layers

@UncleGedd
Copy link
Contributor

Also (again just chatted with @Madeline-UX ), let's remove the "View Service >" link for now

@BillyFigueroa
Copy link
Contributor Author

Also (again just chatted with @Madeline-UX ), let's remove the "View Service >" link for now

The links were removed in this commit. Should we ask design to remove from the mocks?

@TristanHoladay
Copy link
Contributor

@BillyFigueroa sorry to add another comment 😅 but i think there's 2 issues happening. Apologies if you're already aware of them.

  1. looks like the view is not re-rendering when Core services are deploying
    Screenshot from 2024-10-22 12-42-15

  2. Istio does not have a UDS Package so is not showing in Core Services for Service Mesh. Probably easiest way to get that would be to look for an istiod pod in istio-system namespace / at gateway pods in the istio-admin-gateway or istio-tentant-gateway namespaces.

@BillyFigueroa
Copy link
Contributor Author

@BillyFigueroa sorry to add another comment 😅 but i think there's 2 issues happening. Apologies if you're already aware of them.

1. looks like the view is not re-rendering when Core services are deploying
   ![Screenshot from 2024-10-22 12-42-15](https://private-user-images.githubusercontent.com/40547442/378977900-bde8bb7a-f92f-4588-8ae9-961a9e234968.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mjk2MjgyNDQsIm5iZiI6MTcyOTYyNzk0NCwicGF0aCI6Ii80MDU0NzQ0Mi8zNzg5Nzc5MDAtYmRlOGJiN2EtZjkyZi00NTg4LThhZTktOTYxYTllMjM0OTY4LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDEwMjIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQxMDIyVDIwMTIyNFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTViYzBhZWNjZTA1NDAzODkwYmUyNGFiMTM5ZTVhMDhmYjBiYzE4ZThmNjNhYTgwNDQ3YjExYjU4YTYwMzFhZTYmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.OBLBGY6vpg2QWy7LpDU58r5Sks-93zxR_RTA3rVjWeg)

2. Istio does not have a UDS Package so is not showing in Core Services for Service Mesh. Probably easiest way to get that would be to look for an istiod pod in istio-system namespace / at gateway pods in the istio-admin-gateway or istio-tentant-gateway namespaces.

Hi Tristan,

  1. What steps do I take to try to recreate the deploying stage?
  2. I ll work on the istio changes

@TristanHoladay
Copy link
Contributor

Hi Tristan,

  1. What steps do I take to try to recreate the deploying stage?
  2. I ll work on the istio changes

I did uds deploy k3d-core-slim-dev:latest --confirm and then, after the cluster started, deployed Runtime locally.

@decleaver
Copy link
Contributor

Not sure if its just me. But pulled down the latest updates, running a newly created k3d cluster, so no core service. But now i cant select any of the views, but if I manually type in the path to view pods for example, then the view menu starts working again.....

@BillyFigueroa
Copy link
Contributor Author

Not sure if its just me. But pulled down the latest updates, running a newly created k3d cluster, so no core service. But now i cant select any of the views, but if I manually type in the path to view pods for example, then the view menu starts working again.....

Not sure if its just me. But pulled down the latest updates, running a newly created k3d cluster, so no core service. But now i cant select any of the views, but if I manually type in the path to view pods for example, then the view menu starts working again.....

I could not re-create this. Maybe someone else can try

@BillyFigueroa
Copy link
Contributor Author

@decleaver this might be an ignorant question because I do not understand how to handle errors in go but should this actually be considered an error when we don't have a crd? are most of these resources an array? Could we not just return an empty array in these cases?

I see this is being handled in the k8s/store.ts i.e

  if ($resources.length > 0 && typeof $resources[0].resource === 'string') {
    if ($resources[0].resource === 'crd not found') {
      this.numResources.set(0)
      return $resources
    }
  }

I remember this was causing an issue with one of the tables before.

I will add some logic in the onmessage (in cluster-overview) to handle this rather than at the component level, but maybe we should consider a different response? returning error messages to a front end like this is a bit passive. If we can make it an exception or an empty array, I think it would be cleaner

@decleaver
Copy link
Contributor

@decleaver this might be an ignorant question because I do not understand how to handle errors in go but should this actually be considered an error when we don't have a crd? are most of these resources an array? Could we not just return an empty array in these cases?

I see this is being handled in the k8s/store.ts i.e

  if ($resources.length > 0 && typeof $resources[0].resource === 'string') {
    if ($resources[0].resource === 'crd not found') {
      this.numResources.set(0)
      return $resources
    }
  }

I remember this was causing an issue with one of the tables before.

I will add some logic in the onmessage (in cluster-overview) to handle this rather than at the component level, but maybe we should consider a different response? returning error messages to a front end like this is a bit passive. If we can make it an exception or an empty array, I think it would be cleaner

Yeah, so this is a little bit of a special case where if we just returned an empty array, we wouldn't be able to tell if the cluster doesn't have any of those resources or if the custom resource definition for that resource exists in the cluster, and if the CRD doesn't exist, we want to let the users know that. This could be something we revisit and find a cleaner way to handle though.

Copy link
Contributor

@decleaver decleaver left a comment

Choose a reason for hiding this comment

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

paired to address last fixes

@BillyFigueroa BillyFigueroa merged commit e89b69f into main Oct 25, 2024
14 checks passed
@BillyFigueroa BillyFigueroa deleted the 411-overview-dashboard-core-services branch October 25, 2024 18:00
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.

Overview Dashboard: Core Services
4 participants