apache / dubbo-admin

The ops and reference implementation for Apache Dubbo
https://dubbo.apache.org
Apache License 2.0
3.98k stars 2.17k forks source link

Implement dubboctl dashboard subcmd #1197

Closed DMwangnima closed 1 year ago

DMwangnima commented 1 year ago

What is the purpose of the change

For simplifying port-forward operation and opening component dashboard in browser directly, implement dashboard subcommand. eg: dubboctl dashboard grafana It would create k8s PortForwarder and listen on localhost:3000 automatically. Then it opens grafana dashboard in browser. Now it supports Admin, Grafana, Nacos, Prometheus, Skywalking, Zipkin.(Zookeeper doesn't have embedded dashboard)

Brief changelog

See /pkg/dubboctl/cmd/subcmd/dashboard_all_cmds. I do not create individual file for every component such as dashboard_grafana cause processing logic for every component is similar. So I aggregate all subcmds about dashboard.

Verifying this change

dubboctl manifest install dubboctl dashboard grafana

codecov-commenter commented 1 year ago

Codecov Report

Merging #1197 (3814324) into refactor-with-go (cf1c91b) will decrease coverage by 0.73%. The diff coverage is 14.15%.

@@                 Coverage Diff                  @@
##           refactor-with-go    #1197      +/-   ##
====================================================
- Coverage             49.47%   48.74%   -0.73%     
====================================================
  Files                    95       97       +2     
  Lines                  5114     5217     +103     
  Branches                 41       41              
====================================================
+ Hits                   2530     2543      +13     
- Misses                 2325     2415      +90     
  Partials                259      259              
Impacted Files Coverage Δ
dubbo-admin-ui/src/api/menu.js 0.00% <ø> (ø)
dubbo-admin-ui/src/components/ServiceDetail.vue 0.00% <ø> (ø)
dubbo-admin-ui/src/components/apiDocs/ApiForm.vue 0.00% <ø> (ø)
dubbo-admin-ui/src/components/public/AceEditor.vue 0.00% <ø> (ø)
...ubbo-admin-ui/src/components/public/Breadcrumb.vue 0.00% <ø> (ø)
dubbo-admin-ui/src/components/public/Drawer.vue 0.00% <ø> (ø)
dubbo-admin-ui/src/router/index.js 0.00% <ø> (ø)
dubbo-admin-ui/src/util/index.js 0.00% <ø> (ø)
pkg/dubboctl/internal/kube/client.go 48.20% <ø> (ø)
pkg/dubboctl/internal/kube/common.go 35.00% <0.00%> (-9.45%) :arrow_down:
... and 4 more

... and 2 files with indirect coverage changes

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

sonarcloud[bot] commented 1 year ago

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

No Coverage information No Coverage information
No Duplication information No Duplication information