Skip to content

Commit 3d4fd98

Browse files
authored
feat(fxcore): Added app description (ankorstore#274)
1 parent a1eb78c commit 3d4fd98

File tree

9 files changed

+44
-27
lines changed

9 files changed

+44
-27
lines changed

fxcore/.golangci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ linters:
3838
- importas
3939
- ineffassign
4040
- interfacebloat
41-
- logrlint
41+
- loggercheck
4242
- maintidx
4343
- makezero
4444
- misspell

fxcore/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ Configuration reference:
7070
# ./configs/config.yaml
7171
app:
7272
name: app
73+
description: app description
7374
env: dev
7475
version: 0.1.0
7576
debug: true

fxcore/go.mod

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@ module github.com/ankorstore/yokai/fxcore
33
go 1.20
44

55
require (
6-
github.com/ankorstore/yokai/config v1.3.0
7-
github.com/ankorstore/yokai/fxconfig v1.1.0
8-
github.com/ankorstore/yokai/fxgenerate v1.1.0
6+
github.com/ankorstore/yokai/config v1.4.0
7+
github.com/ankorstore/yokai/fxconfig v1.2.0
8+
github.com/ankorstore/yokai/fxgenerate v1.2.0
99
github.com/ankorstore/yokai/fxhealthcheck v1.1.0
1010
github.com/ankorstore/yokai/fxlog v1.1.0
1111
github.com/ankorstore/yokai/fxmetrics v1.2.0
1212
github.com/ankorstore/yokai/fxtrace v1.2.0
13-
github.com/ankorstore/yokai/generate v1.1.0
13+
github.com/ankorstore/yokai/generate v1.2.0
1414
github.com/ankorstore/yokai/healthcheck v1.1.0
1515
github.com/ankorstore/yokai/httpserver v1.5.0
1616
github.com/ankorstore/yokai/log v1.2.0
@@ -23,7 +23,7 @@ require (
2323
github.com/stretchr/testify v1.9.0
2424
go.opentelemetry.io/otel v1.24.0
2525
go.opentelemetry.io/otel/trace v1.24.0
26-
go.uber.org/fx v1.21.0
26+
go.uber.org/fx v1.22.0
2727
)
2828

2929
require (

fxcore/go.sum

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
github.com/ankorstore/yokai/config v1.3.0 h1:si2h4mESPN5pj14CBMT/VGFgFn0voKEVylr8hQeIgEk=
2-
github.com/ankorstore/yokai/config v1.3.0/go.mod h1:OV2QiL2dyNLCxhcGO+GcSa8Wm20+00H03VBHm9SPVuE=
3-
github.com/ankorstore/yokai/fxconfig v1.1.0 h1:QgRDrZPpSy4wlnzNN37sWniRRAszerBb6WpvMa3hTB0=
4-
github.com/ankorstore/yokai/fxconfig v1.1.0/go.mod h1:dU8W3eJtioegWEB7X5C+B40Ud+M+vRa5d2UdbAJr9Os=
5-
github.com/ankorstore/yokai/fxgenerate v1.1.0 h1:kNEAsZJt7DgwVpG9+/M7p8610BdKHWkX/MYdBLuSIGU=
6-
github.com/ankorstore/yokai/fxgenerate v1.1.0/go.mod h1:trC9VZEaVjTXuO9GWbqVPGKFkKULDZpLoxdTyTmmpYU=
1+
github.com/ankorstore/yokai/config v1.4.0 h1:O3ZuTGud388Gq55bQwrfs/vdjYSZZvj0VUL6yZp4rcg=
2+
github.com/ankorstore/yokai/config v1.4.0/go.mod h1:OV2QiL2dyNLCxhcGO+GcSa8Wm20+00H03VBHm9SPVuE=
3+
github.com/ankorstore/yokai/fxconfig v1.2.0 h1:ezuyPD9xfw4b7fe4IgeF0cZQKs3f3n7QOS0hdLBjsc0=
4+
github.com/ankorstore/yokai/fxconfig v1.2.0/go.mod h1:6sUUNd11awsM5BqiTW4BTCk+JdOIDrYETwWGpxoM+kg=
5+
github.com/ankorstore/yokai/fxgenerate v1.2.0 h1:Fnw0DauFbuFwpKNVliKlZbvLC1Xg9Af0lxQCRkbvfLo=
6+
github.com/ankorstore/yokai/fxgenerate v1.2.0/go.mod h1:cTn+S3Wk3rql/KRVtOXn4kQyMAYpi5n1rcXisWR9uks=
77
github.com/ankorstore/yokai/fxhealthcheck v1.1.0 h1:E/ADes6EC49kPwQlOel5BUyWNv45R21GtCa2WmSmZCQ=
88
github.com/ankorstore/yokai/fxhealthcheck v1.1.0/go.mod h1:j8ki4ZHL/G5zaD3GwVX3j5/xFyuQNNvsZPnoSG7E/AY=
99
github.com/ankorstore/yokai/fxlog v1.1.0 h1:vLI8Qd9KfCzAH9IvzGJTvFYmlE1jtMnjvA4z/vxJpYg=
@@ -12,8 +12,8 @@ github.com/ankorstore/yokai/fxmetrics v1.2.0 h1:B4vwfOxsUeFXC5rn0bDHsFnOhEFhRq9a
1212
github.com/ankorstore/yokai/fxmetrics v1.2.0/go.mod h1:WBr76IIdlSZIpBsjKSdXCAJBWF0HCp46bwFX8bt0tFk=
1313
github.com/ankorstore/yokai/fxtrace v1.2.0 h1:SXlWbjKSsb2wVH+hXSE9OD2VwyqkznwwW+kiQcNvEAU=
1414
github.com/ankorstore/yokai/fxtrace v1.2.0/go.mod h1:ch72eVTlIedETOApK7SXk2NEWpn3yYeM018dNRccocg=
15-
github.com/ankorstore/yokai/generate v1.1.0 h1:tu3S+uEYh+2qNo8Rf/WxWneDjh49YgDPzSnJfF8JkXA=
16-
github.com/ankorstore/yokai/generate v1.1.0/go.mod h1:gqS/i20wnvCOhcXydYdiGcASzBaeuW7GK6YYg/kkuY4=
15+
github.com/ankorstore/yokai/generate v1.2.0 h1:37siukjPGSS2kRnCnPhiuiF373+0tgwp0teXHnMsBhA=
16+
github.com/ankorstore/yokai/generate v1.2.0/go.mod h1:gqS/i20wnvCOhcXydYdiGcASzBaeuW7GK6YYg/kkuY4=
1717
github.com/ankorstore/yokai/healthcheck v1.1.0 h1:PXkEccym7iaVnQltpM5UFi0Xl0n+5rZDzlQju6HmGms=
1818
github.com/ankorstore/yokai/healthcheck v1.1.0/go.mod h1:IiYgjRa4G3OLZMwAuacuryZZAfDHsBH8PQoK4PgRdZ4=
1919
github.com/ankorstore/yokai/httpserver v1.5.0 h1:42nfCFCGWuBKbwU8Jhlf1/ofrezDes8HlCa0mhiVoI8=
@@ -141,8 +141,8 @@ go.opentelemetry.io/proto/otlp v1.1.0 h1:2Di21piLrCqJ3U3eXGCTPHE9R8Nh+0uglSnOyxi
141141
go.opentelemetry.io/proto/otlp v1.1.0/go.mod h1:GpBHCBWiqvVLDqmHZsoMM3C5ySeKTC7ej/RNTae6MdY=
142142
go.uber.org/dig v1.17.1 h1:Tga8Lz8PcYNsWsyHMZ1Vm0OQOUaJNDyvPImgbAu9YSc=
143143
go.uber.org/dig v1.17.1/go.mod h1:Us0rSJiThwCv2GteUN0Q7OKvU7n5J4dxZ9JKUXozFdE=
144-
go.uber.org/fx v1.21.0 h1:qqD6k7PyFHONffW5speYx403ywanuASqU4Rqdpc22XY=
145-
go.uber.org/fx v1.21.0/go.mod h1:HT2M7d7RHo+ebKGh9NRcrsrHHfpZ60nW3QRubMRfv48=
144+
go.uber.org/fx v1.22.0 h1:pApUK7yL0OUHMd8vkunWSlLxZVFFk70jR2nKde8X2NM=
145+
go.uber.org/fx v1.22.0/go.mod h1:HT2M7d7RHo+ebKGh9NRcrsrHHfpZ60nW3QRubMRfv48=
146146
go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto=
147147
go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0=
148148
go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y=

fxcore/info.go

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ type FxModuleInfo interface {
4747
// FxCoreModuleInfo is a module info collector for the core.
4848
type FxCoreModuleInfo struct {
4949
AppName string
50+
AppDescription string
5051
AppEnv string
5152
AppDebug bool
5253
AppVersion string
@@ -90,6 +91,7 @@ func NewFxCoreModuleInfo(p FxCoreModuleInfoParam) *FxCoreModuleInfo {
9091

9192
return &FxCoreModuleInfo{
9293
AppName: p.Config.AppName(),
94+
AppDescription: p.Config.AppDescription(),
9395
AppEnv: p.Config.AppEnv(),
9496
AppDebug: p.Config.AppDebug(),
9597
AppVersion: p.Config.AppVersion(),
@@ -110,10 +112,11 @@ func (i *FxCoreModuleInfo) Name() string {
110112
func (i *FxCoreModuleInfo) Data() map[string]interface{} {
111113
return map[string]interface{}{
112114
"app": map[string]interface{}{
113-
"name": i.AppName,
114-
"env": i.AppEnv,
115-
"debug": i.AppDebug,
116-
"version": i.AppVersion,
115+
"name": i.AppName,
116+
"description": i.AppDescription,
117+
"env": i.AppEnv,
118+
"debug": i.AppDebug,
119+
"version": i.AppVersion,
117120
},
118121
"log": map[string]interface{}{
119122
"level": i.LogLevel,

fxcore/info_test.go

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,11 @@ func TestNewFxCoreModuleInfo(t *testing.T) {
3333
t,
3434
map[string]interface{}{
3535
"app": map[string]interface{}{
36-
"name": "core-app",
37-
"env": "test",
38-
"debug": true,
39-
"version": "0.1.0",
36+
"name": "core-app",
37+
"description": "core app description",
38+
"env": "test",
39+
"debug": true,
40+
"version": "0.1.0",
4041
},
4142
"log": map[string]interface{}{
4243
"level": "debug",

fxcore/module.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -238,6 +238,7 @@ func withHandlers(coreServer *echo.Echo, p FxCoreParam) (*echo.Echo, error) {
238238
}
239239

240240
// dashboard overview expositions
241+
overviewAppDescriptionExpose := p.Config.GetBool("modules.core.server.dashboard.overview.app_description")
241242
overviewAppEnvExpose := p.Config.GetBool("modules.core.server.dashboard.overview.app_env")
242243
overviewAppDebugExpose := p.Config.GetBool("modules.core.server.dashboard.overview.app_debug")
243244
overviewAppVersionExpose := p.Config.GetBool("modules.core.server.dashboard.overview.app_version")
@@ -457,6 +458,7 @@ func withHandlers(coreServer *echo.Echo, p FxCoreParam) (*echo.Echo, error) {
457458

458459
return c.Render(http.StatusOK, "dashboard.html", map[string]interface{}{
459460
"overviewInfo": overviewInfo,
461+
"overviewAppDescriptionExpose": overviewAppDescriptionExpose,
460462
"overviewAppEnvExpose": overviewAppEnvExpose,
461463
"overviewAppDebugExpose": overviewAppDebugExpose,
462464
"overviewAppVersionExpose": overviewAppVersionExpose,

fxcore/templates/dashboard.html

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,9 @@
1818
<div class="container-fluid">
1919
<a class="navbar-brand icon-link icon-link-hover fw-bold" href="/" style="--bs-icon-link-transform: scale(1.2);">
2020
<i class="bi bi-terminal"></i>&nbsp;{{ .overviewInfo.AppName }}
21+
{{ if and .overviewAppDescriptionExpose .overviewInfo.AppDescription }}
22+
&nbsp;/&nbsp;<span class="d-inline-block text-truncate text-secondary" style="max-width: 350px;">{{ .overviewInfo.AppDescription }}</span>
23+
{{ end }}
2124
</a>
2225
<span>
2326
<a class="btn btn-sm btn-outline-secondary" role="button" href="https://ankorstore.github.io/yokai/" target="_blank">
@@ -154,19 +157,25 @@
154157
</p>
155158
<table class="table table-borderless table-sm">
156159
<tbody>
157-
{{ if or .overviewAppEnvExpose }}
160+
{{ if and .overviewAppDescriptionExpose .overviewInfo.AppDescription }}
161+
<tr>
162+
<td class="w-25">Description</td>
163+
<td><code>{{ .overviewInfo.AppDescription }}</code></td>
164+
</tr>
165+
{{ end }}
166+
{{ if .overviewAppEnvExpose }}
158167
<tr>
159168
<td class="w-25">Env</td>
160169
<td><code>{{ .overviewInfo.AppEnv }}</code></td>
161170
</tr>
162171
{{ end }}
163-
{{ if or .overviewAppDebugExpose }}
172+
{{ if .overviewAppDebugExpose }}
164173
<tr>
165174
<td class="w-25">Debug</td>
166175
<td><code>{{ .overviewInfo.AppDebug }}</code></td>
167176
</tr>
168177
{{ end }}
169-
{{ if or .overviewAppVersionExpose }}
178+
{{ if .overviewAppVersionExpose }}
170179
<tr>
171180
<td class="w-25">Version</td>
172181
<td><code>{{ .overviewInfo.AppVersion }}</code></td>

fxcore/testdata/config/config.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
app:
22
name: core-app
3+
description: core app description
34
env: dev
45
version: 0.1.0
56
debug: false

0 commit comments

Comments
 (0)