arcade
arcade copied to clipboard
Landing page wanted - similar to runfo's
A common bit of feedback I've been getting is the desire to have the equivalent to what runfo has as a landing page to quickly see the state of things, or investigate errors.
Perhaps we could add a Grafana dashboard with a high level overview of the current Helix status. Data I think would be useful:
- Hosted & Microsoft pool status (Are we at max capacity, how long are build machines taking to get?)
- Critical Infrastructure Issues
- Helix work item wait time across all queues (i.e. on average)
- CI pipelines red/green status (bar graph with number of green pipeline runs stacked with red pipeline runs)
Do we know what sorts of scenarios/tasks people have in mind when they want to go to the "landing page" @markwilkie? I'm curious what people want it for. A generic landing page could easily get really messy if we don't know what people are trying to accomplish when they go there, and could rapidly turn into some nightmare dashboard with 10,000 widgets no one really needs.
The consistent request from multiple folks in different teams is to "replicate" what runfo does today for a landing page. We could start with a direct rip-off, unless there's something which makes it difficult.
To your point Chad - this must be super simple and I'm not on board. History says that runfo's landing page has been stable and hasn't needed a ton of overhead.
At this point there are two options on the table, a website (adding this to our helix website) or power apps. After reviewing both options on the technical aspect both are achievable and maintainable (it's a simple, small website and both POC were successful) but there are more questions around this topic:
- SDL: On this aspect I would like to have @ChadNedzlek opinion comparing both options, this are some
- Cost: On this aspect @ulisesh is going to help me gathering some information to have an idea of the cost of using power apps.
- Front end: In power apps we wouldn't have to intervene at the same level than the website but for the website we also have runfo reference/code which would help us on this aspect as we can use the same front end (more less)
SDL resources for power apps:
- https://docs.microsoft.com/en-us/power-platform/admin/security/overview
- https://docs.microsoft.com/en-us/training/paths/best-practices-environments/
FYI @markwilkie / @Chrisboh
Do you have a recommend @AlitzelMendez considering that we'll need to be maintaining this for ever more?
If it's a website, we got a lot of stuff "for free" (like deployments, change management, logging, authentication, and all that good stuff), so that's probably my preference. Also, PowerApps are so painful for a lot of stuff, especially anything with like, custom queries or actionable items (which I imagine we'd want here, once someone finds a persisitent issue, they are almost certainly going to want to open a known issue about, it, which is a lot easier in an interactive webpage that already has secrets and auth and stuff all hooked up)
thanks Chad.
I think Chad has a point on how painful the custom queries on PowerApps are, also, we need to take into account that the tables are still a preview in PowerApps so probably is going to require some extra effort, in those aspects the website would be beneficial.
On the maintenance aspect, it's a small website and is going to be part of helix website, for the PowerApps probably the maintenance would be the same although maybe more complicated as not a lot of people is familiar with PowerApps and as was mentioned the queries are painful, but besides that it should be ok.
After what Chad exposed and what I saw while investigating both options I think the best path to follow would be going forward with the website but saying that I think the main concern was related to security aspects on the website and was mentioned in a stand up (where unfortunately wasn't present), @Chrisboh and @markwilkie could you please share what are your concerns on the security area? or which are your concerns on the website effort? it's something I really want that we be on the same page :)
The most time consuming bit is going to be around SDL. More specifically, around accessibility validation which just takes time to get the manual scenario's put together and getting the test pass run and all issues addressed. I wouldn't say it's hard to do just time consuming.
I talked with @garath about the accessibility validation, he mentioned that he should be fine as long as we stick to bootstrap (which is already accessible) and "the "simple" "default" template stuff that runfo and helix.dot.net currently use.
Thoughts @Chrisboh ?
Bootstrap isn't 100% accessible, the colors its uses aren't high enough contrast... we've had to make a ton of overrides to shift them all slightly. But if you use the same controls we've already fixed, that shouldn't be a problem (and if it happens, it just means we need to extend the override a bit more for the particular wrong shade of blue they use).
It's good in a lot of the harder stuff, which is really good (like making sure things have the right behaviors, looks, classes to show up correctly), so it's a lot better than nothing.
Lets pick what is best for our customer and go with that.
We've already fixed most of bootstrap's colors, so we should be fine. We've used most of the controls already.
Even if we have issues, the extension literally says "use color X instead of color Y" and thats an easy fix in the overrides.
Draft PR
https://dev.azure.com/dnceng/internal/_git/dotnet-helix-service/pullrequest/26321
Landing
Search tests
Report issue from test, probably I am going to move this button to the top and change the title :)