mirror of
https://github.com/grafana/grafana.git
synced 2025-12-21 12:04:45 +08:00
Compare commits
80 Commits
docs/add-t
...
v12.2.1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
563109b696 | ||
|
|
f06bb75310 | ||
|
|
64b98e9866 | ||
|
|
d5732fe526 | ||
|
|
3d65272316 | ||
|
|
1029b8df35 | ||
|
|
4da7576d4e | ||
|
|
e86240eb62 | ||
|
|
e6db6c929a | ||
|
|
b1f5d62c38 | ||
|
|
9bb79a0e8e | ||
|
|
664a91dc84 | ||
|
|
6ae40fc592 | ||
|
|
208eb881d6 | ||
|
|
05e3befe99 | ||
|
|
b3551d6d0d | ||
|
|
46f2c100e0 | ||
|
|
d690b06941 | ||
|
|
37eeb82b5c | ||
|
|
2a12896e81 | ||
|
|
10fe7d04e9 | ||
|
|
0c5602dd10 | ||
|
|
0be513c593 | ||
|
|
89be22e8e8 | ||
|
|
52843f360e | ||
|
|
623e927983 | ||
|
|
e188650524 | ||
|
|
aa00229a8b | ||
|
|
cda0661803 | ||
|
|
5ebd75d3fb | ||
|
|
71b3906cf8 | ||
|
|
2ea9a8a6ed | ||
|
|
fdd99e9653 | ||
|
|
03f738ea1d | ||
|
|
547c496b2d | ||
|
|
0594304843 | ||
|
|
57d0237fda | ||
|
|
87fa31e57b | ||
|
|
26359899d5 | ||
|
|
b841dfa2bc | ||
|
|
e675b6a032 | ||
|
|
271f268d68 | ||
|
|
b059912f7d | ||
|
|
24df78fb4e | ||
|
|
dcbbf64aa0 | ||
|
|
ce8c46fb91 | ||
|
|
0f8f5c86ef | ||
|
|
111c53f9fd | ||
|
|
cc8928a6a7 | ||
|
|
46956a2997 | ||
|
|
af460952d5 | ||
|
|
3a8bff55cd | ||
|
|
7223130454 | ||
|
|
d53bf3d740 | ||
|
|
6a046831fc | ||
|
|
9b4414de27 | ||
|
|
c7b629d3bc | ||
|
|
bbd19baaaf | ||
|
|
5a2ab9b8b0 | ||
|
|
d1bd29aa3b | ||
|
|
7d205c7dee | ||
|
|
e5a98c3c43 | ||
|
|
50403b38d6 | ||
|
|
f6570f8123 | ||
|
|
c5cf9ff393 | ||
|
|
9738c198b9 | ||
|
|
06bf567e1c | ||
|
|
c68d3a2ffa | ||
|
|
59cc00b07e | ||
|
|
8ce2c2d3eb | ||
|
|
987573a17c | ||
|
|
49f78c15e8 | ||
|
|
76340a9741 | ||
|
|
b15acdf1f2 | ||
|
|
ca8402fbda | ||
|
|
abb44794fe | ||
|
|
c228eaa99d | ||
|
|
f41cc1c0d6 | ||
|
|
b557d71c9a | ||
|
|
e404352a38 |
@@ -1,13 +1,13 @@
|
|||||||
[build]
|
[build]
|
||||||
bin = "./bin/grafana-air"
|
bin = "./bin/grafana"
|
||||||
args_bin = ["server", "-profile", "-profile-addr=127.0.0.1", "-profile-port=6000", "-profile-block-rate=1", "-profile-mutex-rate=5", "-packaging=dev", "cfg:app_mode=development"]
|
args_bin = ["server", "-profile", "-profile-addr=127.0.0.1", "-profile-port=6000", "-profile-block-rate=1", "-profile-mutex-rate=5", "-packaging=dev", "cfg:app_mode=development"]
|
||||||
cmd = "make GO_BUILD_DEV=1 build-air"
|
cmd = "make GO_BUILD_DEV=1 build-backend"
|
||||||
exclude_regex = ["_test.go", "_gen.go"]
|
exclude_regex = ["_test.go", "_gen.go"]
|
||||||
exclude_unchanged = true
|
exclude_unchanged = true
|
||||||
follow_symlink = true
|
follow_symlink = true
|
||||||
include_dir = ["apps", "conf", "pkg", "public/views"]
|
include_dir = ["apps", "conf", "devenv/dev-dashboards", "pkg", "public/views"]
|
||||||
include_ext = ["go", "ini", "toml", "html", "json"]
|
include_ext = ["go", "ini", "toml", "html", "json"]
|
||||||
stop_on_error = true
|
stop_on_error = false
|
||||||
send_interrupt = true
|
send_interrupt = true
|
||||||
kill_delay = 500
|
kill_delay = 500
|
||||||
|
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ watch_exts = [".go", ".ini", ".toml", ".template.html"]
|
|||||||
ignore_files = [".*_gen.go"]
|
ignore_files = [".*_gen.go"]
|
||||||
build_delay = 1500
|
build_delay = 1500
|
||||||
cmds = [
|
cmds = [
|
||||||
["make", "GO_BUILD_DEV=1", "build-go"],
|
["make", "GO_BUILD_DEV=1", "build-go-fast"],
|
||||||
["make", "gen-jsonnet"],
|
["make", "gen-jsonnet"],
|
||||||
["./bin/grafana", "server", "-profile", "-profile-addr=127.0.0.1", "-profile-port=6000", "-profile-block-rate=1", "-profile-mutex-rate=5", "-packaging=dev", "cfg:app_mode=development"]
|
["./bin/grafana", "server", "-profile", "-profile-addr=127.0.0.1", "-profile-port=6000", "-profile-block-rate=1", "-profile-mutex-rate=5", "-packaging=dev", "cfg:app_mode=development"]
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
module air
|
module air
|
||||||
|
|
||||||
go 1.25.5
|
go 1.25.3
|
||||||
|
|
||||||
tool github.com/air-verse/air
|
tool github.com/air-verse/air
|
||||||
|
|
||||||
@@ -21,8 +21,8 @@ require (
|
|||||||
github.com/spf13/afero v1.14.0 // indirect
|
github.com/spf13/afero v1.14.0 // indirect
|
||||||
github.com/spf13/cast v1.8.0 // indirect
|
github.com/spf13/cast v1.8.0 // indirect
|
||||||
github.com/tdewolff/parse/v2 v2.8.1 // indirect
|
github.com/tdewolff/parse/v2 v2.8.1 // indirect
|
||||||
golang.org/x/net v0.47.0 // indirect
|
golang.org/x/net v0.45.0 // indirect
|
||||||
golang.org/x/sys v0.38.0 // indirect
|
golang.org/x/sys v0.36.0 // indirect
|
||||||
golang.org/x/text v0.31.0 // indirect
|
golang.org/x/text v0.29.0 // indirect
|
||||||
google.golang.org/protobuf v1.36.6 // indirect
|
google.golang.org/protobuf v1.36.6 // indirect
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -167,19 +167,19 @@ golang.org/x/exp v0.0.0-20250531010427-b6e5de432a8b h1:QoALfVG9rhQ/M7vYDScfPdWjG
|
|||||||
golang.org/x/exp v0.0.0-20250531010427-b6e5de432a8b/go.mod h1:U6Lno4MTRCDY+Ba7aCcauB9T60gsv5s4ralQzP72ZoQ=
|
golang.org/x/exp v0.0.0-20250531010427-b6e5de432a8b/go.mod h1:U6Lno4MTRCDY+Ba7aCcauB9T60gsv5s4ralQzP72ZoQ=
|
||||||
golang.org/x/image v0.27.0 h1:C8gA4oWU/tKkdCfYT6T2u4faJu3MeNS5O8UPWlPF61w=
|
golang.org/x/image v0.27.0 h1:C8gA4oWU/tKkdCfYT6T2u4faJu3MeNS5O8UPWlPF61w=
|
||||||
golang.org/x/image v0.27.0/go.mod h1:xbdrClrAUway1MUTEZDq9mz/UpRwYAkFFNUslZtcB+g=
|
golang.org/x/image v0.27.0/go.mod h1:xbdrClrAUway1MUTEZDq9mz/UpRwYAkFFNUslZtcB+g=
|
||||||
golang.org/x/mod v0.29.0 h1:HV8lRxZC4l2cr3Zq1LvtOsi/ThTgWnUk/y64QSs8GwA=
|
golang.org/x/mod v0.27.0 h1:kb+q2PyFnEADO2IEF935ehFUXlWiNjJWtRNgBLSfbxQ=
|
||||||
golang.org/x/mod v0.29.0/go.mod h1:NyhrlYXJ2H4eJiRy/WDBO6HMqZQ6q9nk4JzS3NuCK+w=
|
golang.org/x/mod v0.27.0/go.mod h1:rWI627Fq0DEoudcK+MBkNkCe0EetEaDSwJJkCcjpazc=
|
||||||
golang.org/x/net v0.47.0 h1:Mx+4dIFzqraBXUugkia1OOvlD6LemFo1ALMHjrXDOhY=
|
golang.org/x/net v0.45.0 h1:RLBg5JKixCy82FtLJpeNlVM0nrSqpCRYzVU1n8kj0tM=
|
||||||
golang.org/x/net v0.47.0/go.mod h1:/jNxtkgq5yWUGYkaZGqo27cfGZ1c5Nen03aYrrKpVRU=
|
golang.org/x/net v0.45.0/go.mod h1:ECOoLqd5U3Lhyeyo/QDCEVQ4sNgYsqvCZ722XogGieY=
|
||||||
golang.org/x/sync v0.18.0 h1:kr88TuHDroi+UVf+0hZnirlk8o8T+4MrK6mr60WkH/I=
|
golang.org/x/sync v0.17.0 h1:l60nONMj9l5drqw6jlhIELNv9I0A4OFgRsG9k2oT9Ug=
|
||||||
golang.org/x/sync v0.18.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
|
golang.org/x/sync v0.17.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
|
||||||
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/sys v0.38.0 h1:3yZWxaJjBmCWXqhN1qh02AkOnCQ1poK6oF+a7xWL6Gc=
|
golang.org/x/sys v0.36.0 h1:KVRy2GtZBrk1cBYA7MKu5bEZFxQk4NIDV6RLVcC8o0k=
|
||||||
golang.org/x/sys v0.38.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
|
golang.org/x/sys v0.36.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
|
||||||
golang.org/x/text v0.31.0 h1:aC8ghyu4JhP8VojJ2lEHBnochRno1sgL6nEi9WGFGMM=
|
golang.org/x/text v0.29.0 h1:1neNs90w9YzJ9BocxfsQNHKuAT4pkghyXc4nhZ6sJvk=
|
||||||
golang.org/x/text v0.31.0/go.mod h1:tKRAlv61yKIjGGHX/4tP1LTbc13YSec1pxVEWXzfoeM=
|
golang.org/x/text v0.29.0/go.mod h1:7MhJOA9CD2qZyOKYazxdYMF85OwPdEr9jTtBpO7ydH4=
|
||||||
golang.org/x/tools v0.38.0 h1:Hx2Xv8hISq8Lm16jvBZ2VQf+RLmbd7wVUsALibYI/IQ=
|
golang.org/x/tools v0.36.0 h1:kWS0uv/zsvHEle1LbV5LE8QujrxB3wfQyxHfhOk0Qkg=
|
||||||
golang.org/x/tools v0.38.0/go.mod h1:yEsQ/d/YK8cjh0L6rZlY8tgtlKiBNTL14pGDJPJpYQs=
|
golang.org/x/tools v0.36.0/go.mod h1:WBDiHKJK8YgLHlcQPYQzNCkUxUypCaa5ZegCVutKm+s=
|
||||||
google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY=
|
google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY=
|
||||||
google.golang.org/protobuf v1.36.6/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY=
|
google.golang.org/protobuf v1.36.6/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY=
|
||||||
gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
|
gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
module bra
|
module bra
|
||||||
|
|
||||||
go 1.25.5
|
go 1.25.3
|
||||||
|
|
||||||
tool github.com/unknwon/bra
|
tool github.com/unknwon/bra
|
||||||
|
|
||||||
@@ -17,6 +17,6 @@ require (
|
|||||||
github.com/unknwon/com v1.0.1 // indirect
|
github.com/unknwon/com v1.0.1 // indirect
|
||||||
github.com/unknwon/log v0.0.0-20200308114134-929b1006e34a // indirect
|
github.com/unknwon/log v0.0.0-20200308114134-929b1006e34a // indirect
|
||||||
github.com/urfave/cli v1.22.16 // indirect
|
github.com/urfave/cli v1.22.16 // indirect
|
||||||
golang.org/x/sys v0.38.0 // indirect
|
golang.org/x/sys v0.36.0 // indirect
|
||||||
gopkg.in/fsnotify/fsnotify.v1 v1.4.7 // indirect
|
gopkg.in/fsnotify/fsnotify.v1 v1.4.7 // indirect
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -56,8 +56,8 @@ golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACk
|
|||||||
golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
|
golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
|
||||||
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||||
golang.org/x/sys v0.0.0-20191020152052-9984515f0562/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20191020152052-9984515f0562/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
golang.org/x/sys v0.38.0 h1:3yZWxaJjBmCWXqhN1qh02AkOnCQ1poK6oF+a7xWL6Gc=
|
golang.org/x/sys v0.36.0 h1:KVRy2GtZBrk1cBYA7MKu5bEZFxQk4NIDV6RLVcC8o0k=
|
||||||
golang.org/x/sys v0.38.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
|
golang.org/x/sys v0.36.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
|
||||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||||
golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
|
golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
|
||||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
module cog
|
module cog
|
||||||
|
|
||||||
go 1.25.5
|
go 1.25.3
|
||||||
|
|
||||||
tool github.com/grafana/cog/cmd/cli
|
tool github.com/grafana/cog/cmd/cli
|
||||||
|
|
||||||
@@ -40,11 +40,11 @@ require (
|
|||||||
github.com/spf13/pflag v1.0.6 // indirect
|
github.com/spf13/pflag v1.0.6 // indirect
|
||||||
github.com/ugorji/go/codec v1.2.11 // indirect
|
github.com/ugorji/go/codec v1.2.11 // indirect
|
||||||
github.com/yalue/merged_fs v1.3.0 // indirect
|
github.com/yalue/merged_fs v1.3.0 // indirect
|
||||||
golang.org/x/mod v0.29.0 // indirect
|
golang.org/x/mod v0.27.0 // indirect
|
||||||
golang.org/x/net v0.47.0 // indirect
|
golang.org/x/net v0.45.0 // indirect
|
||||||
golang.org/x/oauth2 v0.30.0 // indirect
|
golang.org/x/oauth2 v0.30.0 // indirect
|
||||||
golang.org/x/sync v0.18.0 // indirect
|
golang.org/x/sync v0.17.0 // indirect
|
||||||
golang.org/x/text v0.31.0 // indirect
|
golang.org/x/text v0.29.0 // indirect
|
||||||
golang.org/x/tools v0.38.0 // indirect
|
golang.org/x/tools v0.36.0 // indirect
|
||||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -85,20 +85,20 @@ github.com/ugorji/go/codec v1.2.11 h1:BMaWp1Bb6fHwEtbplGBGJ498wD+LKlNSl25MjdZY4d
|
|||||||
github.com/ugorji/go/codec v1.2.11/go.mod h1:UNopzCgEMSXjBc6AOMqYvWC1ktqTAfzJZUZgYf6w6lg=
|
github.com/ugorji/go/codec v1.2.11/go.mod h1:UNopzCgEMSXjBc6AOMqYvWC1ktqTAfzJZUZgYf6w6lg=
|
||||||
github.com/yalue/merged_fs v1.3.0 h1:qCeh9tMPNy/i8cwDsQTJ5bLr6IRxbs6meakNE5O+wyY=
|
github.com/yalue/merged_fs v1.3.0 h1:qCeh9tMPNy/i8cwDsQTJ5bLr6IRxbs6meakNE5O+wyY=
|
||||||
github.com/yalue/merged_fs v1.3.0/go.mod h1:WqqchfVYQyclV2tnR7wtRhBddzBvLVR83Cjw9BKQw0M=
|
github.com/yalue/merged_fs v1.3.0/go.mod h1:WqqchfVYQyclV2tnR7wtRhBddzBvLVR83Cjw9BKQw0M=
|
||||||
golang.org/x/mod v0.29.0 h1:HV8lRxZC4l2cr3Zq1LvtOsi/ThTgWnUk/y64QSs8GwA=
|
golang.org/x/mod v0.27.0 h1:kb+q2PyFnEADO2IEF935ehFUXlWiNjJWtRNgBLSfbxQ=
|
||||||
golang.org/x/mod v0.29.0/go.mod h1:NyhrlYXJ2H4eJiRy/WDBO6HMqZQ6q9nk4JzS3NuCK+w=
|
golang.org/x/mod v0.27.0/go.mod h1:rWI627Fq0DEoudcK+MBkNkCe0EetEaDSwJJkCcjpazc=
|
||||||
golang.org/x/net v0.47.0 h1:Mx+4dIFzqraBXUugkia1OOvlD6LemFo1ALMHjrXDOhY=
|
golang.org/x/net v0.45.0 h1:RLBg5JKixCy82FtLJpeNlVM0nrSqpCRYzVU1n8kj0tM=
|
||||||
golang.org/x/net v0.47.0/go.mod h1:/jNxtkgq5yWUGYkaZGqo27cfGZ1c5Nen03aYrrKpVRU=
|
golang.org/x/net v0.45.0/go.mod h1:ECOoLqd5U3Lhyeyo/QDCEVQ4sNgYsqvCZ722XogGieY=
|
||||||
golang.org/x/oauth2 v0.30.0 h1:dnDm7JmhM45NNpd8FDDeLhK6FwqbOf4MLCM9zb1BOHI=
|
golang.org/x/oauth2 v0.30.0 h1:dnDm7JmhM45NNpd8FDDeLhK6FwqbOf4MLCM9zb1BOHI=
|
||||||
golang.org/x/oauth2 v0.30.0/go.mod h1:B++QgG3ZKulg6sRPGD/mqlHQs5rB3Ml9erfeDY7xKlU=
|
golang.org/x/oauth2 v0.30.0/go.mod h1:B++QgG3ZKulg6sRPGD/mqlHQs5rB3Ml9erfeDY7xKlU=
|
||||||
golang.org/x/sync v0.18.0 h1:kr88TuHDroi+UVf+0hZnirlk8o8T+4MrK6mr60WkH/I=
|
golang.org/x/sync v0.17.0 h1:l60nONMj9l5drqw6jlhIELNv9I0A4OFgRsG9k2oT9Ug=
|
||||||
golang.org/x/sync v0.18.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
|
golang.org/x/sync v0.17.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
|
||||||
golang.org/x/sys v0.38.0 h1:3yZWxaJjBmCWXqhN1qh02AkOnCQ1poK6oF+a7xWL6Gc=
|
golang.org/x/sys v0.36.0 h1:KVRy2GtZBrk1cBYA7MKu5bEZFxQk4NIDV6RLVcC8o0k=
|
||||||
golang.org/x/sys v0.38.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
|
golang.org/x/sys v0.36.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
|
||||||
golang.org/x/text v0.31.0 h1:aC8ghyu4JhP8VojJ2lEHBnochRno1sgL6nEi9WGFGMM=
|
golang.org/x/text v0.29.0 h1:1neNs90w9YzJ9BocxfsQNHKuAT4pkghyXc4nhZ6sJvk=
|
||||||
golang.org/x/text v0.31.0/go.mod h1:tKRAlv61yKIjGGHX/4tP1LTbc13YSec1pxVEWXzfoeM=
|
golang.org/x/text v0.29.0/go.mod h1:7MhJOA9CD2qZyOKYazxdYMF85OwPdEr9jTtBpO7ydH4=
|
||||||
golang.org/x/tools v0.38.0 h1:Hx2Xv8hISq8Lm16jvBZ2VQf+RLmbd7wVUsALibYI/IQ=
|
golang.org/x/tools v0.36.0 h1:kWS0uv/zsvHEle1LbV5LE8QujrxB3wfQyxHfhOk0Qkg=
|
||||||
golang.org/x/tools v0.38.0/go.mod h1:yEsQ/d/YK8cjh0L6rZlY8tgtlKiBNTL14pGDJPJpYQs=
|
golang.org/x/tools v0.36.0/go.mod h1:WBDiHKJK8YgLHlcQPYQzNCkUxUypCaa5ZegCVutKm+s=
|
||||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||||
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
|
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
|
||||||
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
|
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
module cue
|
module cue
|
||||||
|
|
||||||
go 1.25.5
|
go 1.25.3
|
||||||
|
|
||||||
tool cuelang.org/go/cmd/cue
|
tool cuelang.org/go/cmd/cue
|
||||||
|
|
||||||
@@ -25,13 +25,13 @@ require (
|
|||||||
github.com/spf13/pflag v1.0.6 // indirect
|
github.com/spf13/pflag v1.0.6 // indirect
|
||||||
github.com/stretchr/testify v1.10.0 // indirect
|
github.com/stretchr/testify v1.10.0 // indirect
|
||||||
github.com/tetratelabs/wazero v1.6.0 // indirect
|
github.com/tetratelabs/wazero v1.6.0 // indirect
|
||||||
golang.org/x/mod v0.29.0 // indirect
|
golang.org/x/mod v0.27.0 // indirect
|
||||||
golang.org/x/net v0.47.0 // indirect
|
golang.org/x/net v0.45.0 // indirect
|
||||||
golang.org/x/oauth2 v0.30.0 // indirect
|
golang.org/x/oauth2 v0.30.0 // indirect
|
||||||
golang.org/x/sync v0.18.0 // indirect
|
golang.org/x/sync v0.17.0 // indirect
|
||||||
golang.org/x/sys v0.38.0 // indirect
|
golang.org/x/sys v0.36.0 // indirect
|
||||||
golang.org/x/text v0.31.0 // indirect
|
golang.org/x/text v0.29.0 // indirect
|
||||||
golang.org/x/tools v0.38.0 // indirect
|
golang.org/x/tools v0.36.0 // indirect
|
||||||
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c // indirect
|
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c // indirect
|
||||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -53,20 +53,20 @@ github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOf
|
|||||||
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
|
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
|
||||||
github.com/tetratelabs/wazero v1.6.0 h1:z0H1iikCdP8t+q341xqepY4EWvHEw8Es7tlqiVzlP3g=
|
github.com/tetratelabs/wazero v1.6.0 h1:z0H1iikCdP8t+q341xqepY4EWvHEw8Es7tlqiVzlP3g=
|
||||||
github.com/tetratelabs/wazero v1.6.0/go.mod h1:0U0G41+ochRKoPKCJlh0jMg1CHkyfK8kDqiirMmKY8A=
|
github.com/tetratelabs/wazero v1.6.0/go.mod h1:0U0G41+ochRKoPKCJlh0jMg1CHkyfK8kDqiirMmKY8A=
|
||||||
golang.org/x/mod v0.29.0 h1:HV8lRxZC4l2cr3Zq1LvtOsi/ThTgWnUk/y64QSs8GwA=
|
golang.org/x/mod v0.27.0 h1:kb+q2PyFnEADO2IEF935ehFUXlWiNjJWtRNgBLSfbxQ=
|
||||||
golang.org/x/mod v0.29.0/go.mod h1:NyhrlYXJ2H4eJiRy/WDBO6HMqZQ6q9nk4JzS3NuCK+w=
|
golang.org/x/mod v0.27.0/go.mod h1:rWI627Fq0DEoudcK+MBkNkCe0EetEaDSwJJkCcjpazc=
|
||||||
golang.org/x/net v0.47.0 h1:Mx+4dIFzqraBXUugkia1OOvlD6LemFo1ALMHjrXDOhY=
|
golang.org/x/net v0.45.0 h1:RLBg5JKixCy82FtLJpeNlVM0nrSqpCRYzVU1n8kj0tM=
|
||||||
golang.org/x/net v0.47.0/go.mod h1:/jNxtkgq5yWUGYkaZGqo27cfGZ1c5Nen03aYrrKpVRU=
|
golang.org/x/net v0.45.0/go.mod h1:ECOoLqd5U3Lhyeyo/QDCEVQ4sNgYsqvCZ722XogGieY=
|
||||||
golang.org/x/oauth2 v0.30.0 h1:dnDm7JmhM45NNpd8FDDeLhK6FwqbOf4MLCM9zb1BOHI=
|
golang.org/x/oauth2 v0.30.0 h1:dnDm7JmhM45NNpd8FDDeLhK6FwqbOf4MLCM9zb1BOHI=
|
||||||
golang.org/x/oauth2 v0.30.0/go.mod h1:B++QgG3ZKulg6sRPGD/mqlHQs5rB3Ml9erfeDY7xKlU=
|
golang.org/x/oauth2 v0.30.0/go.mod h1:B++QgG3ZKulg6sRPGD/mqlHQs5rB3Ml9erfeDY7xKlU=
|
||||||
golang.org/x/sync v0.18.0 h1:kr88TuHDroi+UVf+0hZnirlk8o8T+4MrK6mr60WkH/I=
|
golang.org/x/sync v0.17.0 h1:l60nONMj9l5drqw6jlhIELNv9I0A4OFgRsG9k2oT9Ug=
|
||||||
golang.org/x/sync v0.18.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
|
golang.org/x/sync v0.17.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
|
||||||
golang.org/x/sys v0.38.0 h1:3yZWxaJjBmCWXqhN1qh02AkOnCQ1poK6oF+a7xWL6Gc=
|
golang.org/x/sys v0.36.0 h1:KVRy2GtZBrk1cBYA7MKu5bEZFxQk4NIDV6RLVcC8o0k=
|
||||||
golang.org/x/sys v0.38.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
|
golang.org/x/sys v0.36.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
|
||||||
golang.org/x/text v0.31.0 h1:aC8ghyu4JhP8VojJ2lEHBnochRno1sgL6nEi9WGFGMM=
|
golang.org/x/text v0.29.0 h1:1neNs90w9YzJ9BocxfsQNHKuAT4pkghyXc4nhZ6sJvk=
|
||||||
golang.org/x/text v0.31.0/go.mod h1:tKRAlv61yKIjGGHX/4tP1LTbc13YSec1pxVEWXzfoeM=
|
golang.org/x/text v0.29.0/go.mod h1:7MhJOA9CD2qZyOKYazxdYMF85OwPdEr9jTtBpO7ydH4=
|
||||||
golang.org/x/tools v0.38.0 h1:Hx2Xv8hISq8Lm16jvBZ2VQf+RLmbd7wVUsALibYI/IQ=
|
golang.org/x/tools v0.36.0 h1:kWS0uv/zsvHEle1LbV5LE8QujrxB3wfQyxHfhOk0Qkg=
|
||||||
golang.org/x/tools v0.38.0/go.mod h1:yEsQ/d/YK8cjh0L6rZlY8tgtlKiBNTL14pGDJPJpYQs=
|
golang.org/x/tools v0.36.0/go.mod h1:WBDiHKJK8YgLHlcQPYQzNCkUxUypCaa5ZegCVutKm+s=
|
||||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||||
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
|
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
|
||||||
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
|
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
module golangci-lint
|
module golangci-lint
|
||||||
|
|
||||||
go 1.25.5
|
go 1.25.3
|
||||||
|
|
||||||
tool github.com/golangci/golangci-lint/v2/cmd/golangci-lint
|
tool github.com/golangci/golangci-lint/v2/cmd/golangci-lint
|
||||||
|
|
||||||
@@ -198,12 +198,12 @@ require (
|
|||||||
go.uber.org/zap v1.27.0 // indirect
|
go.uber.org/zap v1.27.0 // indirect
|
||||||
golang.org/x/exp v0.0.0-20250305212735-054e65f0b394 // indirect
|
golang.org/x/exp v0.0.0-20250305212735-054e65f0b394 // indirect
|
||||||
golang.org/x/exp/typeparams v0.0.0-20250911091902-df9299821621 // indirect
|
golang.org/x/exp/typeparams v0.0.0-20250911091902-df9299821621 // indirect
|
||||||
golang.org/x/mod v0.29.0 // indirect
|
golang.org/x/mod v0.28.0 // indirect
|
||||||
golang.org/x/net v0.47.0 // indirect
|
golang.org/x/net v0.45.0 // indirect
|
||||||
golang.org/x/sync v0.18.0 // indirect
|
golang.org/x/sync v0.17.0 // indirect
|
||||||
golang.org/x/sys v0.38.0 // indirect
|
golang.org/x/sys v0.36.0 // indirect
|
||||||
golang.org/x/text v0.31.0 // indirect
|
golang.org/x/text v0.29.0 // indirect
|
||||||
golang.org/x/tools v0.38.0 // indirect
|
golang.org/x/tools v0.37.0 // indirect
|
||||||
google.golang.org/protobuf v1.36.6 // indirect
|
google.golang.org/protobuf v1.36.6 // indirect
|
||||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||||
honnef.co/go/tools v0.6.1 // indirect
|
honnef.co/go/tools v0.6.1 // indirect
|
||||||
|
|||||||
@@ -481,8 +481,8 @@ golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91
|
|||||||
golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
|
golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
|
||||||
golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
|
golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
|
||||||
golang.org/x/mod v0.13.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
|
golang.org/x/mod v0.13.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
|
||||||
golang.org/x/mod v0.29.0 h1:HV8lRxZC4l2cr3Zq1LvtOsi/ThTgWnUk/y64QSs8GwA=
|
golang.org/x/mod v0.28.0 h1:gQBtGhjxykdjY9YhZpSlZIsbnaE2+PgjfLWUQTnoZ1U=
|
||||||
golang.org/x/mod v0.29.0/go.mod h1:NyhrlYXJ2H4eJiRy/WDBO6HMqZQ6q9nk4JzS3NuCK+w=
|
golang.org/x/mod v0.28.0/go.mod h1:yfB/L0NOf/kmEbXjzCPOx1iK1fRutOydrCMsqRhEBxI=
|
||||||
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
|
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
|
||||||
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||||
golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||||
@@ -496,8 +496,8 @@ golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
|
|||||||
golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg=
|
golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg=
|
||||||
golang.org/x/net v0.15.0/go.mod h1:idbUs1IY1+zTqbi8yxTbhexhEEk5ur9LInksu6HrEpk=
|
golang.org/x/net v0.15.0/go.mod h1:idbUs1IY1+zTqbi8yxTbhexhEEk5ur9LInksu6HrEpk=
|
||||||
golang.org/x/net v0.16.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE=
|
golang.org/x/net v0.16.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE=
|
||||||
golang.org/x/net v0.47.0 h1:Mx+4dIFzqraBXUugkia1OOvlD6LemFo1ALMHjrXDOhY=
|
golang.org/x/net v0.45.0 h1:RLBg5JKixCy82FtLJpeNlVM0nrSqpCRYzVU1n8kj0tM=
|
||||||
golang.org/x/net v0.47.0/go.mod h1:/jNxtkgq5yWUGYkaZGqo27cfGZ1c5Nen03aYrrKpVRU=
|
golang.org/x/net v0.45.0/go.mod h1:ECOoLqd5U3Lhyeyo/QDCEVQ4sNgYsqvCZ722XogGieY=
|
||||||
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||||
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||||
golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||||
@@ -507,8 +507,8 @@ golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJ
|
|||||||
golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||||
golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y=
|
golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y=
|
||||||
golang.org/x/sync v0.4.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y=
|
golang.org/x/sync v0.4.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y=
|
||||||
golang.org/x/sync v0.18.0 h1:kr88TuHDroi+UVf+0hZnirlk8o8T+4MrK6mr60WkH/I=
|
golang.org/x/sync v0.17.0 h1:l60nONMj9l5drqw6jlhIELNv9I0A4OFgRsG9k2oT9Ug=
|
||||||
golang.org/x/sync v0.18.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
|
golang.org/x/sync v0.17.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
|
||||||
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||||
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
@@ -529,8 +529,8 @@ golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
|||||||
golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/sys v0.38.0 h1:3yZWxaJjBmCWXqhN1qh02AkOnCQ1poK6oF+a7xWL6Gc=
|
golang.org/x/sys v0.36.0 h1:KVRy2GtZBrk1cBYA7MKu5bEZFxQk4NIDV6RLVcC8o0k=
|
||||||
golang.org/x/sys v0.38.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
|
golang.org/x/sys v0.36.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
|
||||||
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
|
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
|
||||||
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
|
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
|
||||||
golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
|
golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
|
||||||
@@ -545,8 +545,8 @@ golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
|
|||||||
golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
|
golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
|
||||||
golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
|
golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
|
||||||
golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
|
golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
|
||||||
golang.org/x/text v0.31.0 h1:aC8ghyu4JhP8VojJ2lEHBnochRno1sgL6nEi9WGFGMM=
|
golang.org/x/text v0.29.0 h1:1neNs90w9YzJ9BocxfsQNHKuAT4pkghyXc4nhZ6sJvk=
|
||||||
golang.org/x/text v0.31.0/go.mod h1:tKRAlv61yKIjGGHX/4tP1LTbc13YSec1pxVEWXzfoeM=
|
golang.org/x/text v0.29.0/go.mod h1:7MhJOA9CD2qZyOKYazxdYMF85OwPdEr9jTtBpO7ydH4=
|
||||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||||
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
|
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
|
||||||
golang.org/x/tools v0.0.0-20200329025819-fd4102a86c65/go.mod h1:Sl4aGygMT6LrqrWclx+PTx3U+LnKx/seiNR+3G19Ar8=
|
golang.org/x/tools v0.0.0-20200329025819-fd4102a86c65/go.mod h1:Sl4aGygMT6LrqrWclx+PTx3U+LnKx/seiNR+3G19Ar8=
|
||||||
@@ -559,8 +559,8 @@ golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc
|
|||||||
golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=
|
golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=
|
||||||
golang.org/x/tools v0.13.0/go.mod h1:HvlwmtVNQAhOuCjW7xxvovg8wbNq7LwfXh/k7wXUl58=
|
golang.org/x/tools v0.13.0/go.mod h1:HvlwmtVNQAhOuCjW7xxvovg8wbNq7LwfXh/k7wXUl58=
|
||||||
golang.org/x/tools v0.14.0/go.mod h1:uYBEerGOWcJyEORxN+Ek8+TT266gXkNlHdJBwexUsBg=
|
golang.org/x/tools v0.14.0/go.mod h1:uYBEerGOWcJyEORxN+Ek8+TT266gXkNlHdJBwexUsBg=
|
||||||
golang.org/x/tools v0.38.0 h1:Hx2Xv8hISq8Lm16jvBZ2VQf+RLmbd7wVUsALibYI/IQ=
|
golang.org/x/tools v0.37.0 h1:DVSRzp7FwePZW356yEAChSdNcQo6Nsp+fex1SUW09lE=
|
||||||
golang.org/x/tools v0.38.0/go.mod h1:yEsQ/d/YK8cjh0L6rZlY8tgtlKiBNTL14pGDJPJpYQs=
|
golang.org/x/tools v0.37.0/go.mod h1:MBN5QPQtLMHVdvsbtarmTNukZDdgwdwlO5qGacAzF0w=
|
||||||
golang.org/x/tools/go/expect v0.1.1-deprecated h1:jpBZDwmgPhXsKZC6WhL20P4b/wmnpsEAGHaNy0n/rJM=
|
golang.org/x/tools/go/expect v0.1.1-deprecated h1:jpBZDwmgPhXsKZC6WhL20P4b/wmnpsEAGHaNy0n/rJM=
|
||||||
golang.org/x/tools/go/expect v0.1.1-deprecated/go.mod h1:eihoPOH+FgIqa3FpoTwguz/bVUSGBlGQU67vpBeOrBY=
|
golang.org/x/tools/go/expect v0.1.1-deprecated/go.mod h1:eihoPOH+FgIqa3FpoTwguz/bVUSGBlGQU67vpBeOrBY=
|
||||||
golang.org/x/tools/go/packages/packagestest v0.1.1-deprecated h1:1h2MnaIAIXISqTFKdENegdpAgUXz6NrPEsbIeWaBRvM=
|
golang.org/x/tools/go/packages/packagestest v0.1.1-deprecated h1:1h2MnaIAIXISqTFKdENegdpAgUXz6NrPEsbIeWaBRvM=
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
module jb
|
module jb
|
||||||
|
|
||||||
go 1.25.5
|
go 1.25.3
|
||||||
|
|
||||||
tool github.com/jsonnet-bundler/jsonnet-bundler/cmd/jb
|
tool github.com/jsonnet-bundler/jsonnet-bundler/cmd/jb
|
||||||
|
|
||||||
@@ -15,6 +15,6 @@ require (
|
|||||||
github.com/pkg/errors v0.9.1 // indirect
|
github.com/pkg/errors v0.9.1 // indirect
|
||||||
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
|
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
|
||||||
github.com/stretchr/testify v1.10.0 // indirect
|
github.com/stretchr/testify v1.10.0 // indirect
|
||||||
golang.org/x/sys v0.38.0 // indirect
|
golang.org/x/sys v0.36.0 // indirect
|
||||||
gopkg.in/alecthomas/kingpin.v2 v2.2.6 // indirect
|
gopkg.in/alecthomas/kingpin.v2 v2.2.6 // indirect
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -54,8 +54,8 @@ golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBc
|
|||||||
golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/sys v0.0.0-20220615213510-4f61da869c0c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.0.0-20220615213510-4f61da869c0c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/sys v0.38.0 h1:3yZWxaJjBmCWXqhN1qh02AkOnCQ1poK6oF+a7xWL6Gc=
|
golang.org/x/sys v0.36.0 h1:KVRy2GtZBrk1cBYA7MKu5bEZFxQk4NIDV6RLVcC8o0k=
|
||||||
golang.org/x/sys v0.38.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
|
golang.org/x/sys v0.36.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
|
||||||
gopkg.in/alecthomas/kingpin.v2 v2.2.6 h1:jMFz6MfLP0/4fUyZle81rXUoxOBFi19VUFKVDOQfozc=
|
gopkg.in/alecthomas/kingpin.v2 v2.2.6 h1:jMFz6MfLP0/4fUyZle81rXUoxOBFi19VUFKVDOQfozc=
|
||||||
gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw=
|
gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw=
|
||||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
module lefthook
|
module lefthook
|
||||||
|
|
||||||
go 1.25.5
|
go 1.25.3
|
||||||
|
|
||||||
tool github.com/evilmartians/lefthook
|
tool github.com/evilmartians/lefthook
|
||||||
|
|
||||||
@@ -43,9 +43,9 @@ require (
|
|||||||
github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e // indirect
|
github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e // indirect
|
||||||
go.uber.org/multierr v1.11.0 // indirect
|
go.uber.org/multierr v1.11.0 // indirect
|
||||||
golang.org/x/exp v0.0.0-20250305212735-054e65f0b394 // indirect
|
golang.org/x/exp v0.0.0-20250305212735-054e65f0b394 // indirect
|
||||||
golang.org/x/sys v0.38.0 // indirect
|
golang.org/x/sys v0.36.0 // indirect
|
||||||
golang.org/x/term v0.37.0 // indirect
|
golang.org/x/term v0.35.0 // indirect
|
||||||
golang.org/x/text v0.31.0 // indirect
|
golang.org/x/text v0.29.0 // indirect
|
||||||
gopkg.in/alessio/shellescape.v1 v1.0.0-20170105083845-52074bc9df61 // indirect
|
gopkg.in/alessio/shellescape.v1 v1.0.0-20170105083845-52074bc9df61 // indirect
|
||||||
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c // indirect
|
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c // indirect
|
||||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||||
|
|||||||
@@ -91,14 +91,14 @@ go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN8
|
|||||||
golang.org/x/exp v0.0.0-20250305212735-054e65f0b394 h1:nDVHiLt8aIbd/VzvPWN6kSOPE7+F/fNFDSXLVYkE/Iw=
|
golang.org/x/exp v0.0.0-20250305212735-054e65f0b394 h1:nDVHiLt8aIbd/VzvPWN6kSOPE7+F/fNFDSXLVYkE/Iw=
|
||||||
golang.org/x/exp v0.0.0-20250305212735-054e65f0b394/go.mod h1:sIifuuw/Yco/y6yb6+bDNfyeQ/MdPUy/hKEMYQV17cM=
|
golang.org/x/exp v0.0.0-20250305212735-054e65f0b394/go.mod h1:sIifuuw/Yco/y6yb6+bDNfyeQ/MdPUy/hKEMYQV17cM=
|
||||||
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/sys v0.38.0 h1:3yZWxaJjBmCWXqhN1qh02AkOnCQ1poK6oF+a7xWL6Gc=
|
golang.org/x/sys v0.36.0 h1:KVRy2GtZBrk1cBYA7MKu5bEZFxQk4NIDV6RLVcC8o0k=
|
||||||
golang.org/x/sys v0.38.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
|
golang.org/x/sys v0.36.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
|
||||||
golang.org/x/term v0.37.0 h1:8EGAD0qCmHYZg6J17DvsMy9/wJ7/D/4pV/wfnld5lTU=
|
golang.org/x/term v0.35.0 h1:bZBVKBudEyhRcajGcNc3jIfWPqV4y/Kt2XcoigOWtDQ=
|
||||||
golang.org/x/term v0.37.0/go.mod h1:5pB4lxRNYYVZuTLmy8oR2BH8dflOR+IbTYFD8fi3254=
|
golang.org/x/term v0.35.0/go.mod h1:TPGtkTLesOwf2DE8CgVYiZinHAOuy5AYUYT1lENIZnA=
|
||||||
golang.org/x/text v0.31.0 h1:aC8ghyu4JhP8VojJ2lEHBnochRno1sgL6nEi9WGFGMM=
|
golang.org/x/text v0.29.0 h1:1neNs90w9YzJ9BocxfsQNHKuAT4pkghyXc4nhZ6sJvk=
|
||||||
golang.org/x/text v0.31.0/go.mod h1:tKRAlv61yKIjGGHX/4tP1LTbc13YSec1pxVEWXzfoeM=
|
golang.org/x/text v0.29.0/go.mod h1:7MhJOA9CD2qZyOKYazxdYMF85OwPdEr9jTtBpO7ydH4=
|
||||||
golang.org/x/tools v0.38.0 h1:Hx2Xv8hISq8Lm16jvBZ2VQf+RLmbd7wVUsALibYI/IQ=
|
golang.org/x/tools v0.36.0 h1:kWS0uv/zsvHEle1LbV5LE8QujrxB3wfQyxHfhOk0Qkg=
|
||||||
golang.org/x/tools v0.38.0/go.mod h1:yEsQ/d/YK8cjh0L6rZlY8tgtlKiBNTL14pGDJPJpYQs=
|
golang.org/x/tools v0.36.0/go.mod h1:WBDiHKJK8YgLHlcQPYQzNCkUxUypCaa5ZegCVutKm+s=
|
||||||
gopkg.in/alessio/shellescape.v1 v1.0.0-20170105083845-52074bc9df61 h1:8ajkpB4hXVftY5ko905id+dOnmorcS2CHNxxHLLDcFM=
|
gopkg.in/alessio/shellescape.v1 v1.0.0-20170105083845-52074bc9df61 h1:8ajkpB4hXVftY5ko905id+dOnmorcS2CHNxxHLLDcFM=
|
||||||
gopkg.in/alessio/shellescape.v1 v1.0.0-20170105083845-52074bc9df61/go.mod h1:IfMagxm39Ys4ybJrDb7W3Ob8RwxftP0Yy+or/NVz1O8=
|
gopkg.in/alessio/shellescape.v1 v1.0.0-20170105083845-52074bc9df61/go.mod h1:IfMagxm39Ys4ybJrDb7W3Ob8RwxftP0Yy+or/NVz1O8=
|
||||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
module swagger
|
module swagger
|
||||||
|
|
||||||
go 1.25.5
|
go 1.25.3
|
||||||
|
|
||||||
tool github.com/go-swagger/go-swagger/cmd/swagger
|
tool github.com/go-swagger/go-swagger/cmd/swagger
|
||||||
|
|
||||||
@@ -51,12 +51,12 @@ require (
|
|||||||
github.com/toqueteos/webbrowser v1.2.0 // indirect
|
github.com/toqueteos/webbrowser v1.2.0 // indirect
|
||||||
go.mongodb.org/mongo-driver v1.16.1 // indirect
|
go.mongodb.org/mongo-driver v1.16.1 // indirect
|
||||||
go.uber.org/multierr v1.11.0 // indirect
|
go.uber.org/multierr v1.11.0 // indirect
|
||||||
golang.org/x/crypto v0.45.0 // indirect
|
golang.org/x/crypto v0.42.0 // indirect
|
||||||
golang.org/x/mod v0.29.0 // indirect
|
golang.org/x/mod v0.27.0 // indirect
|
||||||
golang.org/x/sync v0.18.0 // indirect
|
golang.org/x/sync v0.17.0 // indirect
|
||||||
golang.org/x/sys v0.38.0 // indirect
|
golang.org/x/sys v0.36.0 // indirect
|
||||||
golang.org/x/text v0.31.0 // indirect
|
golang.org/x/text v0.29.0 // indirect
|
||||||
golang.org/x/tools v0.38.0 // indirect
|
golang.org/x/tools v0.36.0 // indirect
|
||||||
gopkg.in/yaml.v2 v2.4.0 // indirect
|
gopkg.in/yaml.v2 v2.4.0 // indirect
|
||||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -101,19 +101,19 @@ go.mongodb.org/mongo-driver v1.16.1 h1:rIVLL3q0IHM39dvE+z2ulZLp9ENZKThVfuvN/IiN4
|
|||||||
go.mongodb.org/mongo-driver v1.16.1/go.mod h1:oB6AhJQvFQL4LEHyXi6aJzQJtBiTQHiAd83l0GdFaiw=
|
go.mongodb.org/mongo-driver v1.16.1/go.mod h1:oB6AhJQvFQL4LEHyXi6aJzQJtBiTQHiAd83l0GdFaiw=
|
||||||
go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0=
|
go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0=
|
||||||
go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y=
|
go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y=
|
||||||
golang.org/x/crypto v0.45.0 h1:jMBrvKuj23MTlT0bQEOBcAE0mjg8mK9RXFhRH6nyF3Q=
|
golang.org/x/crypto v0.42.0 h1:chiH31gIWm57EkTXpwnqf8qeuMUi0yekh6mT2AvFlqI=
|
||||||
golang.org/x/crypto v0.45.0/go.mod h1:XTGrrkGJve7CYK7J8PEww4aY7gM3qMCElcJQ8n8JdX4=
|
golang.org/x/crypto v0.42.0/go.mod h1:4+rDnOTJhQCx2q7/j6rAN5XDw8kPjeaXEUR2eL94ix8=
|
||||||
golang.org/x/mod v0.29.0 h1:HV8lRxZC4l2cr3Zq1LvtOsi/ThTgWnUk/y64QSs8GwA=
|
golang.org/x/mod v0.27.0 h1:kb+q2PyFnEADO2IEF935ehFUXlWiNjJWtRNgBLSfbxQ=
|
||||||
golang.org/x/mod v0.29.0/go.mod h1:NyhrlYXJ2H4eJiRy/WDBO6HMqZQ6q9nk4JzS3NuCK+w=
|
golang.org/x/mod v0.27.0/go.mod h1:rWI627Fq0DEoudcK+MBkNkCe0EetEaDSwJJkCcjpazc=
|
||||||
golang.org/x/sync v0.18.0 h1:kr88TuHDroi+UVf+0hZnirlk8o8T+4MrK6mr60WkH/I=
|
golang.org/x/sync v0.17.0 h1:l60nONMj9l5drqw6jlhIELNv9I0A4OFgRsG9k2oT9Ug=
|
||||||
golang.org/x/sync v0.18.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
|
golang.org/x/sync v0.17.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
|
||||||
golang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
golang.org/x/sys v0.38.0 h1:3yZWxaJjBmCWXqhN1qh02AkOnCQ1poK6oF+a7xWL6Gc=
|
golang.org/x/sys v0.36.0 h1:KVRy2GtZBrk1cBYA7MKu5bEZFxQk4NIDV6RLVcC8o0k=
|
||||||
golang.org/x/sys v0.38.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
|
golang.org/x/sys v0.36.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
|
||||||
golang.org/x/text v0.31.0 h1:aC8ghyu4JhP8VojJ2lEHBnochRno1sgL6nEi9WGFGMM=
|
golang.org/x/text v0.29.0 h1:1neNs90w9YzJ9BocxfsQNHKuAT4pkghyXc4nhZ6sJvk=
|
||||||
golang.org/x/text v0.31.0/go.mod h1:tKRAlv61yKIjGGHX/4tP1LTbc13YSec1pxVEWXzfoeM=
|
golang.org/x/text v0.29.0/go.mod h1:7MhJOA9CD2qZyOKYazxdYMF85OwPdEr9jTtBpO7ydH4=
|
||||||
golang.org/x/tools v0.38.0 h1:Hx2Xv8hISq8Lm16jvBZ2VQf+RLmbd7wVUsALibYI/IQ=
|
golang.org/x/tools v0.36.0 h1:kWS0uv/zsvHEle1LbV5LE8QujrxB3wfQyxHfhOk0Qkg=
|
||||||
golang.org/x/tools v0.38.0/go.mod h1:yEsQ/d/YK8cjh0L6rZlY8tgtlKiBNTL14pGDJPJpYQs=
|
golang.org/x/tools v0.36.0/go.mod h1:WBDiHKJK8YgLHlcQPYQzNCkUxUypCaa5ZegCVutKm+s=
|
||||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||||
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
|
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
|
||||||
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
|
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
|
||||||
|
|||||||
@@ -4,7 +4,6 @@
|
|||||||
.gitignore
|
.gitignore
|
||||||
.vscode
|
.vscode
|
||||||
bin
|
bin
|
||||||
!bin/grafana-linux-k8s
|
|
||||||
data*
|
data*
|
||||||
dist
|
dist
|
||||||
docker
|
docker
|
||||||
|
|||||||
10
.gitattributes
vendored
10
.gitattributes
vendored
@@ -1,11 +1 @@
|
|||||||
* text=auto eol=lf
|
* text=auto eol=lf
|
||||||
*.gen.ts linguist-generated
|
|
||||||
*_gen.ts linguist-generated
|
|
||||||
*_gen.go linguist-generated
|
|
||||||
*_gen.csv linguist-generated
|
|
||||||
*_gen.json linguist-generated
|
|
||||||
**/openapi_snapshots/*.json linguist-generated
|
|
||||||
apps/**/pkg/apis/*_manifest.go linguist-generated
|
|
||||||
public/openapi3.json linguist-generated
|
|
||||||
public/api-merged.json linguist-generated
|
|
||||||
public/api-enterprise-spec.json linguist-generated
|
|
||||||
|
|||||||
125
.github/CODEOWNERS
vendored
125
.github/CODEOWNERS
vendored
@@ -32,31 +32,25 @@
|
|||||||
/devenv/README.md @grafana/docs-grafana
|
/devenv/README.md @grafana/docs-grafana
|
||||||
|
|
||||||
# START Technical documentation
|
# START Technical documentation
|
||||||
/.vale.ini @grafana/docs-tooling
|
/.vale.ini @grafana/docs-tooling
|
||||||
/AGENTS.md @grafana/docs-tooling
|
|
||||||
|
|
||||||
# `make docs` procedure and related workflows are owned @grafana/docs-tooling. Slack #docs.
|
# `make docs` procedure and related workflows are owned @grafana/docs-tooling. Slack #docs.
|
||||||
/docs/ @grafana/docs-tooling
|
/docs/ @grafana/docs-tooling
|
||||||
|
|
||||||
/docs/sources/ @irenerl24
|
/docs/sources/ @irenerl24
|
||||||
|
|
||||||
/docs/sources/alerting/ @JohnnyK-Grafana
|
/docs/sources/alerting/ @JohnnyK-Grafana
|
||||||
/docs/sources/as-code/ @urbiz-grafana
|
/docs/sources/dashboards/ @imatwawana
|
||||||
/docs/sources/developer-resources/ @urbiz-grafana
|
|
||||||
/docs/sources/datasources/ @lwandz13
|
/docs/sources/datasources/ @lwandz13
|
||||||
|
/docs/sources/panels-visualizations/ @imatwawana
|
||||||
/docs/sources/upgrade-guide/ @jtvdez
|
/docs/sources/upgrade-guide/ @jtvdez
|
||||||
/docs/sources/whatsnew/ @jtvdez
|
/docs/sources/whatsnew/ @jtvdez
|
||||||
|
|
||||||
|
|
||||||
/docs/sources/developers/plugins/ @grafana/plugins-platform-frontend @grafana/plugins-platform-backend
|
/docs/sources/developers/plugins/ @grafana/plugins-platform-frontend @grafana/plugins-platform-backend
|
||||||
/docs/sources/visualizations/dashboards/ @imatwawana
|
|
||||||
/docs/sources/visualizations/panels-visualizations/ @imatwawana
|
|
||||||
|
|
||||||
|
/docs/sources/dashboards/share-dashboards-panels/_index.md @imatwawana @jtvdez
|
||||||
/docs/sources/visualizations/dashboards/share-dashboards-panels/_index.md @imatwawana @jtvdez
|
/docs/sources/dashboards/share-dashboards-panels/shared-dashboards/index.md @jtvdez
|
||||||
/docs/sources/visualizations/dashboards/share-dashboards-panels/shared-dashboards/index.md @jtvdez
|
/docs/sources/panels-visualizations/query-transform-data/transform-data/index.md @imatwawana @baldm0mma
|
||||||
/docs/sources/visualizations/panels-visualizations/query-transform-data/transform-data/index.md @imatwawana @baldm0mma
|
/docs/sources/panels-visualizations/query-transform-data/sql-expressions/index.md @lwandz13 @irenerl24
|
||||||
/docs/sources/visualizations/panels-visualizations/query-transform-data/sql-expressions/index.md @lwandz13 @irenerl24
|
|
||||||
# END Technical documentation
|
# END Technical documentation
|
||||||
|
|
||||||
# Backend code
|
# Backend code
|
||||||
@@ -85,24 +79,17 @@
|
|||||||
# Git Sync frontend owned by frontend team as a whole.
|
# Git Sync frontend owned by frontend team as a whole.
|
||||||
|
|
||||||
/apps/alerting/ @grafana/alerting-backend
|
/apps/alerting/ @grafana/alerting-backend
|
||||||
/apps/quotas/ @grafana/grafana-search-and-storage
|
|
||||||
/apps/dashboard/ @grafana/grafana-app-platform-squad @grafana/dashboards-squad
|
/apps/dashboard/ @grafana/grafana-app-platform-squad @grafana/dashboards-squad
|
||||||
/apps/folder/ @grafana/grafana-app-platform-squad
|
/apps/folder/ @grafana/grafana-app-platform-squad
|
||||||
/apps/playlist/ @grafana/grafana-app-platform-squad
|
/apps/playlist/ @grafana/grafana-app-platform-squad
|
||||||
/apps/plugins/ @grafana/plugins-platform-backend
|
/apps/plugins/ @grafana/plugins-platform-backend
|
||||||
/apps/collections/ @grafana/grafana-app-platform-squad @grafana/grafana-frontend-platform
|
|
||||||
/apps/preferences/ @grafana/grafana-app-platform-squad @grafana/grafana-frontend-platform
|
/apps/preferences/ @grafana/grafana-app-platform-squad @grafana/grafana-frontend-platform
|
||||||
/apps/shorturl/ @grafana/sharing-squad
|
/apps/shorturl/ @grafana/sharing-squad
|
||||||
/apps/secret/ @grafana/grafana-operator-experience-squad
|
/apps/secret/ @grafana/grafana-operator-experience-squad
|
||||||
/apps/scope/ @grafana/grafana-operator-experience-squad
|
|
||||||
/apps/investigations/ @fcjack @matryer @svennergr
|
/apps/investigations/ @fcjack @matryer @svennergr
|
||||||
/apps/advisor/ @grafana/plugins-platform-backend
|
/apps/advisor/ @grafana/plugins-platform-backend
|
||||||
/apps/iam/ @grafana/access-squad
|
/apps/iam/ @grafana/access-squad
|
||||||
/apps/sdk.mk @grafana/grafana-app-platform-squad
|
/apps/sdk.mk @grafana/grafana-app-platform-squad
|
||||||
/apps/correlations @grafana/datapro
|
|
||||||
/apps/example/ @grafana/grafana-app-platform-squad
|
|
||||||
/apps/logsdrilldown/ @grafana/observability-logs
|
|
||||||
/apps/annotation/ @grafana/grafana-backend-services-squad
|
|
||||||
/pkg/api/ @grafana/grafana-backend-group
|
/pkg/api/ @grafana/grafana-backend-group
|
||||||
/pkg/apis/ @grafana/grafana-app-platform-squad
|
/pkg/apis/ @grafana/grafana-app-platform-squad
|
||||||
/pkg/apis/query @grafana/grafana-datasources-core-services
|
/pkg/apis/query @grafana/grafana-datasources-core-services
|
||||||
@@ -156,7 +143,7 @@
|
|||||||
/pkg/promlib @grafana/oss-big-tent
|
/pkg/promlib @grafana/oss-big-tent
|
||||||
/pkg/storage/ @grafana/grafana-search-and-storage
|
/pkg/storage/ @grafana/grafana-search-and-storage
|
||||||
/pkg/storage/secret/ @grafana/grafana-operator-experience-squad
|
/pkg/storage/secret/ @grafana/grafana-operator-experience-squad
|
||||||
/pkg/services/annotations/ @grafana/grafana-backend-services-squad
|
/pkg/services/annotations/ @grafana/grafana-search-and-storage
|
||||||
/pkg/services/apikey/ @grafana/identity-squad
|
/pkg/services/apikey/ @grafana/identity-squad
|
||||||
/pkg/services/cleanup/ @grafana/grafana-backend-group
|
/pkg/services/cleanup/ @grafana/grafana-backend-group
|
||||||
/pkg/services/contexthandler/ @grafana/grafana-backend-group @grafana/grafana-app-platform-squad
|
/pkg/services/contexthandler/ @grafana/grafana-backend-group @grafana/grafana-app-platform-squad
|
||||||
@@ -172,7 +159,7 @@
|
|||||||
/pkg/services/kmsproviders/ @grafana/grafana-operator-experience-squad
|
/pkg/services/kmsproviders/ @grafana/grafana-operator-experience-squad
|
||||||
/pkg/services/licensing/ @grafana/grafana-operator-experience-squad
|
/pkg/services/licensing/ @grafana/grafana-operator-experience-squad
|
||||||
/pkg/services/dsquerierclient/ @grafana/grafana-datasources-core-services
|
/pkg/services/dsquerierclient/ @grafana/grafana-datasources-core-services
|
||||||
/pkg/services/navtree/ @grafana/grafana-backend-group @grafana/grafana-search-navigate-organise
|
/pkg/services/navtree/ @grafana/grafana-backend-group
|
||||||
/pkg/services/notifications/ @grafana/grafana-backend-group
|
/pkg/services/notifications/ @grafana/grafana-backend-group
|
||||||
/pkg/services/org/ @grafana/grafana-backend-group
|
/pkg/services/org/ @grafana/grafana-backend-group
|
||||||
/pkg/services/playlist/ @grafana/grafana-app-platform-squad
|
/pkg/services/playlist/ @grafana/grafana-app-platform-squad
|
||||||
@@ -186,8 +173,7 @@
|
|||||||
/pkg/services/search/ @grafana/grafana-search-and-storage
|
/pkg/services/search/ @grafana/grafana-search-and-storage
|
||||||
/pkg/services/searchusers/ @grafana/grafana-search-and-storage
|
/pkg/services/searchusers/ @grafana/grafana-search-and-storage
|
||||||
/pkg/services/secrets/ @grafana/grafana-operator-experience-squad
|
/pkg/services/secrets/ @grafana/grafana-operator-experience-squad
|
||||||
/pkg/services/setting/ @grafana/grafana-backend-services-squad
|
/pkg/services/shorturls/ @grafana/grafana-backend-group
|
||||||
/pkg/services/shorturls/ @grafana/sharing-squad
|
|
||||||
/pkg/services/sqlstore/ @grafana/grafana-search-and-storage
|
/pkg/services/sqlstore/ @grafana/grafana-search-and-storage
|
||||||
/pkg/services/ssosettings/ @grafana/identity-squad
|
/pkg/services/ssosettings/ @grafana/identity-squad
|
||||||
/pkg/services/star/ @grafana/grafana-search-and-storage
|
/pkg/services/star/ @grafana/grafana-search-and-storage
|
||||||
@@ -201,11 +187,10 @@
|
|||||||
/pkg/setting/ @grafana/grafana-backend-services-squad
|
/pkg/setting/ @grafana/grafana-backend-services-squad
|
||||||
/pkg/tests/ @grafana/grafana-backend-services-squad
|
/pkg/tests/ @grafana/grafana-backend-services-squad
|
||||||
/pkg/tests/apis/ @grafana/grafana-app-platform-squad
|
/pkg/tests/apis/ @grafana/grafana-app-platform-squad
|
||||||
/pkg/tests/apis/alerting @grafana/alerting-backend
|
/pkg/tests/apis/alerting @grafana/grafana-app-platform-squad @grafana/alerting-backend
|
||||||
/pkg/tests/apis/features @grafana/grafana-backend-services-squad
|
/pkg/tests/apis/features @grafana/grafana-backend-services-squad
|
||||||
/pkg/tests/apis/folder @grafana/grafana-search-and-storage
|
/pkg/tests/apis/folder @grafana/grafana-search-and-storage
|
||||||
/pkg/tests/apis/iam @grafana/identity-access-team
|
/pkg/tests/apis/iam @grafana/identity-access-team
|
||||||
/pkg/tests/apis/shorturl @grafana/sharing-squad
|
|
||||||
/pkg/tests/api/correlations/ @grafana/datapro
|
/pkg/tests/api/correlations/ @grafana/datapro
|
||||||
/pkg/tsdb/grafanads/ @grafana/grafana-backend-group
|
/pkg/tsdb/grafanads/ @grafana/grafana-backend-group
|
||||||
/pkg/tsdb/opentsdb/ @grafana/partner-datasources
|
/pkg/tsdb/opentsdb/ @grafana/partner-datasources
|
||||||
@@ -232,7 +217,6 @@
|
|||||||
/devenv/datasources.yaml @grafana/grafana-backend-group
|
/devenv/datasources.yaml @grafana/grafana-backend-group
|
||||||
/devenv/datasources_docker.yaml @grafana/grafana-backend-group
|
/devenv/datasources_docker.yaml @grafana/grafana-backend-group
|
||||||
/devenv/dev-dashboards-without-uid/ @grafana/dashboards-squad
|
/devenv/dev-dashboards-without-uid/ @grafana/dashboards-squad
|
||||||
/devenv/scopes/ @grafana/grafana-operator-experience-squad
|
|
||||||
|
|
||||||
/devenv/dev-dashboards/annotations @grafana/dataviz-squad
|
/devenv/dev-dashboards/annotations @grafana/dataviz-squad
|
||||||
/devenv/dev-dashboards/migrations @grafana/dataviz-squad
|
/devenv/dev-dashboards/migrations @grafana/dataviz-squad
|
||||||
@@ -249,7 +233,6 @@
|
|||||||
/devenv/dev-dashboards/panel-library @grafana/dataviz-squad
|
/devenv/dev-dashboards/panel-library @grafana/dataviz-squad
|
||||||
/devenv/dev-dashboards/panel-piechart @grafana/dataviz-squad
|
/devenv/dev-dashboards/panel-piechart @grafana/dataviz-squad
|
||||||
/devenv/dev-dashboards/panel-stat @grafana/dataviz-squad
|
/devenv/dev-dashboards/panel-stat @grafana/dataviz-squad
|
||||||
/devenv/dev-dashboards/panel-status-history @grafana/dataviz-squad
|
|
||||||
/devenv/dev-dashboards/panel-table @grafana/dataviz-squad
|
/devenv/dev-dashboards/panel-table @grafana/dataviz-squad
|
||||||
/devenv/dev-dashboards/panel-timeline @grafana/dataviz-squad
|
/devenv/dev-dashboards/panel-timeline @grafana/dataviz-squad
|
||||||
/devenv/dev-dashboards/panel-timeseries @grafana/dataviz-squad
|
/devenv/dev-dashboards/panel-timeseries @grafana/dataviz-squad
|
||||||
@@ -259,6 +242,7 @@
|
|||||||
/devenv/dev-dashboards/all-panels.json @grafana/dataviz-squad
|
/devenv/dev-dashboards/all-panels.json @grafana/dataviz-squad
|
||||||
/devenv/dev-dashboards/dashboards.go @grafana/dataviz-squad
|
/devenv/dev-dashboards/dashboards.go @grafana/dataviz-squad
|
||||||
/devenv/dev-dashboards/home.json @grafana/dataviz-squad
|
/devenv/dev-dashboards/home.json @grafana/dataviz-squad
|
||||||
|
|
||||||
/devenv/dev-dashboards/datasource-elasticsearch/ @grafana/partner-datasources
|
/devenv/dev-dashboards/datasource-elasticsearch/ @grafana/partner-datasources
|
||||||
/devenv/dev-dashboards/datasource-opentsdb/ @grafana/partner-datasources
|
/devenv/dev-dashboards/datasource-opentsdb/ @grafana/partner-datasources
|
||||||
/devenv/dev-dashboards/datasource-influxdb/ @grafana/partner-datasources
|
/devenv/dev-dashboards/datasource-influxdb/ @grafana/partner-datasources
|
||||||
@@ -314,7 +298,7 @@
|
|||||||
/devenv/docker/blocks/prometheus_random_data/ @grafana/oss-big-tent
|
/devenv/docker/blocks/prometheus_random_data/ @grafana/oss-big-tent
|
||||||
/devenv/docker/blocks/prometheus_high_card/ @grafana/oss-big-tent
|
/devenv/docker/blocks/prometheus_high_card/ @grafana/oss-big-tent
|
||||||
/devenv/docker/blocks/prometheus_utf8/ @grafana/oss-big-tent
|
/devenv/docker/blocks/prometheus_utf8/ @grafana/oss-big-tent
|
||||||
/devenv/docker/blocks/pyroscope/ @grafana/oss-big-tent
|
/devenv/docker/blocks/pyroscope/ @grafana/observability-traces-and-profiling
|
||||||
/devenv/docker/blocks/redis/ @bergquist
|
/devenv/docker/blocks/redis/ @bergquist
|
||||||
/devenv/docker/blocks/sensugo/ @grafana/grafana-backend-group
|
/devenv/docker/blocks/sensugo/ @grafana/grafana-backend-group
|
||||||
/devenv/docker/blocks/slow_proxy/ @bergquist
|
/devenv/docker/blocks/slow_proxy/ @bergquist
|
||||||
@@ -325,7 +309,6 @@
|
|||||||
/devenv/docker/blocks/webdav/ @grafana/alerting-backend
|
/devenv/docker/blocks/webdav/ @grafana/alerting-backend
|
||||||
/devenv/docker/buildcontainer/ @bergquist
|
/devenv/docker/buildcontainer/ @bergquist
|
||||||
/devenv/docker/compose_header.yml @grafana/grafana-backend-services-squad
|
/devenv/docker/compose_header.yml @grafana/grafana-backend-services-squad
|
||||||
/devenv/docker/compose_volume_section.yml @grafana/grafana-backend-services-squad
|
|
||||||
/devenv/docker/debtest/ @bergquist
|
/devenv/docker/debtest/ @bergquist
|
||||||
/devenv/docker/ha-test-unified-alerting/ @grafana/alerting-backend
|
/devenv/docker/ha-test-unified-alerting/ @grafana/alerting-backend
|
||||||
/devenv/docker/ha_test/ @grafana/grafana-backend-services-squad
|
/devenv/docker/ha_test/ @grafana/grafana-backend-services-squad
|
||||||
@@ -364,8 +347,8 @@
|
|||||||
/pkg/tsdb/prometheus/ @grafana/oss-big-tent
|
/pkg/tsdb/prometheus/ @grafana/oss-big-tent
|
||||||
/pkg/tsdb/elasticsearch/ @grafana/partner-datasources
|
/pkg/tsdb/elasticsearch/ @grafana/partner-datasources
|
||||||
/pkg/tsdb/loki/ @grafana/oss-big-tent
|
/pkg/tsdb/loki/ @grafana/oss-big-tent
|
||||||
/pkg/tsdb/tempo/ @grafana/oss-big-tent
|
/pkg/tsdb/tempo/ @grafana/oss-big-tent @grafana/observability-traces-and-profiling
|
||||||
/pkg/tsdb/grafana-pyroscope-datasource/ @grafana/oss-big-tent
|
/pkg/tsdb/grafana-pyroscope-datasource/ @grafana/observability-traces-and-profiling
|
||||||
/pkg/tsdb/parca/ @grafana/oss-big-tent
|
/pkg/tsdb/parca/ @grafana/oss-big-tent
|
||||||
|
|
||||||
# OSS Big Tent backend code
|
# OSS Big Tent backend code
|
||||||
@@ -422,8 +405,8 @@
|
|||||||
|
|
||||||
/crowdin.yml @grafana/grafana-frontend-platform
|
/crowdin.yml @grafana/grafana-frontend-platform
|
||||||
/public/locales/ @grafanabot
|
/public/locales/ @grafanabot
|
||||||
i18next.config.ts @grafana/grafana-frontend-platform
|
/public/locales/i18next-parser.config.cjs @grafana/grafana-frontend-platform
|
||||||
/public/locales/enterprise/i18next.config.ts @grafana/grafana-frontend-platform
|
/public/locales/i18next-parser-enterprise.config.cjs @grafana/grafana-frontend-platform
|
||||||
/public/app/core/internationalization/ @grafana/grafana-frontend-platform
|
/public/app/core/internationalization/ @grafana/grafana-frontend-platform
|
||||||
/e2e/ @grafana/grafana-frontend-platform
|
/e2e/ @grafana/grafana-frontend-platform
|
||||||
/e2e-playwright/cloud-plugins-suite/ @grafana/partner-datasources
|
/e2e-playwright/cloud-plugins-suite/ @grafana/partner-datasources
|
||||||
@@ -440,8 +423,6 @@ i18next.config.ts @grafana/grafana-frontend-platform
|
|||||||
/e2e-playwright/dashboards/PanelSandboxDashboard.json @grafana/plugins-platform-frontend
|
/e2e-playwright/dashboards/PanelSandboxDashboard.json @grafana/plugins-platform-frontend
|
||||||
/e2e-playwright/dashboards/TestDashboard.json @grafana/dashboards-squad @grafana/grafana-search-navigate-organise
|
/e2e-playwright/dashboards/TestDashboard.json @grafana/dashboards-squad @grafana/grafana-search-navigate-organise
|
||||||
/e2e-playwright/dashboards/TestV2Dashboard.json @grafana/dashboards-squad
|
/e2e-playwright/dashboards/TestV2Dashboard.json @grafana/dashboards-squad
|
||||||
/e2e-playwright/dashboards/V2DashWithRepeats.json @grafana/dashboards-squad
|
|
||||||
/e2e-playwright/dashboards/V2DashWithTabRepeats.json @grafana/dashboards-squad
|
|
||||||
/e2e-playwright/dashboards-suite/adhoc-filter-from-panel.spec.ts @grafana/datapro
|
/e2e-playwright/dashboards-suite/adhoc-filter-from-panel.spec.ts @grafana/datapro
|
||||||
/e2e-playwright/dashboards-suite/dashboard-browse-nested.spec.ts @grafana/grafana-search-navigate-organise
|
/e2e-playwright/dashboards-suite/dashboard-browse-nested.spec.ts @grafana/grafana-search-navigate-organise
|
||||||
/e2e-playwright/dashboards-suite/dashboard-browse.spec.ts @grafana/grafana-search-navigate-organise
|
/e2e-playwright/dashboards-suite/dashboard-browse.spec.ts @grafana/grafana-search-navigate-organise
|
||||||
@@ -480,12 +461,22 @@ i18next.config.ts @grafana/grafana-frontend-platform
|
|||||||
/e2e-playwright/fixtures/long-trace-response.json @grafana/observability-traces-and-profiling
|
/e2e-playwright/fixtures/long-trace-response.json @grafana/observability-traces-and-profiling
|
||||||
/e2e-playwright/fixtures/tempo-response.json @grafana/oss-big-tent
|
/e2e-playwright/fixtures/tempo-response.json @grafana/oss-big-tent
|
||||||
/e2e-playwright/fixtures/prometheus-response.json @grafana/datapro
|
/e2e-playwright/fixtures/prometheus-response.json @grafana/datapro
|
||||||
/e2e-playwright/panels-suite/ @grafana/dataviz-squad
|
/e2e-playwright/panels-suite/canvas-scene.spec.ts @grafana/dataviz-squad
|
||||||
/e2e-playwright/panels-suite/dashlist.spec.ts @grafana/grafana-search-navigate-organise
|
/e2e-playwright/panels-suite/dashlist.spec.ts @grafana/grafana-search-navigate-organise
|
||||||
|
/e2e-playwright/panels-suite/datagrid-data-change.spec.ts @grafana/dataviz-squad
|
||||||
|
/e2e-playwright/panels-suite/datagrid-editing-features.spec.ts @grafana/dataviz-squad
|
||||||
/e2e-playwright/panels-suite/frontend-sandbox-panel.spec.ts @grafana/plugins-platform-frontend
|
/e2e-playwright/panels-suite/frontend-sandbox-panel.spec.ts @grafana/plugins-platform-frontend
|
||||||
|
/e2e-playwright/panels-suite/geomap-layer-types.spec.ts @grafana/dataviz-squad
|
||||||
|
/e2e-playwright/panels-suite/geomap-map-controls.spec.ts @grafana/dataviz-squad
|
||||||
|
/e2e-playwright/panels-suite/geomap-spatial-operations-transform.spec.ts @grafana/dataviz-squad
|
||||||
/e2e-playwright/panels-suite/panelEdit_base.spec.ts @grafana/dashboards-squad
|
/e2e-playwright/panels-suite/panelEdit_base.spec.ts @grafana/dashboards-squad
|
||||||
/e2e-playwright/panels-suite/panelEdit_queries.spec.ts @grafana/dashboards-squad
|
/e2e-playwright/panels-suite/panelEdit_queries.spec.ts @grafana/dashboards-squad
|
||||||
/e2e-playwright/panels-suite/panelEdit_transforms.spec.ts @grafana/datapro
|
/e2e-playwright/panels-suite/panelEdit_transforms.spec.ts @grafana/datapro
|
||||||
|
/e2e-playwright/panels-suite/table-footer.spec.ts @grafana/dataviz-squad
|
||||||
|
/e2e-playwright/panels-suite/table-kitchenSink.spec.ts @grafana/dataviz-squad
|
||||||
|
/e2e-playwright/panels-suite/table-markdown.spec.ts @grafana/dataviz-squad
|
||||||
|
/e2e-playwright/panels-suite/table-sparkline.spec.ts @grafana/dataviz-squad
|
||||||
|
/e2e-playwright/panels-suite/table-utils.ts @grafana/dataviz-squad
|
||||||
/e2e-playwright/plugin-e2e/ @grafana/oss-big-tent @grafana/partner-datasources
|
/e2e-playwright/plugin-e2e/ @grafana/oss-big-tent @grafana/partner-datasources
|
||||||
/e2e-playwright/plugin-e2e/plugin-e2e-api-tests/ @grafana/plugins-platform-frontend
|
/e2e-playwright/plugin-e2e/plugin-e2e-api-tests/ @grafana/plugins-platform-frontend
|
||||||
/e2e-playwright/smoke-tests-suite/ @grafana/grafana-frontend-platform
|
/e2e-playwright/smoke-tests-suite/ @grafana/grafana-frontend-platform
|
||||||
@@ -502,7 +493,6 @@ i18next.config.ts @grafana/grafana-frontend-platform
|
|||||||
/e2e-playwright/various-suite/frontend-sandbox-app.spec.ts @grafana/plugins-platform-frontend
|
/e2e-playwright/various-suite/frontend-sandbox-app.spec.ts @grafana/plugins-platform-frontend
|
||||||
/e2e-playwright/various-suite/frontend-sandbox-datasource.spec.ts @grafana/plugins-platform-frontend
|
/e2e-playwright/various-suite/frontend-sandbox-datasource.spec.ts @grafana/plugins-platform-frontend
|
||||||
/e2e-playwright/various-suite/gauge.spec.ts @grafana/dataviz-squad
|
/e2e-playwright/various-suite/gauge.spec.ts @grafana/dataviz-squad
|
||||||
/e2e-playwright/various-suite/grafana-datasource-random-walk.spec.ts @grafana/grafana-frontend-platform
|
|
||||||
/e2e-playwright/various-suite/graph-auto-migrate.spec.ts @grafana/dataviz-squad
|
/e2e-playwright/various-suite/graph-auto-migrate.spec.ts @grafana/dataviz-squad
|
||||||
/e2e-playwright/various-suite/inspect-drawer.spec.ts @grafana/dashboards-squad
|
/e2e-playwright/various-suite/inspect-drawer.spec.ts @grafana/dashboards-squad
|
||||||
/e2e-playwright/various-suite/keybinds.spec.ts @grafana/grafana-frontend-platform
|
/e2e-playwright/various-suite/keybinds.spec.ts @grafana/grafana-frontend-platform
|
||||||
@@ -520,7 +510,7 @@ i18next.config.ts @grafana/grafana-frontend-platform
|
|||||||
/e2e-playwright/various-suite/solo-route.spec.ts @grafana/dashboards-squad
|
/e2e-playwright/various-suite/solo-route.spec.ts @grafana/dashboards-squad
|
||||||
/e2e-playwright/various-suite/trace-view-scrolling.spec.ts @grafana/observability-traces-and-profiling
|
/e2e-playwright/various-suite/trace-view-scrolling.spec.ts @grafana/observability-traces-and-profiling
|
||||||
/e2e-playwright/various-suite/verify-i18n.spec.ts @grafana/grafana-frontend-platform
|
/e2e-playwright/various-suite/verify-i18n.spec.ts @grafana/grafana-frontend-platform
|
||||||
/e2e-playwright/various-suite/visualization-suggestions.spec.ts @grafana/dataviz-squad
|
/e2e-playwright/various-suite/visualization-suggestions.spec.ts @grafana/dashboards-squad
|
||||||
/e2e-playwright/various-suite/perf-test.spec.ts @grafana/grafana-frontend-platform
|
/e2e-playwright/various-suite/perf-test.spec.ts @grafana/grafana-frontend-platform
|
||||||
|
|
||||||
# Packages
|
# Packages
|
||||||
@@ -554,7 +544,6 @@ i18next.config.ts @grafana/grafana-frontend-platform
|
|||||||
/packages/grafana-data/src/geo/ @grafana/dataviz-squad
|
/packages/grafana-data/src/geo/ @grafana/dataviz-squad
|
||||||
/packages/grafana-data/src/monaco/ @grafana/partner-datasources
|
/packages/grafana-data/src/monaco/ @grafana/partner-datasources
|
||||||
/packages/grafana-data/src/panel/ @grafana/dashboards-squad
|
/packages/grafana-data/src/panel/ @grafana/dashboards-squad
|
||||||
/packages/grafana-data/src/panel/suggestions/ @grafana/dataviz-squad
|
|
||||||
/packages/grafana-data/src/query/ @grafana/grafana-datasources-core-services
|
/packages/grafana-data/src/query/ @grafana/grafana-datasources-core-services
|
||||||
/packages/grafana-data/src/rbac/ @grafana/access-squad
|
/packages/grafana-data/src/rbac/ @grafana/access-squad
|
||||||
/packages/grafana-data/src/table/ @grafana/dataviz-squad
|
/packages/grafana-data/src/table/ @grafana/dataviz-squad
|
||||||
@@ -562,8 +551,6 @@ i18next.config.ts @grafana/grafana-frontend-platform
|
|||||||
/packages/grafana-data/src/themes/ @grafana/grafana-frontend-platform
|
/packages/grafana-data/src/themes/ @grafana/grafana-frontend-platform
|
||||||
/packages/grafana-data/src/transformations/ @grafana/datapro
|
/packages/grafana-data/src/transformations/ @grafana/datapro
|
||||||
/packages/grafana-data/src/types/ @grafana/grafana-frontend-platform
|
/packages/grafana-data/src/types/ @grafana/grafana-frontend-platform
|
||||||
/packages/grafana-data/src/types/scopes.ts @grafana/grafana-operator-experience-squad
|
|
||||||
/packages/grafana-data/src/types/suggestions.ts @grafana/dataviz-squad
|
|
||||||
/packages/grafana-data/src/utils/__snapshots__/ @grafanabot
|
/packages/grafana-data/src/utils/__snapshots__/ @grafanabot
|
||||||
/packages/grafana-data/src/utils/anyToNumber.ts @grafana/grafana-frontend-platform
|
/packages/grafana-data/src/utils/anyToNumber.ts @grafana/grafana-frontend-platform
|
||||||
/packages/grafana-data/src/utils/arrayUtils* @grafana/grafana-frontend-platform
|
/packages/grafana-data/src/utils/arrayUtils* @grafana/grafana-frontend-platform
|
||||||
@@ -616,7 +603,7 @@ i18next.config.ts @grafana/grafana-frontend-platform
|
|||||||
/packages/grafana-o11y-ds-frontend/ @grafana/observability-logs
|
/packages/grafana-o11y-ds-frontend/ @grafana/observability-logs
|
||||||
/packages/grafana-o11y-ds-frontend/src/IntervalInput/ @grafana/observability-traces-and-profiling
|
/packages/grafana-o11y-ds-frontend/src/IntervalInput/ @grafana/observability-traces-and-profiling
|
||||||
/packages/grafana-o11y-ds-frontend/src/NodeGraph/ @grafana/observability-traces-and-profiling
|
/packages/grafana-o11y-ds-frontend/src/NodeGraph/ @grafana/observability-traces-and-profiling
|
||||||
/packages/grafana-o11y-ds-frontend/src/pyroscope/ @grafana/oss-big-tent @grafana/observability-traces-and-profiling
|
/packages/grafana-o11y-ds-frontend/src/pyroscope/ @grafana/observability-traces-and-profiling
|
||||||
/packages/grafana-o11y-ds-frontend/src/SpanBar/ @grafana/oss-big-tent @grafana/observability-traces-and-profiling
|
/packages/grafana-o11y-ds-frontend/src/SpanBar/ @grafana/oss-big-tent @grafana/observability-traces-and-profiling
|
||||||
/packages/grafana-o11y-ds-frontend/src/TraceToLogs/ @grafana/oss-big-tent @grafana/observability-traces-and-profiling
|
/packages/grafana-o11y-ds-frontend/src/TraceToLogs/ @grafana/oss-big-tent @grafana/observability-traces-and-profiling
|
||||||
/packages/grafana-o11y-ds-frontend/src/TraceToMetrics/ @grafana/oss-big-tent @grafana/observability-traces-and-profiling
|
/packages/grafana-o11y-ds-frontend/src/TraceToMetrics/ @grafana/oss-big-tent @grafana/observability-traces-and-profiling
|
||||||
@@ -637,7 +624,6 @@ i18next.config.ts @grafana/grafana-frontend-platform
|
|||||||
/packages/grafana-runtime/rollup.config.ts @grafana/grafana-frontend-platform
|
/packages/grafana-runtime/rollup.config.ts @grafana/grafana-frontend-platform
|
||||||
/packages/grafana-runtime/src/index.ts @grafana/grafana-frontend-platform @grafana/plugins-platform-frontend
|
/packages/grafana-runtime/src/index.ts @grafana/grafana-frontend-platform @grafana/plugins-platform-frontend
|
||||||
/packages/grafana-runtime/src/internal/index.ts @grafana/grafana-frontend-platform @grafana/plugins-platform-frontend
|
/packages/grafana-runtime/src/internal/index.ts @grafana/grafana-frontend-platform @grafana/plugins-platform-frontend
|
||||||
/packages/grafana-runtime/src/internal/openFeature @grafana/grafana-frontend-platform
|
|
||||||
/packages/grafana-runtime/src/unstable.ts @grafana/grafana-frontend-platform @grafana/plugins-platform-frontend
|
/packages/grafana-runtime/src/unstable.ts @grafana/grafana-frontend-platform @grafana/plugins-platform-frontend
|
||||||
/packages/grafana-runtime/tsconfig.build.json @grafana/grafana-frontend-platform
|
/packages/grafana-runtime/tsconfig.build.json @grafana/grafana-frontend-platform
|
||||||
/packages/grafana-runtime/tsconfig.json @grafana/grafana-frontend-platform
|
/packages/grafana-runtime/tsconfig.json @grafana/grafana-frontend-platform
|
||||||
@@ -692,9 +678,10 @@ i18next.config.ts @grafana/grafana-frontend-platform
|
|||||||
/packages/grafana-schema/src/**/gauge @grafana/dataviz-squad
|
/packages/grafana-schema/src/**/gauge @grafana/dataviz-squad
|
||||||
/packages/grafana-schema/src/**/geomap @grafana/dataviz-squad
|
/packages/grafana-schema/src/**/geomap @grafana/dataviz-squad
|
||||||
/packages/grafana-schema/src/**/googlecloudmonitoring @grafana/partner-datasources
|
/packages/grafana-schema/src/**/googlecloudmonitoring @grafana/partner-datasources
|
||||||
/packages/grafana-schema/src/**/grafanapyroscope @grafana/oss-big-tent
|
/packages/grafana-schema/src/**/grafanapyroscope @grafana/observability-traces-and-profiling
|
||||||
/packages/grafana-schema/src/**/heatmap @grafana/dataviz-squad
|
/packages/grafana-schema/src/**/heatmap @grafana/dataviz-squad
|
||||||
/packages/grafana-schema/src/**/histogram @grafana/dataviz-squad
|
/packages/grafana-schema/src/**/histogram @grafana/dataviz-squad
|
||||||
|
/packages/grafana-schema/src/**/librarypanel @grafana/sharing-squad
|
||||||
/packages/grafana-schema/src/**/logs @grafana/observability-logs
|
/packages/grafana-schema/src/**/logs @grafana/observability-logs
|
||||||
/packages/grafana-schema/src/**/logsnew @grafana/observability-logs
|
/packages/grafana-schema/src/**/logsnew @grafana/observability-logs
|
||||||
/packages/grafana-schema/src/**/loki @grafana/oss-big-tent @grafana/observability-logs
|
/packages/grafana-schema/src/**/loki @grafana/oss-big-tent @grafana/observability-logs
|
||||||
@@ -721,11 +708,10 @@ i18next.config.ts @grafana/grafana-frontend-platform
|
|||||||
/packages/grafana-ui/src/components/BarGauge/ @grafana/dataviz-squad
|
/packages/grafana-ui/src/components/BarGauge/ @grafana/dataviz-squad
|
||||||
/packages/grafana-ui/src/components/DataLinks/ @grafana/dataviz-squad
|
/packages/grafana-ui/src/components/DataLinks/ @grafana/dataviz-squad
|
||||||
/packages/grafana-ui/src/components/Gauge/ @grafana/dataviz-squad
|
/packages/grafana-ui/src/components/Gauge/ @grafana/dataviz-squad
|
||||||
/packages/grafana-ui/src/components/RadialGauge/ @grafana/dataviz-squad
|
|
||||||
/packages/grafana-ui/src/components/PluginSignatureBadge/ @grafana/plugins-platform-frontend
|
/packages/grafana-ui/src/components/PluginSignatureBadge/ @grafana/plugins-platform-frontend
|
||||||
/packages/grafana-ui/src/components/Sparkline/ @grafana/dataviz-squad
|
/packages/grafana-ui/src/components/Sparkline/ @grafana/grafana-frontend-platform @grafana/app-o11y-visualizations
|
||||||
/packages/grafana-ui/src/components/Table/ @grafana/dataviz-squad
|
/packages/grafana-ui/src/components/Table/ @grafana/dataviz-squad
|
||||||
/packages/grafana-ui/src/components/Table/Cells/SparklineCell.tsx @grafana/dataviz-squad
|
/packages/grafana-ui/src/components/Table/Cells/SparklineCell.tsx @grafana/dataviz-squad @grafana/app-o11y-visualizations
|
||||||
/packages/grafana-ui/src/components/uPlot/ @grafana/dataviz-squad
|
/packages/grafana-ui/src/components/uPlot/ @grafana/dataviz-squad
|
||||||
/packages/grafana-ui/src/components/ValuePicker/ @grafana/dataviz-squad
|
/packages/grafana-ui/src/components/ValuePicker/ @grafana/dataviz-squad
|
||||||
/packages/grafana-ui/src/components/VizLayout/ @grafana/dataviz-squad
|
/packages/grafana-ui/src/components/VizLayout/ @grafana/dataviz-squad
|
||||||
@@ -744,18 +730,6 @@ i18next.config.ts @grafana/grafana-frontend-platform
|
|||||||
# @grafana/test-utils
|
# @grafana/test-utils
|
||||||
/packages/grafana-test-utils @grafana/grafana-frontend-platform
|
/packages/grafana-test-utils @grafana/grafana-frontend-platform
|
||||||
|
|
||||||
# @grafana/api-clients
|
|
||||||
/packages/grafana-api-clients/ @grafana/grafana-frontend-platform @grafana/grafana-search-navigate-organise
|
|
||||||
/packages/grafana-api-clients/src/clients/rtkq/advisor/ @grafana/plugins-platform-frontend
|
|
||||||
/packages/grafana-api-clients/src/clients/rtkq/correlations/ @grafana/datapro
|
|
||||||
/packages/grafana-api-clients/src/clients/rtkq/dashboard/ @grafana/dashboards-squad
|
|
||||||
/packages/grafana-api-clients/src/clients/rtkq/folder/ @grafana/grafana-search-navigate-organise
|
|
||||||
/packages/grafana-api-clients/src/clients/rtkq/iam/ @grafana/access-squad @grafana/identity-squad
|
|
||||||
/packages/grafana-api-clients/src/clients/rtkq/logsdrilldown/ @grafana/observability-logs
|
|
||||||
/packages/grafana-api-clients/src/clients/rtkq/preferences/ @grafana/plugins-platform-frontend
|
|
||||||
/packages/grafana-api-clients/src/clients/rtkq/provisioning/ @grafana/grafana-git-ui-sync-team
|
|
||||||
/packages/grafana-api-clients/src/clients/rtkq/shorturl/ @grafana/sharing-squad
|
|
||||||
|
|
||||||
# root files, mostly frontend
|
# root files, mostly frontend
|
||||||
/.browserslistrc @grafana/frontend-ops
|
/.browserslistrc @grafana/frontend-ops
|
||||||
/package.json @grafana/frontend-ops
|
/package.json @grafana/frontend-ops
|
||||||
@@ -806,7 +780,7 @@ playwright.storybook.config.ts @grafana/grafana-frontend-platform
|
|||||||
/public/app/core/components/ColorScale/ @grafana/dataviz-squad
|
/public/app/core/components/ColorScale/ @grafana/dataviz-squad
|
||||||
/public/app/core/components/DynamicImports/ @grafana/grafana-search-navigate-organise
|
/public/app/core/components/DynamicImports/ @grafana/grafana-search-navigate-organise
|
||||||
/public/app/core/components/EmptyListCTA/ @grafana/grafana-frontend-platform
|
/public/app/core/components/EmptyListCTA/ @grafana/grafana-frontend-platform
|
||||||
/public/app/core/components/FolderFilter/ @grafana/grafana-search-navigate-organise
|
/public/app/core/components/FolderFilter/ @grafana/sharing-squad
|
||||||
/public/app/core/components/Footer/ @grafana/grafana-search-navigate-organise
|
/public/app/core/components/Footer/ @grafana/grafana-search-navigate-organise
|
||||||
/public/app/core/components/ForgottenPassword/ @grafana/grafana-search-navigate-organise
|
/public/app/core/components/ForgottenPassword/ @grafana/grafana-search-navigate-organise
|
||||||
/public/app/core/components/Form/ @grafana/grafana-frontend-platform
|
/public/app/core/components/Form/ @grafana/grafana-frontend-platform
|
||||||
@@ -848,6 +822,7 @@ playwright.storybook.config.ts @grafana/grafana-frontend-platform
|
|||||||
/public/app/core/constants.ts @grafana/grafana-frontend-platform
|
/public/app/core/constants.ts @grafana/grafana-frontend-platform
|
||||||
/public/app/core/context/ @grafana/grafana-frontend-platform
|
/public/app/core/context/ @grafana/grafana-frontend-platform
|
||||||
/public/app/core/copy/appNotification.ts @grafana/grafana-search-navigate-organise
|
/public/app/core/copy/appNotification.ts @grafana/grafana-search-navigate-organise
|
||||||
|
/public/app/core/core.ts @grafana/grafana-frontend-platform
|
||||||
/public/app/core/crash/ @grafana/observability-traces-and-profiling
|
/public/app/core/crash/ @grafana/observability-traces-and-profiling
|
||||||
/public/app/core/history/ @grafana/observability-traces-and-profiling
|
/public/app/core/history/ @grafana/observability-traces-and-profiling
|
||||||
/public/app/core/hooks/useBusEvent.ts @grafana/grafana-frontend-platform
|
/public/app/core/hooks/useBusEvent.ts @grafana/grafana-frontend-platform
|
||||||
@@ -895,7 +870,6 @@ playwright.storybook.config.ts @grafana/grafana-frontend-platform
|
|||||||
/public/app/core/utils/accessControl.ts @grafana/identity-access-team
|
/public/app/core/utils/accessControl.ts @grafana/identity-access-team
|
||||||
/public/app/core/utils/applyStateChanges.ts @grafana/dashboards-squad
|
/public/app/core/utils/applyStateChanges.ts @grafana/dashboards-squad
|
||||||
/public/app/core/utils/arrayMove.ts @grafana/grafana-frontend-platform
|
/public/app/core/utils/arrayMove.ts @grafana/grafana-frontend-platform
|
||||||
/public/app/core/utils/isFrontendService.ts @grafana/grafana-frontend-platform
|
|
||||||
/public/app/core/utils/auth.ts @grafana/identity-access-team
|
/public/app/core/utils/auth.ts @grafana/identity-access-team
|
||||||
/public/app/core/utils/browser* @grafana/grafana-frontend-platform
|
/public/app/core/utils/browser* @grafana/grafana-frontend-platform
|
||||||
/public/app/core/utils/colors.ts @grafana/grafana-frontend-platform
|
/public/app/core/utils/colors.ts @grafana/grafana-frontend-platform
|
||||||
@@ -949,15 +923,12 @@ playwright.storybook.config.ts @grafana/grafana-frontend-platform
|
|||||||
/public/app/features/inspector/ @grafana/dashboards-squad
|
/public/app/features/inspector/ @grafana/dashboards-squad
|
||||||
/public/app/features/logs/ @grafana/observability-logs
|
/public/app/features/logs/ @grafana/observability-logs
|
||||||
/public/app/features/live/ @grafana/dashboards-squad
|
/public/app/features/live/ @grafana/dashboards-squad
|
||||||
/public/app/features/stars/ @grafana/grafana-search-navigate-organise
|
|
||||||
/public/app/features/apiserver/ @grafana/grafana-app-platform-squad
|
/public/app/features/apiserver/ @grafana/grafana-app-platform-squad
|
||||||
/public/app/features/manage-dashboards/ @grafana/dashboards-squad
|
/public/app/features/manage-dashboards/ @grafana/dashboards-squad
|
||||||
/public/app/features/migrate-to-cloud @grafana/grafana-operator-experience-squad
|
/public/app/features/migrate-to-cloud @grafana/grafana-operator-experience-squad
|
||||||
/public/app/features/notifications/ @grafana/grafana-search-navigate-organise
|
/public/app/features/notifications/ @grafana/grafana-search-navigate-organise
|
||||||
/public/app/features/org/ @grafana/grafana-search-navigate-organise
|
/public/app/features/org/ @grafana/grafana-search-navigate-organise
|
||||||
/public/app/features/panel/ @grafana/dashboards-squad
|
/public/app/features/panel/ @grafana/dashboards-squad
|
||||||
/public/app/features/panel/components/VizTypePicker/VisualizationSuggestions.tsx @grafana/dataviz-squad
|
|
||||||
/public/app/features/panel/suggestions/ @grafana/dataviz-squad
|
|
||||||
/public/app/features/playlist/ @grafana/dashboards-squad
|
/public/app/features/playlist/ @grafana/dashboards-squad
|
||||||
/public/app/features/plugins/ @grafana/plugins-platform-frontend
|
/public/app/features/plugins/ @grafana/plugins-platform-frontend
|
||||||
/public/app/features/profile/ @grafana/grafana-frontend-platform
|
/public/app/features/profile/ @grafana/grafana-frontend-platform
|
||||||
@@ -969,14 +940,13 @@ playwright.storybook.config.ts @grafana/grafana-frontend-platform
|
|||||||
/public/app/features/serviceaccounts/ @grafana/identity-squad
|
/public/app/features/serviceaccounts/ @grafana/identity-squad
|
||||||
/public/app/features/teams/ @grafana/access-squad
|
/public/app/features/teams/ @grafana/access-squad
|
||||||
/public/app/features/templating/ @grafana/dashboards-squad
|
/public/app/features/templating/ @grafana/dashboards-squad
|
||||||
/public/app/features/theme-playground/ @grafana/grafana-frontend-platform
|
|
||||||
/public/app/features/trails/ @grafana/observability-metrics
|
/public/app/features/trails/ @grafana/observability-metrics
|
||||||
/public/app/features/transformers/ @grafana/datapro
|
/public/app/features/transformers/ @grafana/datapro
|
||||||
/public/app/features/transformers/timeSeriesTable/ @grafana/dataviz-squad @grafana/app-o11y-visualizations
|
/public/app/features/transformers/timeSeriesTable/ @grafana/dataviz-squad @grafana/app-o11y-visualizations
|
||||||
/public/app/features/users/ @grafana/access-squad
|
/public/app/features/users/ @grafana/access-squad
|
||||||
/public/app/features/variables/ @grafana/dashboards-squad
|
/public/app/features/variables/ @grafana/dashboards-squad
|
||||||
|
/public/app/features/preferences/ @grafana/grafana-frontend-platform
|
||||||
/public/app/features/bookmarks/ @grafana/grafana-search-navigate-organise
|
/public/app/features/bookmarks/ @grafana/grafana-search-navigate-organise
|
||||||
/public/app/plugins/panel/* @grafana/dataviz-squad
|
|
||||||
/public/app/plugins/panel/alertlist/ @grafana/alerting-frontend
|
/public/app/plugins/panel/alertlist/ @grafana/alerting-frontend
|
||||||
/public/app/plugins/panel/annolist/ @grafana/dashboards-squad
|
/public/app/plugins/panel/annolist/ @grafana/dashboards-squad
|
||||||
/public/app/plugins/panel/barchart/ @grafana/dataviz-squad
|
/public/app/plugins/panel/barchart/ @grafana/dataviz-squad
|
||||||
@@ -996,7 +966,7 @@ playwright.storybook.config.ts @grafana/grafana-frontend-platform
|
|||||||
/public/app/plugins/panel/state-timeline/ @grafana/dataviz-squad
|
/public/app/plugins/panel/state-timeline/ @grafana/dataviz-squad
|
||||||
/public/app/plugins/panel/status-history/ @grafana/dataviz-squad
|
/public/app/plugins/panel/status-history/ @grafana/dataviz-squad
|
||||||
/public/app/plugins/panel/table/ @grafana/dataviz-squad
|
/public/app/plugins/panel/table/ @grafana/dataviz-squad
|
||||||
/public/app/plugins/panel/table/cells/SparklineCellOptionsEditor.tsx @grafana/dataviz-squad
|
/public/app/plugins/panel/table/cells/SparklineCellOptionsEditor.tsx @grafana/dataviz-squad @grafana/app-o11y-visualizations
|
||||||
/public/app/plugins/panel/timeseries/ @grafana/dataviz-squad
|
/public/app/plugins/panel/timeseries/ @grafana/dataviz-squad
|
||||||
/public/app/plugins/panel/trend/ @grafana/dataviz-squad
|
/public/app/plugins/panel/trend/ @grafana/dataviz-squad
|
||||||
/public/app/plugins/panel/geomap/ @grafana/dataviz-squad
|
/public/app/plugins/panel/geomap/ @grafana/dataviz-squad
|
||||||
@@ -1070,14 +1040,13 @@ playwright.storybook.config.ts @grafana/grafana-frontend-platform
|
|||||||
/scripts/trigger_windows_build.sh @grafana/grafana-developer-enablement-squad
|
/scripts/trigger_windows_build.sh @grafana/grafana-developer-enablement-squad
|
||||||
/scripts/cleanup-husky.sh @grafana/frontend-ops
|
/scripts/cleanup-husky.sh @grafana/frontend-ops
|
||||||
/scripts/verify-repo-update/ @grafana/grafana-developer-enablement-squad
|
/scripts/verify-repo-update/ @grafana/grafana-developer-enablement-squad
|
||||||
|
/scripts/generate-rtk-apis.ts @grafana/grafana-frontend-platform
|
||||||
|
/scripts/process-specs.ts @grafana/grafana-frontend-platform
|
||||||
/scripts/generate-alerting-rtk-apis.ts @grafana/alerting-frontend
|
/scripts/generate-alerting-rtk-apis.ts @grafana/alerting-frontend
|
||||||
/scripts/levitate-parse-json-report.js @grafana/plugins-platform-frontend
|
/scripts/levitate-parse-json-report.js @grafana/plugins-platform-frontend
|
||||||
/scripts/levitate-show-affected-plugins.js @grafana/plugins-platform-frontend
|
/scripts/levitate-show-affected-plugins.js @grafana/plugins-platform-frontend
|
||||||
/scripts/codemods/explicit-barrel-imports.cjs @grafana/frontend-ops
|
/scripts/codemods/explicit-barrel-imports.cjs @grafana/frontend-ops
|
||||||
|
/scripts/rtk-client-generator/ @grafana/grafana-search-navigate-organise
|
||||||
/scripts/codeowners-manifest/ @grafana/dataviz-squad
|
|
||||||
/scripts/test-coverage-by-codeowner.js @grafana/dataviz-squad
|
|
||||||
/jest.config.codeowner.js @grafana/dataviz-squad
|
|
||||||
|
|
||||||
/scripts/**/generate-transformations* @grafana/datapro
|
/scripts/**/generate-transformations* @grafana/datapro
|
||||||
/scripts/webpack/ @grafana/frontend-ops
|
/scripts/webpack/ @grafana/frontend-ops
|
||||||
@@ -1106,15 +1075,14 @@ eslint-suppressions.json @grafanabot
|
|||||||
/public/app/plugins/datasource/prometheus/ @grafana/oss-big-tent
|
/public/app/plugins/datasource/prometheus/ @grafana/oss-big-tent
|
||||||
/public/app/plugins/datasource/cloud-monitoring/ @grafana/partner-datasources
|
/public/app/plugins/datasource/cloud-monitoring/ @grafana/partner-datasources
|
||||||
/public/app/plugins/datasource/zipkin/ @grafana/oss-big-tent
|
/public/app/plugins/datasource/zipkin/ @grafana/oss-big-tent
|
||||||
/public/app/plugins/datasource/tempo/ @grafana/oss-big-tent
|
/public/app/plugins/datasource/tempo/ @grafana/oss-big-tent @grafana/observability-traces-and-profiling
|
||||||
/public/app/plugins/datasource/grafana-pyroscope-datasource/ @grafana/oss-big-tent
|
/public/app/plugins/datasource/grafana-pyroscope-datasource/ @grafana/observability-traces-and-profiling
|
||||||
/public/app/plugins/datasource/parca/ @grafana/oss-big-tent
|
/public/app/plugins/datasource/parca/ @grafana/oss-big-tent
|
||||||
/public/app/plugins/datasource/alertmanager/ @grafana/alerting-squad
|
/public/app/plugins/datasource/alertmanager/ @grafana/alerting-squad
|
||||||
|
|
||||||
# Grafana Sharing Squad
|
# Grafana Sharing Squad
|
||||||
/public/app/features/dashboard-scene/sharing/ @grafana/sharing-squad
|
/public/app/features/dashboard-scene/sharing/ @grafana/sharing-squad
|
||||||
/public/app/features/dashboard/components/ShareModal/ @grafana/sharing-squad
|
/public/app/features/dashboard/components/ShareModal/ @grafana/sharing-squad
|
||||||
/public/app/features/dashboard/dashgrid/DashboardLibrary/ @grafana/sharing-squad
|
|
||||||
/public/app/features/manage-dashboards/components/SnapshotListTable.tsx @grafana/sharing-squad
|
/public/app/features/manage-dashboards/components/SnapshotListTable.tsx @grafana/sharing-squad
|
||||||
/pkg/services/dashboardsnapshots/ @grafana/sharing-squad
|
/pkg/services/dashboardsnapshots/ @grafana/sharing-squad
|
||||||
/public/app/features/explore/QueryLibrary/ @grafana/sharing-squad
|
/public/app/features/explore/QueryLibrary/ @grafana/sharing-squad
|
||||||
@@ -1185,7 +1153,6 @@ embed.go @grafana/grafana-as-code
|
|||||||
/pkg/registry/ @grafana/grafana-as-code
|
/pkg/registry/ @grafana/grafana-as-code
|
||||||
/pkg/registry/apis/ @grafana/grafana-app-platform-squad
|
/pkg/registry/apis/ @grafana/grafana-app-platform-squad
|
||||||
/pkg/registry/apis/folders @grafana/grafana-search-and-storage
|
/pkg/registry/apis/folders @grafana/grafana-search-and-storage
|
||||||
/pkg/registry/apis/datasource @grafana/grafana-datasources-core-services
|
|
||||||
/pkg/registry/apis/query @grafana/grafana-datasources-core-services
|
/pkg/registry/apis/query @grafana/grafana-datasources-core-services
|
||||||
/pkg/registry/apis/secret @grafana/grafana-operator-experience-squad
|
/pkg/registry/apis/secret @grafana/grafana-operator-experience-squad
|
||||||
/pkg/registry/apis/userstorage @grafana/grafana-app-platform-squad @grafana/plugins-platform-backend
|
/pkg/registry/apis/userstorage @grafana/grafana-app-platform-squad @grafana/plugins-platform-backend
|
||||||
@@ -1289,7 +1256,6 @@ embed.go @grafana/grafana-as-code
|
|||||||
/.github/workflows/changelog.yml @zserge
|
/.github/workflows/changelog.yml @zserge
|
||||||
/.github/workflows/shellcheck.yml @grafana/grafana-developer-enablement-squad
|
/.github/workflows/shellcheck.yml @grafana/grafana-developer-enablement-squad
|
||||||
/.github/workflows/release-build.yml @grafana/grafana-developer-enablement-squad
|
/.github/workflows/release-build.yml @grafana/grafana-developer-enablement-squad
|
||||||
/.github/workflows/cleanup-branches.yml @grafana/grafana-developer-enablement-squad
|
|
||||||
/.github/workflows/publish-artifact.yml @grafana/grafana-developer-enablement-squad
|
/.github/workflows/publish-artifact.yml @grafana/grafana-developer-enablement-squad
|
||||||
/.github/actions/changelog @zserge
|
/.github/actions/changelog @zserge
|
||||||
/.github/workflows/swagger-gen.yml @grafana/grafana-backend-group
|
/.github/workflows/swagger-gen.yml @grafana/grafana-backend-group
|
||||||
@@ -1299,15 +1265,10 @@ embed.go @grafana/grafana-as-code
|
|||||||
/.github/workflows/pr-e2e-tests.yml @grafana/grafana-developer-enablement-squad
|
/.github/workflows/pr-e2e-tests.yml @grafana/grafana-developer-enablement-squad
|
||||||
/.github/workflows/skye-add-to-project.yml @grafana/grafana-frontend-platform
|
/.github/workflows/skye-add-to-project.yml @grafana/grafana-frontend-platform
|
||||||
/.github/workflows/frontend-perf-tests.yaml @grafana/grafana-frontend-platform
|
/.github/workflows/frontend-perf-tests.yaml @grafana/grafana-frontend-platform
|
||||||
/.github/workflows/release-npm.yml @grafana/grafana-frontend-platform
|
|
||||||
/.github/workflows/scripts/determine-npm-tag.sh @grafana/grafana-frontend-platform
|
|
||||||
/.github/workflows/scripts/validate-commit-in-head.sh @grafana/grafana-frontend-platform
|
|
||||||
/.github/zizmor.yml @grafana/grafana-developer-enablement-squad
|
/.github/zizmor.yml @grafana/grafana-developer-enablement-squad
|
||||||
/.github/license_finder.yaml @bergquist
|
/.github/license_finder.yaml @bergquist
|
||||||
/.github/actionlint.yaml @grafana/grafana-developer-enablement-squad
|
/.github/actionlint.yaml @grafana/grafana-developer-enablement-squad
|
||||||
/.github/workflows/pr-test-docker.yml @grafana/grafana-developer-enablement-squad
|
/.github/workflows/pr-test-docker.yml @grafana/grafana-developer-enablement-squad
|
||||||
/.github/workflows/update-schema-types.yml @grafana/plugins-platform-frontend
|
|
||||||
/.github/workflows/defaults-ini-docs-reminder.yml @grafana/docs-tooling @jtvdez
|
|
||||||
|
|
||||||
# Generated files not requiring owner approval
|
# Generated files not requiring owner approval
|
||||||
/packages/grafana-data/src/types/featureToggles.gen.ts @grafanabot
|
/packages/grafana-data/src/types/featureToggles.gen.ts @grafanabot
|
||||||
|
|||||||
8
.github/actions/change-detection/action.yml
vendored
8
.github/actions/change-detection/action.yml
vendored
@@ -31,9 +31,6 @@ outputs:
|
|||||||
dockerfile:
|
dockerfile:
|
||||||
description: Whether the dockerfile or self have changed in any way
|
description: Whether the dockerfile or self have changed in any way
|
||||||
value: ${{ steps.changed-files.outputs.dockerfile_any_changed || 'true' }}
|
value: ${{ steps.changed-files.outputs.dockerfile_any_changed || 'true' }}
|
||||||
devenv:
|
|
||||||
description: Whether the devenv or self have changed in any way
|
|
||||||
value: ${{ steps.changed-files.outputs.devenv_any_changed || 'true' }}
|
|
||||||
runs:
|
runs:
|
||||||
using: composite
|
using: composite
|
||||||
steps:
|
steps:
|
||||||
@@ -139,9 +136,6 @@ runs:
|
|||||||
- '.vale.ini'
|
- '.vale.ini'
|
||||||
- '.github/actions/change-detection/**'
|
- '.github/actions/change-detection/**'
|
||||||
- '${{ inputs.self }}'
|
- '${{ inputs.self }}'
|
||||||
devenv:
|
|
||||||
- 'devenv/**'
|
|
||||||
- '${{ inputs.self }}'
|
|
||||||
- name: Print all change groups
|
- name: Print all change groups
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
@@ -163,5 +157,3 @@ runs:
|
|||||||
echo " --> ${{ steps.changed-files.outputs.docs_all_changed_files }}"
|
echo " --> ${{ steps.changed-files.outputs.docs_all_changed_files }}"
|
||||||
echo "Dockerfile: ${{ steps.changed-files.outputs.dockerfile_any_changed || 'true' }}"
|
echo "Dockerfile: ${{ steps.changed-files.outputs.dockerfile_any_changed || 'true' }}"
|
||||||
echo " --> ${{ steps.changed-files.outputs.dockerfile_all_changed_files }}"
|
echo " --> ${{ steps.changed-files.outputs.dockerfile_all_changed_files }}"
|
||||||
echo "devenv: ${{ steps.changed-files.outputs.devenv_any_changed || 'true' }}"
|
|
||||||
echo " --> ${{ steps.changed-files.outputs.devenv_all_changed_files }}"
|
|
||||||
|
|||||||
48
.github/actions/setup-enterprise/action.yml
vendored
48
.github/actions/setup-enterprise/action.yml
vendored
@@ -33,48 +33,16 @@ runs:
|
|||||||
env:
|
env:
|
||||||
GH_TOKEN: ${{ steps.generate_token.outputs.token }}
|
GH_TOKEN: ${{ steps.generate_token.outputs.token }}
|
||||||
run: |
|
run: |
|
||||||
RETRIES="5"
|
git clone https://x-access-token:${GH_TOKEN}@github.com/grafana/grafana-enterprise.git ../grafana-enterprise;
|
||||||
|
|
||||||
for i in $(seq 1 $RETRIES); do
|
|
||||||
echo "Attempt $i to clone..."
|
|
||||||
|
|
||||||
if git clone https://x-access-token:${GH_TOKEN}@github.com/grafana/grafana-enterprise.git ../grafana-enterprise; then
|
|
||||||
echo "Clone succeeded on attempt $i"
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ $i -eq $RETRIES ]; then
|
|
||||||
echo "Clone failed after $RETRIES attempts, failing pipeline."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
sleep "$i"
|
|
||||||
done
|
|
||||||
|
|
||||||
cd ../grafana-enterprise
|
cd ../grafana-enterprise
|
||||||
|
|
||||||
for i in $(seq 1 $RETRIES); do
|
if git checkout ${GITHUB_HEAD_REF}; then
|
||||||
echo "Attempt $i to checkout..."
|
echo "checked out ${GITHUB_HEAD_REF}"
|
||||||
|
elif git checkout ${GITHUB_BASE_REF}; then
|
||||||
if git checkout ${GITHUB_HEAD_REF}; then
|
echo "checked out ${GITHUB_BASE_REF}"
|
||||||
echo "checked out ${GITHUB_HEAD_REF}"
|
else
|
||||||
elif git checkout ${GITHUB_BASE_REF}; then
|
git checkout main
|
||||||
echo "checked out ${GITHUB_BASE_REF}"
|
fi
|
||||||
else
|
|
||||||
git checkout main
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ $? -eq 0 ]; then
|
|
||||||
echo "Checkout succeeded, breaking retry loop"
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ $i -eq $RETRIES ]; then
|
|
||||||
echo "Checkout failed after $RETRIES attempts, failing pipeline."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
sleep "$i"
|
|
||||||
done
|
|
||||||
|
|
||||||
QUIET=1 ./build.sh
|
QUIET=1 ./build.sh
|
||||||
|
|||||||
10
.github/commands.json
vendored
10
.github/commands.json
vendored
@@ -144,7 +144,7 @@
|
|||||||
"name": "datasource/grafana-pyroscope",
|
"name": "datasource/grafana-pyroscope",
|
||||||
"action": "addToProject",
|
"action": "addToProject",
|
||||||
"addToProject": {
|
"addToProject": {
|
||||||
"url": "https://github.com/orgs/grafana/projects/457"
|
"url": "https://github.com/orgs/grafana/projects/221"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -1226,13 +1226,5 @@
|
|||||||
"addToProject": {
|
"addToProject": {
|
||||||
"url": "https://github.com/orgs/grafana/projects/69"
|
"url": "https://github.com/orgs/grafana/projects/69"
|
||||||
}
|
}
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "label",
|
|
||||||
"name": "area/suggestions",
|
|
||||||
"action": "addToProject",
|
|
||||||
"addToProject": {
|
|
||||||
"url": "https://github.com/orgs/grafana/projects/56"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
45
.github/dependabot.yml
vendored
45
.github/dependabot.yml
vendored
@@ -1,65 +1,32 @@
|
|||||||
version: 2
|
version: 2
|
||||||
updates:
|
updates:
|
||||||
- package-ecosystem: "github-actions"
|
- package-ecosystem: "github-actions"
|
||||||
commit-message:
|
|
||||||
prefix: deps(actions)
|
|
||||||
directory: "/"
|
directory: "/"
|
||||||
schedule:
|
schedule:
|
||||||
interval: "daily"
|
interval: "daily"
|
||||||
- package-ecosystem: "gomod"
|
- package-ecosystem: "gomod"
|
||||||
commit-message:
|
|
||||||
prefix: deps(go)
|
|
||||||
directories:
|
directories:
|
||||||
- "/"
|
- "/"
|
||||||
- "/apps/advisor"
|
|
||||||
- "/apps/alerting/alertenrichment"
|
|
||||||
- "/apps/alerting/notifications"
|
|
||||||
- "/apps/alerting/rules"
|
|
||||||
- "/apps/correlations"
|
|
||||||
- "/apps/dashboard"
|
|
||||||
- "/apps/folder"
|
|
||||||
- "/apps/iam"
|
|
||||||
- "/apps/investigations"
|
|
||||||
- "/apps/playlist"
|
- "/apps/playlist"
|
||||||
- "/apps/plugins"
|
|
||||||
- "/apps/preferences"
|
|
||||||
- "/apps/provisioning"
|
|
||||||
- "/apps/scope"
|
|
||||||
- "/apps/secret"
|
- "/apps/secret"
|
||||||
- "/apps/shorturl"
|
- "/apps/investigations"
|
||||||
- "/hack"
|
|
||||||
- "/pkg/aggregator"
|
- "/pkg/aggregator"
|
||||||
- "/pkg/apimachinery"
|
- "/pkg/apimachinery"
|
||||||
|
- "/pkg/apis/folder"
|
||||||
- "/pkg/apiserver"
|
- "/pkg/apiserver"
|
||||||
- "/pkg/build"
|
- "/pkg/build"
|
||||||
- "/pkg/build/wire"
|
- "/pkg/build/wire"
|
||||||
- "/pkg/codegen"
|
|
||||||
- "/pkg/plugins/codegen"
|
|
||||||
- "/pkg/promlib"
|
- "/pkg/promlib"
|
||||||
- "/pkg/semconv"
|
- "/pkg/semconv"
|
||||||
|
- "/pkg/storage/unified/apistore"
|
||||||
|
- "/pkg/storage/unified/resource"
|
||||||
- "/pkg/util/xorm"
|
- "/pkg/util/xorm"
|
||||||
- "/scripts/go-workspace"
|
|
||||||
- "/scripts/modowners"
|
|
||||||
schedule:
|
schedule:
|
||||||
interval: "daily"
|
interval: "daily"
|
||||||
time: "02:00"
|
time: "02:00"
|
||||||
timezone: Etc/UTC
|
timezone: Etc/UTC
|
||||||
open-pull-requests-limit: 20
|
open-pull-requests-limit: 10
|
||||||
# group some updates together for easier review
|
|
||||||
groups:
|
|
||||||
go.opentelemetry.io:
|
|
||||||
patterns:
|
|
||||||
- "go.opentelemetry.io/*"
|
|
||||||
k8s.io:
|
|
||||||
patterns:
|
|
||||||
- "k8s.io/*"
|
|
||||||
aws-sdk-go:
|
|
||||||
patterns:
|
|
||||||
- "github.com/aws/aws-sdk-go*"
|
|
||||||
- "github.com/aws/smithy-go"
|
|
||||||
- package-ecosystem: "docker"
|
- package-ecosystem: "docker"
|
||||||
commit-message:
|
|
||||||
prefix: deps(docker)
|
|
||||||
directories:
|
directories:
|
||||||
- "/"
|
- "/"
|
||||||
- "/packaging/docker/custom"
|
- "/packaging/docker/custom"
|
||||||
@@ -68,4 +35,4 @@ updates:
|
|||||||
interval: "daily"
|
interval: "daily"
|
||||||
time: "02:00"
|
time: "02:00"
|
||||||
timezone: Etc/UTC
|
timezone: Etc/UTC
|
||||||
open-pull-requests-limit: 20
|
open-pull-requests-limit: 10
|
||||||
|
|||||||
10
.github/pr-commands.json
vendored
10
.github/pr-commands.json
vendored
@@ -469,15 +469,5 @@
|
|||||||
"addToProject": {
|
"addToProject": {
|
||||||
"url": "https://github.com/orgs/grafana/projects/190"
|
"url": "https://github.com/orgs/grafana/projects/190"
|
||||||
}
|
}
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "changedfiles",
|
|
||||||
"matches": [
|
|
||||||
"public/app/features/panel/suggestions/**/*",
|
|
||||||
"public/app/plugins/panel/**/suggestions.ts",
|
|
||||||
"packages/grafana-data/src/types/suggestions*"
|
|
||||||
],
|
|
||||||
"action": "updateLabel",
|
|
||||||
"addLabel": "area/suggestions"
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
7
.github/renovate.json5
vendored
7
.github/renovate.json5
vendored
@@ -1,9 +1,6 @@
|
|||||||
{
|
{
|
||||||
extends: ["config:recommended"],
|
extends: ["config:recommended"],
|
||||||
enabledManagers: ["npm", "docker-compose"],
|
enabledManagers: ["npm"],
|
||||||
ignorePresets: [
|
|
||||||
"github>grafana/grafana-renovate-config//presets/labels",
|
|
||||||
],
|
|
||||||
ignoreDeps: [
|
ignoreDeps: [
|
||||||
// ignoring these until we can upgrade to react 19
|
// ignoring these until we can upgrade to react 19
|
||||||
// see epic here: https://github.com/grafana/grafana/issues/98813
|
// see epic here: https://github.com/grafana/grafana/issues/98813
|
||||||
@@ -26,7 +23,7 @@
|
|||||||
"@types/slate-react", // we don't want to continue using this on the long run, use Monaco editor instead of Slate
|
"@types/slate-react", // we don't want to continue using this on the long run, use Monaco editor instead of Slate
|
||||||
"@types/slate", // we don't want to continue using this on the long run, use Monaco editor instead of Slate
|
"@types/slate", // we don't want to continue using this on the long run, use Monaco editor instead of Slate
|
||||||
],
|
],
|
||||||
includePaths: ["package.json", "packages/**", "public/app/plugins/**", "devenv/frontend-service/docker-compose.yaml"],
|
includePaths: ["package.json", "packages/**", "public/app/plugins/**"],
|
||||||
ignorePaths: ["emails/**", "**/mocks/**"],
|
ignorePaths: ["emails/**", "**/mocks/**"],
|
||||||
labels: ["area/frontend", "dependencies", "no-changelog"],
|
labels: ["area/frontend", "dependencies", "no-changelog"],
|
||||||
postUpdateOptions: ["yarnDedupeHighest"],
|
postUpdateOptions: ["yarnDedupeHighest"],
|
||||||
|
|||||||
4
.github/workflows/actionlint.yml
vendored
4
.github/workflows/actionlint.yml
vendored
@@ -34,7 +34,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8
|
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
@@ -54,7 +54,7 @@ jobs:
|
|||||||
- name: Upload to GitHub security events
|
- name: Upload to GitHub security events
|
||||||
if: success() || failure()
|
if: success() || failure()
|
||||||
# If there are security problems, GitHub will automatically comment on the PR for us.
|
# If there are security problems, GitHub will automatically comment on the PR for us.
|
||||||
uses: github/codeql-action/upload-sarif@f443b600d91635bebf5b0d9ebc620189c0d6fba5 # v4.30.8
|
uses: github/codeql-action/upload-sarif@28deaeda66b76a05916b6923827895f2b14ab387 # v3.28.16
|
||||||
with:
|
with:
|
||||||
sarif_file: results.sarif
|
sarif_file: results.sarif
|
||||||
category: actionlint
|
category: actionlint
|
||||||
|
|||||||
6
.github/workflows/add-to-whats-new.yml
vendored
6
.github/workflows/add-to-whats-new.yml
vendored
@@ -1,11 +1,11 @@
|
|||||||
name: Add comment about adding a What's new note for either what's new or breaking changes
|
name: Add comment about adding a What's new note
|
||||||
on:
|
on:
|
||||||
pull_request:
|
pull_request:
|
||||||
types: [labeled]
|
types: [labeled]
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
add-comment:
|
add-comment:
|
||||||
if: ${{ ! github.event.pull_request.head.repo.fork && (contains(github.event.pull_request.labels.*.name, 'add to what''s new') || contains(github.event.pull_request.labels.*.name, 'breaking change') || contains(github.event.pull_request.labels.*.name, 'levitate breaking change')) }}
|
if: ${{ ! github.event.pull_request.head.repo.fork && contains(github.event.pull_request.labels.*.name, 'add to what''s new') }}
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
permissions:
|
permissions:
|
||||||
pull-requests: write
|
pull-requests: write
|
||||||
@@ -13,4 +13,4 @@ jobs:
|
|||||||
- uses: marocchino/sticky-pull-request-comment@773744901bac0e8cbb5a0dc842800d45e9b2b405 # v2.9.4
|
- uses: marocchino/sticky-pull-request-comment@773744901bac0e8cbb5a0dc842800d45e9b2b405 # v2.9.4
|
||||||
with:
|
with:
|
||||||
message: |
|
message: |
|
||||||
Since you've added the `What's New` or a breaking change label, consider drafting a [What's new note](https://admin.grafana.com/content-admin/#/collections/whats-new/new) for this feature.
|
Since you've added the `Add to what's new` label, consider drafting a [What's new note](https://admin.grafana.com/content-admin/#/collections/whats-new/new) for this feature.
|
||||||
|
|||||||
4
.github/workflows/alerting-swagger-gen.yml
vendored
4
.github/workflows/alerting-swagger-gen.yml
vendored
@@ -10,12 +10,12 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
fetch-depth: 2
|
fetch-depth: 2
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Set go version
|
- name: Set go version
|
||||||
uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00
|
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5
|
||||||
with:
|
with:
|
||||||
go-version-file: go.mod
|
go-version-file: go.mod
|
||||||
- name: Build swagger
|
- name: Build swagger
|
||||||
|
|||||||
12
.github/workflows/alerting-update-module.yml
vendored
12
.github/workflows/alerting-update-module.yml
vendored
@@ -17,7 +17,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4 # 4.2.2
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Check if update branch exists
|
- name: Check if update branch exists
|
||||||
@@ -29,7 +29,7 @@ jobs:
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
- name: Setup Go
|
- name: Setup Go
|
||||||
uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00 # 6.0.0
|
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # 5.5.0
|
||||||
with:
|
with:
|
||||||
"go-version-file": "go.mod"
|
"go-version-file": "go.mod"
|
||||||
|
|
||||||
@@ -60,10 +60,10 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
FROM_COMMIT="${{ steps.current-commit.outputs.from_commit }}"
|
FROM_COMMIT="${{ steps.current-commit.outputs.from_commit }}"
|
||||||
TO_COMMIT="${{ steps.latest-commit.outputs.to_commit }}"
|
TO_COMMIT="${{ steps.latest-commit.outputs.to_commit }}"
|
||||||
|
|
||||||
# Compare just the length of the shorter hash
|
# Compare just the length of the shorter hash
|
||||||
SHORT_TO_COMMIT="${TO_COMMIT:0:${#FROM_COMMIT}}"
|
SHORT_TO_COMMIT="${TO_COMMIT:0:${#FROM_COMMIT}}"
|
||||||
|
|
||||||
if [ "$FROM_COMMIT" = "$SHORT_TO_COMMIT" ]; then
|
if [ "$FROM_COMMIT" = "$SHORT_TO_COMMIT" ]; then
|
||||||
echo "Current version ($FROM_COMMIT) is already at latest ($SHORT_TO_COMMIT). No update needed."
|
echo "Current version ($FROM_COMMIT) is already at latest ($SHORT_TO_COMMIT). No update needed."
|
||||||
exit 0
|
exit 0
|
||||||
@@ -148,7 +148,7 @@ jobs:
|
|||||||
echo "🔗 [View Pull Request]($PR_URL)"
|
echo "🔗 [View Pull Request]($PR_URL)"
|
||||||
} >> "$GITHUB_STEP_SUMMARY"
|
} >> "$GITHUB_STEP_SUMMARY"
|
||||||
- name: Send Slack Message
|
- name: Send Slack Message
|
||||||
uses: grafana/shared-workflows/actions/send-slack-message@send-slack-message/v2.0.4
|
uses: grafana/shared-workflows/actions/send-slack-message@send-slack-message/v2.0.3
|
||||||
with:
|
with:
|
||||||
method: 'chat.postMessage'
|
method: 'chat.postMessage'
|
||||||
# send to alerting-reviews channel
|
# send to alerting-reviews channel
|
||||||
@@ -157,4 +157,4 @@ jobs:
|
|||||||
{
|
{
|
||||||
"channel": "C076RNRRZ2N",
|
"channel": "C076RNRRZ2N",
|
||||||
"text": "Update alerting module in Grafana ${{ steps.create-pr.outputs.pull-request-url }}"
|
"text": "Update alerting module in Grafana ${{ steps.create-pr.outputs.pull-request-url }}"
|
||||||
}
|
}
|
||||||
@@ -12,12 +12,12 @@ jobs:
|
|||||||
contents: read
|
contents: read
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
- name: Setup Node.js
|
- name: Setup Node.js
|
||||||
uses: actions/setup-node@v6
|
uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version-file: '.nvmrc'
|
node-version-file: '.nvmrc'
|
||||||
cache: 'yarn'
|
cache: 'yarn'
|
||||||
|
|||||||
1
.github/workflows/auto-triager/labels.txt
vendored
1
.github/workflows/auto-triager/labels.txt
vendored
@@ -85,7 +85,6 @@ area/scenes
|
|||||||
area/search
|
area/search
|
||||||
area/security
|
area/security
|
||||||
area/streaming
|
area/streaming
|
||||||
area/suggestions
|
|
||||||
area/templating/repeating
|
area/templating/repeating
|
||||||
area/tooltip
|
area/tooltip
|
||||||
area/transformations
|
area/transformations
|
||||||
|
|||||||
14
.github/workflows/backend-code-checks.yml
vendored
14
.github/workflows/backend-code-checks.yml
vendored
@@ -23,7 +23,7 @@ jobs:
|
|||||||
outputs:
|
outputs:
|
||||||
changed: ${{ steps.detect-changes.outputs.backend }}
|
changed: ${{ steps.detect-changes.outputs.backend }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: true # required to get more history in the changed-files action
|
persist-credentials: true # required to get more history in the changed-files action
|
||||||
fetch-depth: 2
|
fetch-depth: 2
|
||||||
@@ -42,20 +42,22 @@ jobs:
|
|||||||
name: Validate Backend Configs
|
name: Validate Backend Configs
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Setup Go
|
- name: Setup Go
|
||||||
uses: actions/setup-go@v6.0.0
|
uses: actions/setup-go@v5.5.0
|
||||||
with:
|
with:
|
||||||
go-version-file: go.mod
|
# Explicitly set Go version to 1.24.1 to ensure consistent OpenAPI spec generation
|
||||||
|
# The crypto/x509 package has additional fields in Go 1.24.1 that affect the generated specs
|
||||||
|
# This ensures the GHAs environment matches what we use in the Drone pipeline
|
||||||
|
go-version: 1.24.1
|
||||||
cache: true
|
cache: true
|
||||||
|
|
||||||
- name: Verify code generation
|
- name: Verify code generation
|
||||||
run: |
|
run: |
|
||||||
CODEGEN_VERIFY=1 make gen-cue
|
CODEGEN_VERIFY=1 make gen-cue
|
||||||
CODEGEN_VERIFY=1 make gen-jsonnet
|
CODEGEN_VERIFY=1 make gen-jsonnet
|
||||||
CODEGEN_VERIFY=1 make gen-apps
|
|
||||||
|
|
||||||
- name: Validate go.mod
|
- name: Validate go.mod
|
||||||
run: go run scripts/modowners/modowners.go check go.mod
|
run: go run scripts/modowners/modowners.go check go.mod
|
||||||
@@ -79,7 +81,7 @@ jobs:
|
|||||||
make swagger-clean && make openapi3-gen
|
make swagger-clean && make openapi3-gen
|
||||||
|
|
||||||
# Check if the generated specs differ from what's in the repository
|
# Check if the generated specs differ from what's in the repository
|
||||||
for f in public/api-merged.json public/openapi3.json public/api-enterprise-spec.json; do git add $f; done
|
for f in public/api-merged.json public/openapi3.json; do git add $f; done
|
||||||
if [ -z "$(git diff --name-only --cached)" ]; then
|
if [ -z "$(git diff --name-only --cached)" ]; then
|
||||||
echo "OpenAPI specs are up to date!"
|
echo "OpenAPI specs are up to date!"
|
||||||
else
|
else
|
||||||
|
|||||||
10
.github/workflows/backend-unit-tests.yml
vendored
10
.github/workflows/backend-unit-tests.yml
vendored
@@ -24,7 +24,7 @@ jobs:
|
|||||||
outputs:
|
outputs:
|
||||||
changed: ${{ steps.detect-changes.outputs.backend }}
|
changed: ${{ steps.detect-changes.outputs.backend }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: true # required to get more history in the changed-files action
|
persist-credentials: true # required to get more history in the changed-files action
|
||||||
fetch-depth: 2
|
fetch-depth: 2
|
||||||
@@ -55,11 +55,11 @@ jobs:
|
|||||||
id-token: write
|
id-token: write
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Setup Go
|
- name: Setup Go
|
||||||
uses: actions/setup-go@v6.0.0
|
uses: actions/setup-go@v5.5.0
|
||||||
with:
|
with:
|
||||||
go-version-file: go.mod
|
go-version-file: go.mod
|
||||||
- name: Run unit tests
|
- name: Run unit tests
|
||||||
@@ -90,11 +90,11 @@ jobs:
|
|||||||
steps:
|
steps:
|
||||||
# Set up repository clone
|
# Set up repository clone
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Setup Go
|
- name: Setup Go
|
||||||
uses: actions/setup-go@v6.0.0
|
uses: actions/setup-go@v5.5.0
|
||||||
with:
|
with:
|
||||||
go-version-file: go.mod
|
go-version-file: go.mod
|
||||||
- name: Setup Enterprise
|
- name: Setup Enterprise
|
||||||
|
|||||||
2
.github/workflows/backport-trigger.yml
vendored
2
.github/workflows/backport-trigger.yml
vendored
@@ -40,7 +40,7 @@ jobs:
|
|||||||
}' "$GITHUB_EVENT_PATH" > /tmp/pr_info.json
|
}' "$GITHUB_EVENT_PATH" > /tmp/pr_info.json
|
||||||
|
|
||||||
- name: Upload artifact
|
- name: Upload artifact
|
||||||
uses: actions/upload-artifact@v5
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: pr_info
|
name: pr_info
|
||||||
path: /tmp/pr_info.json
|
path: /tmp/pr_info.json
|
||||||
|
|||||||
4
.github/workflows/backport-workflow.yml
vendored
4
.github/workflows/backport-workflow.yml
vendored
@@ -36,7 +36,7 @@ jobs:
|
|||||||
private_key: ${{ fromJSON(steps.secrets.outputs.secrets).APP_PEM }}
|
private_key: ${{ fromJSON(steps.secrets.outputs.secrets).APP_PEM }}
|
||||||
|
|
||||||
- name: Download PR info artifact
|
- name: Download PR info artifact
|
||||||
uses: actions/download-artifact@v6
|
uses: actions/download-artifact@v4
|
||||||
id: download-pr-info
|
id: download-pr-info
|
||||||
with:
|
with:
|
||||||
github-token: ${{ github.token }}
|
github-token: ${{ github.token }}
|
||||||
@@ -62,7 +62,7 @@ jobs:
|
|||||||
echo "PR number: $PR_NUMBER"
|
echo "PR number: $PR_NUMBER"
|
||||||
|
|
||||||
- name: Checkout Grafana
|
- name: Checkout Grafana
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
ref: ${{ github.event.repository.default_branch }}
|
ref: ${{ github.event.repository.default_branch }}
|
||||||
fetch-depth: 2
|
fetch-depth: 2
|
||||||
|
|||||||
4
.github/workflows/changelog.yml
vendored
4
.github/workflows/changelog.yml
vendored
@@ -84,7 +84,7 @@ jobs:
|
|||||||
app_id: ${{ vars.DELIVERY_BOT_APP_ID }}
|
app_id: ${{ vars.DELIVERY_BOT_APP_ID }}
|
||||||
private_key: ${{ env.GRAFANA_DELIVERY_BOT_APP_PEM }}
|
private_key: ${{ env.GRAFANA_DELIVERY_BOT_APP_PEM }}
|
||||||
- name: "Checkout Grafana repo"
|
- name: "Checkout Grafana repo"
|
||||||
uses: "actions/checkout@v5"
|
uses: "actions/checkout@v4"
|
||||||
with:
|
with:
|
||||||
ref: main
|
ref: main
|
||||||
sparse-checkout: |
|
sparse-checkout: |
|
||||||
@@ -97,7 +97,7 @@ jobs:
|
|||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
fetch-tags: true
|
fetch-tags: true
|
||||||
- name: Setup nodejs environment
|
- name: Setup nodejs environment
|
||||||
uses: actions/setup-node@v6
|
uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version-file: .nvmrc
|
node-version-file: .nvmrc
|
||||||
- name: "Configure git user"
|
- name: "Configure git user"
|
||||||
|
|||||||
18
.github/workflows/cleanup-branches.yml
vendored
18
.github/workflows/cleanup-branches.yml
vendored
@@ -1,18 +0,0 @@
|
|||||||
name: Clean up orphaned branches
|
|
||||||
on:
|
|
||||||
workflow_dispatch:
|
|
||||||
schedule:
|
|
||||||
- cron: "0 9 * * 1"
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
cleanup-branches:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
permissions:
|
|
||||||
contents: write
|
|
||||||
pull-requests: read
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v5
|
|
||||||
- uses: grafana/shared-workflows/actions/cleanup-branches@cleanup-branches/v0.2.1
|
|
||||||
with:
|
|
||||||
dry-run: true
|
|
||||||
max-date: "1 month ago"
|
|
||||||
2
.github/workflows/codeowners-validator.yml
vendored
2
.github/workflows/codeowners-validator.yml
vendored
@@ -13,7 +13,7 @@ jobs:
|
|||||||
contents: read
|
contents: read
|
||||||
steps:
|
steps:
|
||||||
# Checks-out your repository, which is validated in the next step
|
# Checks-out your repository, which is validated in the next step
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: GitHub CODEOWNERS Validator
|
- name: GitHub CODEOWNERS Validator
|
||||||
|
|||||||
17
.github/workflows/codeql-analysis.yml
vendored
17
.github/workflows/codeql-analysis.yml
vendored
@@ -8,9 +8,7 @@ name: "CodeQL checks"
|
|||||||
on:
|
on:
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches: ['**'] # run on all branches
|
||||||
- main
|
|
||||||
- release-*.*.*
|
|
||||||
paths-ignore:
|
paths-ignore:
|
||||||
- '**/*.cue'
|
- '**/*.cue'
|
||||||
- '**/*.json'
|
- '**/*.json'
|
||||||
@@ -35,7 +33,7 @@ jobs:
|
|||||||
go: ${{ steps.detect-changes.outputs.backend }}
|
go: ${{ steps.detect-changes.outputs.backend }}
|
||||||
actions: 'true'
|
actions: 'true'
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: true # required to get more history in the changed-files action
|
persist-credentials: true # required to get more history in the changed-files action
|
||||||
fetch-depth: 2
|
fetch-depth: 2
|
||||||
@@ -48,7 +46,7 @@ jobs:
|
|||||||
analyze:
|
analyze:
|
||||||
needs: detect-changes
|
needs: detect-changes
|
||||||
name: Analyze
|
name: Analyze
|
||||||
runs-on: ubuntu-x64-large-io
|
runs-on: ubuntu-latest
|
||||||
continue-on-error: true # doesn't block PRs from being merged if this fails
|
continue-on-error: true # doesn't block PRs from being merged if this fails
|
||||||
if: github.repository == 'grafana/grafana'
|
if: github.repository == 'grafana/grafana'
|
||||||
|
|
||||||
@@ -65,7 +63,7 @@ jobs:
|
|||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
if: needs.detect-changes.outputs[matrix.language] == 'true'
|
if: needs.detect-changes.outputs[matrix.language] == 'true'
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
# We must fetch at least the immediate parents so that if this is
|
# We must fetch at least the immediate parents so that if this is
|
||||||
# a pull request then we can checkout the head.
|
# a pull request then we can checkout the head.
|
||||||
@@ -74,15 +72,14 @@ jobs:
|
|||||||
|
|
||||||
- if: matrix.language == 'go' && needs.detect-changes.outputs.go == 'true'
|
- if: matrix.language == 'go' && needs.detect-changes.outputs.go == 'true'
|
||||||
name: Set go version
|
name: Set go version
|
||||||
uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00
|
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5
|
||||||
with:
|
with:
|
||||||
cache: false
|
|
||||||
go-version-file: go.mod
|
go-version-file: go.mod
|
||||||
|
|
||||||
# Initializes the CodeQL tools for scanning.
|
# Initializes the CodeQL tools for scanning.
|
||||||
- name: Initialize CodeQL
|
- name: Initialize CodeQL
|
||||||
if: needs.detect-changes.outputs[matrix.language] == 'true'
|
if: needs.detect-changes.outputs[matrix.language] == 'true'
|
||||||
uses: github/codeql-action/init@v4
|
uses: github/codeql-action/init@v3
|
||||||
with:
|
with:
|
||||||
languages: ${{ matrix.language }}
|
languages: ${{ matrix.language }}
|
||||||
# If you wish to specify custom queries, you can do so here or in a config file.
|
# If you wish to specify custom queries, you can do so here or in a config file.
|
||||||
@@ -97,4 +94,4 @@ jobs:
|
|||||||
make build-go
|
make build-go
|
||||||
|
|
||||||
- name: Perform CodeQL Analysis
|
- name: Perform CodeQL Analysis
|
||||||
uses: github/codeql-action/analyze@v4
|
uses: github/codeql-action/analyze@v3
|
||||||
|
|||||||
2
.github/workflows/commands.yml
vendored
2
.github/workflows/commands.yml
vendored
@@ -53,7 +53,7 @@ jobs:
|
|||||||
private-key: ${{ env.GITHUB_APP_PRIVATE_KEY }}
|
private-key: ${{ env.GITHUB_APP_PRIVATE_KEY }}
|
||||||
|
|
||||||
- name: Checkout Actions
|
- name: Checkout Actions
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4 # v4.2.2
|
||||||
with:
|
with:
|
||||||
repository: "grafana/grafana-github-actions"
|
repository: "grafana/grafana-github-actions"
|
||||||
path: ./actions
|
path: ./actions
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ jobs:
|
|||||||
version: ${{ steps.build_frontend.outputs.version }}
|
version: ${{ steps.build_frontend.outputs.version }}
|
||||||
steps:
|
steps:
|
||||||
- name: checkout
|
- name: checkout
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Verify inputs
|
- name: Verify inputs
|
||||||
@@ -58,13 +58,13 @@ jobs:
|
|||||||
PLUGINS_GRAFANA_API_KEY=core-plugins-build-and-release:PLUGINS_GRAFANA_API_KEY
|
PLUGINS_GRAFANA_API_KEY=core-plugins-build-and-release:PLUGINS_GRAFANA_API_KEY
|
||||||
PLUGINS_GCOM_TOKEN=core-plugins-build-and-release:PLUGINS_GCOM_TOKEN
|
PLUGINS_GCOM_TOKEN=core-plugins-build-and-release:PLUGINS_GCOM_TOKEN
|
||||||
- name: 'Authenticate to Google Cloud'
|
- name: 'Authenticate to Google Cloud'
|
||||||
uses: 'google-github-actions/auth@7c6bc770dae815cd3e89ee6cdf493a5fab2cc093'
|
uses: 'google-github-actions/auth@6fc4af4b145ae7821d527454aa9bd537d1f2dc5f'
|
||||||
with:
|
with:
|
||||||
credentials_json: '${{ env.PLUGINS_GOOGLE_CREDENTIALS }}'
|
credentials_json: '${{ env.PLUGINS_GOOGLE_CREDENTIALS }}'
|
||||||
- name: 'Set up Cloud SDK'
|
- name: 'Set up Cloud SDK'
|
||||||
uses: 'google-github-actions/setup-gcloud@aa5489c8933f4cc7a4f7d45035b3b1440c9c10db'
|
uses: 'google-github-actions/setup-gcloud@aa5489c8933f4cc7a4f7d45035b3b1440c9c10db'
|
||||||
- name: Setup nodejs environment
|
- name: Setup nodejs environment
|
||||||
uses: actions/setup-node@v6
|
uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version-file: .nvmrc
|
node-version-file: .nvmrc
|
||||||
cache: yarn
|
cache: yarn
|
||||||
@@ -101,7 +101,7 @@ jobs:
|
|||||||
echo "has_backend=false" >> "$GITHUB_OUTPUT"
|
echo "has_backend=false" >> "$GITHUB_OUTPUT"
|
||||||
fi
|
fi
|
||||||
- name: Setup golang environment
|
- name: Setup golang environment
|
||||||
uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00
|
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5
|
||||||
if: steps.check_backend.outputs.has_backend == 'true'
|
if: steps.check_backend.outputs.has_backend == 'true'
|
||||||
with:
|
with:
|
||||||
go-version-file: go.mod
|
go-version-file: go.mod
|
||||||
@@ -193,7 +193,7 @@ jobs:
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
- name: store build artifacts
|
- name: store build artifacts
|
||||||
uses: actions/upload-artifact@v5
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: build-artifacts
|
name: build-artifacts
|
||||||
path: ${{ steps.get_dir.outputs.dir }}/ci/packages/*.zip
|
path: ${{ steps.get_dir.outputs.dir }}/ci/packages/*.zip
|
||||||
|
|||||||
2
.github/workflows/create-security-branch.yml
vendored
2
.github/workflows/create-security-branch.yml
vendored
@@ -61,7 +61,7 @@ jobs:
|
|||||||
private_key: ${{ env.GRAFANA_DELIVERY_BOT_APP_PEM }}
|
private_key: ${{ env.GRAFANA_DELIVERY_BOT_APP_PEM }}
|
||||||
|
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
token: ${{ steps.generate_token.outputs.token }}
|
token: ${{ steps.generate_token.outputs.token }}
|
||||||
repository: ${{ inputs.repository }}
|
repository: ${{ inputs.repository }}
|
||||||
|
|||||||
@@ -25,5 +25,4 @@ jobs:
|
|||||||
patch_ref: "${{ github.base_ref }}" # this is the target branch name, Ex: "main"
|
patch_ref: "${{ github.base_ref }}" # this is the target branch name, Ex: "main"
|
||||||
patch_repo: "grafana/grafana-security-patches"
|
patch_repo: "grafana/grafana-security-patches"
|
||||||
patch_prefix: "${{ github.event.pull_request.number }}"
|
patch_prefix: "${{ github.event.pull_request.number }}"
|
||||||
sender: "${{ github.event.pull_request.user.login }}"
|
|
||||||
secrets: inherit # zizmor: ignore[secrets-inherit]
|
secrets: inherit # zizmor: ignore[secrets-inherit]
|
||||||
|
|||||||
24
.github/workflows/defaults-ini-docs-reminder.yml
vendored
24
.github/workflows/defaults-ini-docs-reminder.yml
vendored
@@ -1,24 +0,0 @@
|
|||||||
name: Remind about config documentation updates
|
|
||||||
on:
|
|
||||||
pull_request:
|
|
||||||
types: [opened]
|
|
||||||
paths:
|
|
||||||
- 'conf/defaults.ini'
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
add-comment:
|
|
||||||
if: ${{ ! github.event.pull_request.head.repo.fork }}
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
permissions:
|
|
||||||
pull-requests: write
|
|
||||||
steps:
|
|
||||||
- uses: marocchino/sticky-pull-request-comment@773744901bac0e8cbb5a0dc842800d45e9b2b405 # v2.9.4
|
|
||||||
with:
|
|
||||||
message: |
|
|
||||||
Hi there! 👋 This PR modifies `conf/defaults.ini`.
|
|
||||||
|
|
||||||
If this change introduces user-facing configuration options or modifies existing ones, please remember to update [`docs/sources/setup-grafana/configure-grafana/_index.md`](https://github.com/grafana/grafana/blob/main/docs/sources/setup-grafana/configure-grafana/_index.md).
|
|
||||||
|
|
||||||
If this change is internal-only (experimental flags, internal refactoring, etc.), you can ignore this reminder.
|
|
||||||
|
|
||||||
Questions? Reach out to the #docs channel on Slack.
|
|
||||||
@@ -27,7 +27,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
|
|||||||
@@ -29,12 +29,12 @@ jobs:
|
|||||||
id-token: write
|
id-token: write
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
path: './pr'
|
path: './pr'
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
- uses: actions/setup-node@v6
|
- uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version-file: './pr/.nvmrc'
|
node-version-file: './pr/.nvmrc'
|
||||||
|
|
||||||
@@ -64,7 +64,7 @@ jobs:
|
|||||||
run: zip -r ./pr_built_packages.zip ./packages/**/*.tgz
|
run: zip -r ./pr_built_packages.zip ./packages/**/*.tgz
|
||||||
|
|
||||||
- name: Upload build output as artifact
|
- name: Upload build output as artifact
|
||||||
uses: actions/upload-artifact@v5
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: buildPr
|
name: buildPr
|
||||||
path: './pr/pr_built_packages.zip'
|
path: './pr/pr_built_packages.zip'
|
||||||
@@ -80,13 +80,13 @@ jobs:
|
|||||||
working-directory: './base'
|
working-directory: './base'
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
path: './base'
|
path: './base'
|
||||||
ref: ${{ github.event.pull_request.base.ref }}
|
ref: ${{ github.event.pull_request.base.ref }}
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
- uses: actions/setup-node@v6
|
- uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version-file: './base/.nvmrc'
|
node-version-file: './base/.nvmrc'
|
||||||
|
|
||||||
@@ -116,7 +116,7 @@ jobs:
|
|||||||
run: zip -r ./base_built_packages.zip ./packages/**/*.tgz
|
run: zip -r ./base_built_packages.zip ./packages/**/*.tgz
|
||||||
|
|
||||||
- name: Upload build output as artifact
|
- name: Upload build output as artifact
|
||||||
uses: actions/upload-artifact@v5
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: buildBase
|
name: buildBase
|
||||||
path: './base/base_built_packages.zip'
|
path: './base/base_built_packages.zip'
|
||||||
@@ -132,21 +132,21 @@ jobs:
|
|||||||
id-token: 'write'
|
id-token: 'write'
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
- uses: actions/setup-node@v6
|
- uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version-file: '.nvmrc'
|
node-version-file: '.nvmrc'
|
||||||
|
|
||||||
- name: Get built packages from pr
|
- name: Get built packages from pr
|
||||||
uses: actions/download-artifact@v6
|
uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: buildPr
|
name: buildPr
|
||||||
|
|
||||||
- name: Get built packages from base
|
- name: Get built packages from base
|
||||||
uses: actions/download-artifact@v6
|
uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: buildBase
|
name: buildBase
|
||||||
|
|
||||||
@@ -157,7 +157,7 @@ jobs:
|
|||||||
run: unzip -j base_built_packages.zip -d ./base && rm base_built_packages.zip
|
run: unzip -j base_built_packages.zip -d ./base && rm base_built_packages.zip
|
||||||
|
|
||||||
- id: 'auth'
|
- id: 'auth'
|
||||||
uses: 'google-github-actions/auth@7c6bc770dae815cd3e89ee6cdf493a5fab2cc093'
|
uses: 'google-github-actions/auth@6fc4af4b145ae7821d527454aa9bd537d1f2dc5f'
|
||||||
if: github.event.pull_request.head.repo.full_name == github.repository
|
if: github.event.pull_request.head.repo.full_name == github.repository
|
||||||
with:
|
with:
|
||||||
workload_identity_provider: projects/304398677251/locations/global/workloadIdentityPools/github/providers/github-provider
|
workload_identity_provider: projects/304398677251/locations/global/workloadIdentityPools/github/providers/github-provider
|
||||||
@@ -189,7 +189,7 @@ jobs:
|
|||||||
PR_NUMBER: ${{ github.event.pull_request.number }}
|
PR_NUMBER: ${{ github.event.pull_request.number }}
|
||||||
|
|
||||||
- name: Upload check output as artifact
|
- name: Upload check output as artifact
|
||||||
uses: actions/upload-artifact@v5
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: levitate
|
name: levitate
|
||||||
path: levitate/
|
path: levitate/
|
||||||
@@ -220,17 +220,17 @@ jobs:
|
|||||||
app-id: ${{ env.GITHUB_APP_ID }}
|
app-id: ${{ env.GITHUB_APP_ID }}
|
||||||
private-key: ${{ env.GITHUB_APP_PRIVATE_KEY }}
|
private-key: ${{ env.GITHUB_APP_PRIVATE_KEY }}
|
||||||
|
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
- name: 'Download artifact'
|
- name: 'Download artifact'
|
||||||
uses: actions/download-artifact@v6
|
uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: levitate
|
name: levitate
|
||||||
|
|
||||||
- name: Parsing levitate result
|
- name: Parsing levitate result
|
||||||
uses: actions/github-script@v8
|
uses: actions/github-script@v7
|
||||||
id: levitate-run
|
id: levitate-run
|
||||||
with:
|
with:
|
||||||
script: |
|
script: |
|
||||||
@@ -241,7 +241,7 @@ jobs:
|
|||||||
# Check if label exists
|
# Check if label exists
|
||||||
- name: Check if "levitate breaking change" label exists
|
- name: Check if "levitate breaking change" label exists
|
||||||
id: does-label-exist
|
id: does-label-exist
|
||||||
uses: actions/github-script@v8
|
uses: actions/github-script@v7
|
||||||
env:
|
env:
|
||||||
PR_NUMBER: ${{ github.event.pull_request.number }}
|
PR_NUMBER: ${{ github.event.pull_request.number }}
|
||||||
with:
|
with:
|
||||||
@@ -334,7 +334,7 @@ jobs:
|
|||||||
# Add the label
|
# Add the label
|
||||||
- name: Add "levitate breaking change" label
|
- name: Add "levitate breaking change" label
|
||||||
if: steps.levitate-run.outputs.exit_code == 1 && steps.does-label-exist.outputs.result == 0
|
if: steps.levitate-run.outputs.exit_code == 1 && steps.does-label-exist.outputs.result == 0
|
||||||
uses: actions/github-script@v8
|
uses: actions/github-script@v7
|
||||||
env:
|
env:
|
||||||
PR_NUMBER: ${{ steps.levitate-run.outputs.pr_number }}
|
PR_NUMBER: ${{ steps.levitate-run.outputs.pr_number }}
|
||||||
with:
|
with:
|
||||||
@@ -350,7 +350,7 @@ jobs:
|
|||||||
# Remove label (no more breaking changes)
|
# Remove label (no more breaking changes)
|
||||||
- name: Remove "levitate breaking change" label
|
- name: Remove "levitate breaking change" label
|
||||||
if: steps.levitate-run.outputs.exit_code == 0 && steps.does-label-exist.outputs.result == 1
|
if: steps.levitate-run.outputs.exit_code == 0 && steps.does-label-exist.outputs.result == 1
|
||||||
uses: actions/github-script@v8
|
uses: actions/github-script@v7
|
||||||
env:
|
env:
|
||||||
PR_NUMBER: ${{ steps.levitate-run.outputs.pr_number }}
|
PR_NUMBER: ${{ steps.levitate-run.outputs.pr_number }}
|
||||||
with:
|
with:
|
||||||
@@ -368,7 +368,7 @@ jobs:
|
|||||||
# Related issue: https://github.com/renovatebot/renovate/issues/1908
|
# Related issue: https://github.com/renovatebot/renovate/issues/1908
|
||||||
- name: Add "grafana/plugins-platform-frontend" as a reviewer
|
- name: Add "grafana/plugins-platform-frontend" as a reviewer
|
||||||
if: steps.levitate-run.outputs.exit_code == 1
|
if: steps.levitate-run.outputs.exit_code == 1
|
||||||
uses: actions/github-script@v8
|
uses: actions/github-script@v7
|
||||||
env:
|
env:
|
||||||
PR_NUMBER: ${{ steps.levitate-run.outputs.pr_number }}
|
PR_NUMBER: ${{ steps.levitate-run.outputs.pr_number }}
|
||||||
with:
|
with:
|
||||||
@@ -385,7 +385,7 @@ jobs:
|
|||||||
# Remove reviewers (no more breaking changes)
|
# Remove reviewers (no more breaking changes)
|
||||||
- name: Remove "grafana/plugins-platform-frontend" from the list of reviewers
|
- name: Remove "grafana/plugins-platform-frontend" from the list of reviewers
|
||||||
if: steps.levitate-run.outputs.exit_code == 0
|
if: steps.levitate-run.outputs.exit_code == 0
|
||||||
uses: actions/github-script@v8
|
uses: actions/github-script@v7
|
||||||
env:
|
env:
|
||||||
PR_NUMBER: ${{ steps.levitate-run.outputs.pr_number }}
|
PR_NUMBER: ${{ steps.levitate-run.outputs.pr_number }}
|
||||||
with:
|
with:
|
||||||
|
|||||||
@@ -29,14 +29,14 @@ jobs:
|
|||||||
if: github.event.pull_request.head.repo.full_name == github.repository
|
if: github.event.pull_request.head.repo.full_name == github.repository
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
- name: Check for plugin extension changes
|
- name: Check for plugin extension changes
|
||||||
id: check-changes
|
id: check-changes
|
||||||
uses: actions/github-script@v8
|
uses: actions/github-script@v7
|
||||||
with:
|
with:
|
||||||
script: |
|
script: |
|
||||||
const { execSync } = require('child_process');
|
const { execSync } = require('child_process');
|
||||||
|
|||||||
2
.github/workflows/documentation-ci.yml
vendored
2
.github/workflows/documentation-ci.yml
vendored
@@ -17,7 +17,7 @@ jobs:
|
|||||||
container:
|
container:
|
||||||
image: grafana/vale:latest # zizmor: ignore[unpinned-images]
|
image: grafana/vale:latest # zizmor: ignore[unpinned-images]
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- uses: grafana/writers-toolkit/vale-action@vale-action/v1 # zizmor: ignore[unpinned-uses]
|
- uses: grafana/writers-toolkit/vale-action@vale-action/v1 # zizmor: ignore[unpinned-uses]
|
||||||
|
|||||||
@@ -33,16 +33,6 @@ jobs:
|
|||||||
GCOM_TOKEN=ephemeral-instances-bot:gcom-token
|
GCOM_TOKEN=ephemeral-instances-bot:gcom-token
|
||||||
REGISTRY=ephemeral-instances-bot:registry
|
REGISTRY=ephemeral-instances-bot:registry
|
||||||
GCP_SA_ACCOUNT_KEY_BASE64=ephemeral-instances-bot:sa-key
|
GCP_SA_ACCOUNT_KEY_BASE64=ephemeral-instances-bot:sa-key
|
||||||
# Secrets placed in the ci/common/<path> path in Vault
|
|
||||||
common_secrets: |
|
|
||||||
DOCKERHUB_USERNAME=dockerhub:username
|
|
||||||
DOCKERHUB_PASSWORD=dockerhub:password
|
|
||||||
|
|
||||||
- name: Log in to Docker Hub to avoid unauthenticated image pull rate-limiting
|
|
||||||
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
|
|
||||||
with:
|
|
||||||
username: ${{ env.DOCKERHUB_USERNAME }}
|
|
||||||
password: ${{ env.DOCKERHUB_PASSWORD }}
|
|
||||||
|
|
||||||
- name: Generate a GitHub app installation token
|
- name: Generate a GitHub app installation token
|
||||||
id: generate_token
|
id: generate_token
|
||||||
@@ -52,7 +42,7 @@ jobs:
|
|||||||
private_key: ${{ env.APP_PEM }}
|
private_key: ${{ env.APP_PEM }}
|
||||||
|
|
||||||
- name: Checkout ephemeral instances repository
|
- name: Checkout ephemeral instances repository
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8
|
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
|
||||||
with:
|
with:
|
||||||
repository: grafana/ephemeral-grafana-instances-github-action
|
repository: grafana/ephemeral-grafana-instances-github-action
|
||||||
token: ${{ steps.generate_token.outputs.token }}
|
token: ${{ steps.generate_token.outputs.token }}
|
||||||
|
|||||||
6
.github/workflows/feature-toggles-ci.yml
vendored
6
.github/workflows/feature-toggles-ci.yml
vendored
@@ -11,20 +11,18 @@ permissions: {}
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
test:
|
test:
|
||||||
name: Feature toggles documentation is in sync with source
|
|
||||||
|
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
- name: Set up Go
|
- name: Set up Go
|
||||||
uses: actions/setup-go@v6.0.0
|
uses: actions/setup-go@v5.5.0
|
||||||
with:
|
with:
|
||||||
go-version-file: 'go.mod'
|
go-version-file: 'go.mod'
|
||||||
cache: true
|
cache: true
|
||||||
|
|||||||
26
.github/workflows/frontend-lint.yml
vendored
26
.github/workflows/frontend-lint.yml
vendored
@@ -18,7 +18,7 @@ jobs:
|
|||||||
changed: ${{ steps.detect-changes.outputs.frontend }}
|
changed: ${{ steps.detect-changes.outputs.frontend }}
|
||||||
prettier: ${{ steps.detect-changes.outputs.frontend == 'true' || steps.detect-changes.outputs.docs == 'true' }}
|
prettier: ${{ steps.detect-changes.outputs.frontend == 'true' || steps.detect-changes.outputs.docs == 'true' }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: true # required to get more history in the changed-files action
|
persist-credentials: true # required to get more history in the changed-files action
|
||||||
fetch-depth: 2
|
fetch-depth: 2
|
||||||
@@ -39,10 +39,10 @@ jobs:
|
|||||||
name: Lint
|
name: Lint
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- uses: actions/setup-node@v6
|
- uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version-file: '.nvmrc'
|
node-version-file: '.nvmrc'
|
||||||
cache: 'yarn'
|
cache: 'yarn'
|
||||||
@@ -60,10 +60,10 @@ jobs:
|
|||||||
name: Lint
|
name: Lint
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- uses: actions/setup-node@v6
|
- uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version-file: '.nvmrc'
|
node-version-file: '.nvmrc'
|
||||||
cache: 'yarn'
|
cache: 'yarn'
|
||||||
@@ -86,10 +86,10 @@ jobs:
|
|||||||
name: Typecheck
|
name: Typecheck
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- uses: actions/setup-node@v6
|
- uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version-file: '.nvmrc'
|
node-version-file: '.nvmrc'
|
||||||
cache: 'yarn'
|
cache: 'yarn'
|
||||||
@@ -106,10 +106,10 @@ jobs:
|
|||||||
name: Typecheck
|
name: Typecheck
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- uses: actions/setup-node@v6
|
- uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version-file: '.nvmrc'
|
node-version-file: '.nvmrc'
|
||||||
cache: 'yarn'
|
cache: 'yarn'
|
||||||
@@ -130,10 +130,10 @@ jobs:
|
|||||||
name: Verify API clients
|
name: Verify API clients
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- uses: actions/setup-node@v6
|
- uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version-file: '.nvmrc'
|
node-version-file: '.nvmrc'
|
||||||
cache: 'yarn'
|
cache: 'yarn'
|
||||||
@@ -161,10 +161,10 @@ jobs:
|
|||||||
name: Verify API clients (enterprise)
|
name: Verify API clients (enterprise)
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- uses: actions/setup-node@v6
|
- uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version-file: '.nvmrc'
|
node-version-file: '.nvmrc'
|
||||||
cache: 'yarn'
|
cache: 'yarn'
|
||||||
|
|||||||
2
.github/workflows/frontend-perf-tests.yaml
vendored
2
.github/workflows/frontend-perf-tests.yaml
vendored
@@ -14,7 +14,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repo
|
- name: Checkout repo
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
|
|||||||
14
.github/workflows/go-lint.yml
vendored
14
.github/workflows/go-lint.yml
vendored
@@ -23,7 +23,7 @@ jobs:
|
|||||||
outputs:
|
outputs:
|
||||||
changed: ${{ steps.detect-changes.outputs.backend }}
|
changed: ${{ steps.detect-changes.outputs.backend }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: true # required to get more history in the changed-files action
|
persist-credentials: true # required to get more history in the changed-files action
|
||||||
fetch-depth: 2
|
fetch-depth: 2
|
||||||
@@ -38,10 +38,10 @@ jobs:
|
|||||||
if: needs.detect-changes.outputs.changed == 'true'
|
if: needs.detect-changes.outputs.changed == 'true'
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- uses: actions/setup-go@v6.0.0
|
- uses: actions/setup-go@v5.5.0
|
||||||
with:
|
with:
|
||||||
go-version-file: ./go.mod
|
go-version-file: ./go.mod
|
||||||
- name: Run gofmt
|
- name: Run gofmt
|
||||||
@@ -57,16 +57,16 @@ jobs:
|
|||||||
lint-go:
|
lint-go:
|
||||||
needs: detect-changes
|
needs: detect-changes
|
||||||
if: needs.detect-changes.outputs.changed == 'true'
|
if: needs.detect-changes.outputs.changed == 'true'
|
||||||
runs-on: ubuntu-x64-large-io
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- uses: actions/setup-go@v6.0.0
|
- uses: actions/setup-go@v5.5.0
|
||||||
with:
|
with:
|
||||||
go-version-file: ./go.mod
|
go-version-file: ./go.mod
|
||||||
- name: golangci-lint
|
- name: golangci-lint
|
||||||
uses: golangci/golangci-lint-action@4afd733a84b1f43292c63897423277bb7f4313a9
|
uses: golangci/golangci-lint-action@1481404843c368bc19ca9406f87d6e0fc97bdcfd
|
||||||
with:
|
with:
|
||||||
version: v2.5.0
|
version: v2.5.0
|
||||||
args: |
|
args: |
|
||||||
|
|||||||
14
.github/workflows/issue-opened.yml
vendored
14
.github/workflows/issue-opened.yml
vendored
@@ -22,7 +22,7 @@ jobs:
|
|||||||
steps:
|
steps:
|
||||||
|
|
||||||
- name: Checkout Actions
|
- name: Checkout Actions
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4 # v4.2.2
|
||||||
with:
|
with:
|
||||||
repository: "grafana/grafana-github-actions"
|
repository: "grafana/grafana-github-actions"
|
||||||
path: ./actions
|
path: ./actions
|
||||||
@@ -39,7 +39,7 @@ jobs:
|
|||||||
|
|
||||||
- name: "Get vault secrets"
|
- name: "Get vault secrets"
|
||||||
id: vault-secrets
|
id: vault-secrets
|
||||||
uses: grafana/shared-workflows/actions/get-vault-secrets@get-vault-secrets/v1.3.0 # zizmor: ignore[unpinned-uses]
|
uses: grafana/shared-workflows/actions/get-vault-secrets@get-vault-secrets/v1.2.1 # zizmor: ignore[unpinned-uses]
|
||||||
with:
|
with:
|
||||||
# Secrets placed in the ci/repo/grafana/grafana/plugins_platform_issue_commands_github_bot path in Vault
|
# Secrets placed in the ci/repo/grafana/grafana/plugins_platform_issue_commands_github_bot path in Vault
|
||||||
repo_secrets: |
|
repo_secrets: |
|
||||||
@@ -71,7 +71,7 @@ jobs:
|
|||||||
|
|
||||||
- name: "Get vault secrets"
|
- name: "Get vault secrets"
|
||||||
id: vault-secrets
|
id: vault-secrets
|
||||||
uses: grafana/shared-workflows/actions/get-vault-secrets@get-vault-secrets/v1.3.0 # zizmor: ignore[unpinned-uses]
|
uses: grafana/shared-workflows/actions/get-vault-secrets@get-vault-secrets/v1.2.1 # zizmor: ignore[unpinned-uses]
|
||||||
with:
|
with:
|
||||||
# Secrets placed in the ci/repo/grafana/grafana/plugins_platform_issue_triager path in Vault
|
# Secrets placed in the ci/repo/grafana/grafana/plugins_platform_issue_triager path in Vault
|
||||||
repo_secrets: |
|
repo_secrets: |
|
||||||
@@ -97,7 +97,7 @@ jobs:
|
|||||||
ACTOR: ${{ github.actor }}
|
ACTOR: ${{ github.actor }}
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
if: steps.check-if-grafana-org-member.outputs.is_grafana_org_member != 'true' && github.event.issue.author_association != 'MEMBER' && github.event.issue.author_association != 'OWNER'
|
if: steps.check-if-grafana-org-member.outputs.is_grafana_org_member != 'true' && github.event.issue.author_association != 'MEMBER' && github.event.issue.author_association != 'OWNER'
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4 # v4.2.2
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
sparse-checkout: |
|
sparse-checkout: |
|
||||||
@@ -139,12 +139,12 @@ jobs:
|
|||||||
steps:
|
steps:
|
||||||
- name: "Get vault secrets"
|
- name: "Get vault secrets"
|
||||||
id: vault-secrets
|
id: vault-secrets
|
||||||
uses: grafana/shared-workflows/actions/get-vault-secrets@get-vault-secrets/v1.3.0 # zizmor: ignore[unpinned-uses]
|
uses: grafana/shared-workflows/actions/get-vault-secrets@get-vault-secrets/v1.2.1 # zizmor: ignore[unpinned-uses]
|
||||||
with:
|
with:
|
||||||
# Secrets placed in the ci/repo/grafana/grafana/plugins_platform_issue_triager path in Vault
|
# Secrets placed in the ci/repo/grafana/grafana/plugins_platform_issue_triager path in Vault
|
||||||
repo_secrets: |
|
repo_secrets: |
|
||||||
GITHUB_APP_ID=plugins_platform_issue_triager_github_bot:app_id
|
GITHUB_APP_ID=plugins_platform_issue_triager_github_bot:app_id
|
||||||
GITHUB_APP_PRIVATE_KEY=plugins_platform_issue_triager_github_bot:app_pem
|
GITHUB_APP_PRIVATE_KEY=plugins_platform_issue_triager_github_bot:app_pem
|
||||||
- name: Generate token
|
- name: Generate token
|
||||||
id: generate_token
|
id: generate_token
|
||||||
uses: actions/create-github-app-token@df432ceedc7162793a195dd1713ff69aefc7379e # v2.0.6
|
uses: actions/create-github-app-token@df432ceedc7162793a195dd1713ff69aefc7379e # v2.0.6
|
||||||
@@ -166,4 +166,4 @@ jobs:
|
|||||||
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
GH_REPO: ${{ github.repository }}
|
GH_REPO: ${{ github.repository }}
|
||||||
NUMBER: ${{ github.event.issue.number }}
|
NUMBER: ${{ github.event.issue.number }}
|
||||||
LABELS: internal
|
LABELS: internal
|
||||||
4
.github/workflows/lint-build-docs.yml
vendored
4
.github/workflows/lint-build-docs.yml
vendored
@@ -30,12 +30,12 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
- name: Setup Node.js
|
- name: Setup Node.js
|
||||||
uses: actions/setup-node@v6
|
uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version-file: '.nvmrc'
|
node-version-file: '.nvmrc'
|
||||||
cache: 'yarn'
|
cache: 'yarn'
|
||||||
|
|||||||
2
.github/workflows/pr-checks.yml
vendored
2
.github/workflows/pr-checks.yml
vendored
@@ -31,7 +31,7 @@ jobs:
|
|||||||
if: github.event.pull_request.draft == false
|
if: github.event.pull_request.draft == false
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Actions
|
- name: Checkout Actions
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4 # v4.2.2
|
||||||
with:
|
with:
|
||||||
repository: "grafana/grafana-github-actions"
|
repository: "grafana/grafana-github-actions"
|
||||||
path: ./actions
|
path: ./actions
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
# We must fetch at least the immediate parents so that if this is
|
# We must fetch at least the immediate parents so that if this is
|
||||||
# a pull request then we can checkout the head.
|
# a pull request then we can checkout the head.
|
||||||
@@ -29,9 +29,9 @@ jobs:
|
|||||||
|
|
||||||
# Initializes the CodeQL tools for scanning.
|
# Initializes the CodeQL tools for scanning.
|
||||||
- name: Initialize CodeQL
|
- name: Initialize CodeQL
|
||||||
uses: github/codeql-action/init@v4
|
uses: github/codeql-action/init@v3
|
||||||
with:
|
with:
|
||||||
languages: "javascript"
|
languages: "javascript"
|
||||||
|
|
||||||
- name: Perform CodeQL Analysis
|
- name: Perform CodeQL Analysis
|
||||||
uses: github/codeql-action/analyze@v4
|
uses: github/codeql-action/analyze@v3
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
# We must fetch at least the immediate parents so that if this is
|
# We must fetch at least the immediate parents so that if this is
|
||||||
# a pull request then we can checkout the head.
|
# a pull request then we can checkout the head.
|
||||||
@@ -39,10 +39,10 @@ jobs:
|
|||||||
# Initializes the CodeQL tools for scanning.
|
# Initializes the CodeQL tools for scanning.
|
||||||
- name: Initialize CodeQL
|
- name: Initialize CodeQL
|
||||||
if: steps.check-python.outputs.skip != 'true'
|
if: steps.check-python.outputs.skip != 'true'
|
||||||
uses: github/codeql-action/init@v4
|
uses: github/codeql-action/init@v3
|
||||||
with:
|
with:
|
||||||
languages: "python"
|
languages: "python"
|
||||||
|
|
||||||
- name: Perform CodeQL Analysis
|
- name: Perform CodeQL Analysis
|
||||||
if: steps.check-python.outputs.skip != 'true'
|
if: steps.check-python.outputs.skip != 'true'
|
||||||
uses: github/codeql-action/analyze@v4
|
uses: github/codeql-action/analyze@v3
|
||||||
|
|||||||
2
.github/workflows/pr-commands.yml
vendored
2
.github/workflows/pr-commands.yml
vendored
@@ -16,7 +16,7 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Actions
|
- name: Checkout Actions
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4 # v4.2.2
|
||||||
with:
|
with:
|
||||||
repository: "grafana/grafana-github-actions"
|
repository: "grafana/grafana-github-actions"
|
||||||
path: ./actions
|
path: ./actions
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ jobs:
|
|||||||
private-key: ${{ env.PRIVATE_KEY }}
|
private-key: ${{ env.PRIVATE_KEY }}
|
||||||
|
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
repository: ${{ github.event.pull_request.head.repo.full_name }}
|
repository: ${{ github.event.pull_request.head.repo.full_name }}
|
||||||
ref: ${{ github.event.pull_request.head.ref }}
|
ref: ${{ github.event.pull_request.head.ref }}
|
||||||
@@ -45,7 +45,7 @@ jobs:
|
|||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
- name: Set go version
|
- name: Set go version
|
||||||
uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00
|
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5
|
||||||
with:
|
with:
|
||||||
go-version-file: go.mod
|
go-version-file: go.mod
|
||||||
|
|
||||||
|
|||||||
94
.github/workflows/pr-e2e-tests.yml
vendored
94
.github/workflows/pr-e2e-tests.yml
vendored
@@ -30,7 +30,7 @@ jobs:
|
|||||||
changed: ${{ steps.detect-changes.outputs.e2e }}
|
changed: ${{ steps.detect-changes.outputs.e2e }}
|
||||||
cloud_plugins_changed: ${{ steps.detect-changes.outputs.e2e-cloud-plugins }}
|
cloud_plugins_changed: ${{ steps.detect-changes.outputs.e2e-cloud-plugins }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: true # required to get more history in the changed-files action
|
persist-credentials: true # required to get more history in the changed-files action
|
||||||
fetch-depth: 2
|
fetch-depth: 2
|
||||||
@@ -48,7 +48,7 @@ jobs:
|
|||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
@@ -65,7 +65,7 @@ jobs:
|
|||||||
# If no cache hit, build Grafana
|
# If no cache hit, build Grafana
|
||||||
- name: Build Grafana
|
- name: Build Grafana
|
||||||
if: steps.cache.outputs.cache-hit != 'true'
|
if: steps.cache.outputs.cache-hit != 'true'
|
||||||
uses: dagger/dagger-for-github@d913e70051faf3b907d4dd96ef1161083c88c644
|
uses: dagger/dagger-for-github@e47aba410ef9bb9ed81a4d2a97df31061e5e842e
|
||||||
with:
|
with:
|
||||||
version: 0.18.8
|
version: 0.18.8
|
||||||
verb: run
|
verb: run
|
||||||
@@ -94,14 +94,14 @@ jobs:
|
|||||||
id: artifact
|
id: artifact
|
||||||
|
|
||||||
- name: Upload grafana.tar.gz
|
- name: Upload grafana.tar.gz
|
||||||
uses: actions/upload-artifact@v5
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
retention-days: 1
|
retention-days: 1
|
||||||
name: grafana-tar-gz
|
name: grafana-tar-gz
|
||||||
path: build-dir/grafana.tar.gz
|
path: build-dir/grafana.tar.gz
|
||||||
|
|
||||||
- name: Upload grafana docker tarball
|
- name: Upload grafana docker tarball
|
||||||
uses: actions/upload-artifact@v5
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
retention-days: 1
|
retention-days: 1
|
||||||
name: grafana-docker-tar-gz
|
name: grafana-docker-tar-gz
|
||||||
@@ -118,11 +118,11 @@ jobs:
|
|||||||
outputs:
|
outputs:
|
||||||
artifact: ${{ steps.artifact.outputs.artifact }}
|
artifact: ${{ steps.artifact.outputs.artifact }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Setup Go
|
- name: Setup Go
|
||||||
uses: actions/setup-go@v6.0.0
|
uses: actions/setup-go@v5.5.0
|
||||||
with:
|
with:
|
||||||
go-version-file: go.mod
|
go-version-file: go.mod
|
||||||
cache: ${{ !github.event.pull_request.head.repo.fork }}
|
cache: ${{ !github.event.pull_request.head.repo.fork }}
|
||||||
@@ -133,7 +133,7 @@ jobs:
|
|||||||
# We want a static binary, so we need to set CGO_ENABLED=0
|
# We want a static binary, so we need to set CGO_ENABLED=0
|
||||||
CGO_ENABLED=0 go build -o ./e2e-runner ./e2e/
|
CGO_ENABLED=0 go build -o ./e2e-runner ./e2e/
|
||||||
echo "artifact=e2e-runner-${{github.run_number}}" >> "$GITHUB_OUTPUT"
|
echo "artifact=e2e-runner-${{github.run_number}}" >> "$GITHUB_OUTPUT"
|
||||||
- uses: actions/upload-artifact@v5
|
- uses: actions/upload-artifact@v4
|
||||||
id: upload
|
id: upload
|
||||||
with:
|
with:
|
||||||
retention-days: 1
|
retention-days: 1
|
||||||
@@ -149,17 +149,25 @@ jobs:
|
|||||||
needs:
|
needs:
|
||||||
- build-grafana
|
- build-grafana
|
||||||
steps:
|
steps:
|
||||||
- id: get-github-token
|
- id: vault-secrets
|
||||||
name: "create github app token"
|
uses: grafana/shared-workflows/actions/get-vault-secrets@main
|
||||||
uses: grafana/shared-workflows/actions/create-github-app-token@eb02241ed0a92aff205feab8ac3afcdf51c757c8 # create-github-app-token-v0.2.0
|
|
||||||
with:
|
with:
|
||||||
github_app: "delivery-bot-app"
|
repo_secrets: |
|
||||||
|
GRAFANA_DELIVERY_BOT_APP_PEM=delivery-bot-app:PRIVATE_KEY
|
||||||
|
- name: Generate token
|
||||||
|
id: generate_token
|
||||||
|
uses: tibdex/github-app-token@3beb63f4bd073e61482598c45c71c1019b59b73a
|
||||||
|
with:
|
||||||
|
app_id: ${{ vars.DELIVERY_BOT_APP_ID }}
|
||||||
|
private_key: ${{ env.GRAFANA_DELIVERY_BOT_APP_PEM }}
|
||||||
|
repositories: '["grafana"]'
|
||||||
|
permissions: '{"checks": "write"}'
|
||||||
- uses: grafana/shared-workflows/actions/login-to-gar@main
|
- uses: grafana/shared-workflows/actions/login-to-gar@main
|
||||||
id: login-to-gar
|
id: login-to-gar
|
||||||
with:
|
with:
|
||||||
registry: 'us-docker.pkg.dev'
|
registry: 'us-docker.pkg.dev'
|
||||||
environment: 'dev'
|
environment: 'dev'
|
||||||
- uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53
|
- uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093
|
||||||
with:
|
with:
|
||||||
name: grafana-docker-tar-gz
|
name: grafana-docker-tar-gz
|
||||||
path: .
|
path: .
|
||||||
@@ -176,7 +184,7 @@ jobs:
|
|||||||
echo "IMAGE=${DOCKER_IMAGE}" >> "$GITHUB_ENV"
|
echo "IMAGE=${DOCKER_IMAGE}" >> "$GITHUB_ENV"
|
||||||
- name: Add PR status check
|
- name: Add PR status check
|
||||||
env:
|
env:
|
||||||
GH_TOKEN: ${{ steps.get-github-token.outputs.token }}
|
GH_TOKEN: ${{ steps.generate_token.outputs.token }}
|
||||||
SHA: ${{ github.event.pull_request.head.sha }}
|
SHA: ${{ github.event.pull_request.head.sha }}
|
||||||
run: |
|
run: |
|
||||||
gh api \
|
gh api \
|
||||||
@@ -200,6 +208,8 @@ jobs:
|
|||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
include:
|
include:
|
||||||
|
- suite: various-suite
|
||||||
|
path: e2e/various-suite
|
||||||
- suite: various-suite (old arch)
|
- suite: various-suite (old arch)
|
||||||
path: e2e/old-arch/various-suite
|
path: e2e/old-arch/various-suite
|
||||||
flags: --flags="--env dashboardScene=false"
|
flags: --flags="--env dashboardScene=false"
|
||||||
@@ -218,19 +228,19 @@ jobs:
|
|||||||
contents: read
|
contents: read
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- uses: actions/download-artifact@v6
|
- uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: grafana-tar-gz
|
name: grafana-tar-gz
|
||||||
- uses: actions/download-artifact@v6
|
- uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: ${{ needs.build-e2e-runner.outputs.artifact }}
|
name: ${{ needs.build-e2e-runner.outputs.artifact }}
|
||||||
- name: chmod +x
|
- name: chmod +x
|
||||||
run: chmod +x ./e2e-runner
|
run: chmod +x ./e2e-runner
|
||||||
- name: Run E2E tests
|
- name: Run E2E tests
|
||||||
uses: dagger/dagger-for-github@d913e70051faf3b907d4dd96ef1161083c88c644
|
uses: dagger/dagger-for-github@e47aba410ef9bb9ed81a4d2a97df31061e5e842e
|
||||||
with:
|
with:
|
||||||
version: 0.18.8
|
version: 0.18.8
|
||||||
verb: run
|
verb: run
|
||||||
@@ -245,7 +255,7 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
echo "suite=$(echo "$SUITE" | sed 's/\//-/g')" >> "$GITHUB_OUTPUT"
|
echo "suite=$(echo "$SUITE" | sed 's/\//-/g')" >> "$GITHUB_OUTPUT"
|
||||||
- uses: actions/upload-artifact@v5
|
- uses: actions/upload-artifact@v4
|
||||||
if: success() || failure()
|
if: success() || failure()
|
||||||
with:
|
with:
|
||||||
name: ${{ steps.set-suite-name.outputs.suite }}-${{ github.run_number }}
|
name: ${{ steps.set-suite-name.outputs.suite }}-${{ github.run_number }}
|
||||||
@@ -262,12 +272,12 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
- name: Setup Node.js
|
- name: Setup Node.js
|
||||||
uses: actions/setup-node@v6
|
uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version-file: '.nvmrc'
|
node-version-file: '.nvmrc'
|
||||||
|
|
||||||
@@ -295,19 +305,19 @@ jobs:
|
|||||||
shardTotal: [8]
|
shardTotal: [8]
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- uses: actions/download-artifact@v6
|
- uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: grafana-tar-gz
|
name: grafana-tar-gz
|
||||||
- name: Run E2E tests
|
- name: Run E2E tests
|
||||||
uses: dagger/dagger-for-github@d913e70051faf3b907d4dd96ef1161083c88c644
|
uses: dagger/dagger-for-github@e47aba410ef9bb9ed81a4d2a97df31061e5e842e
|
||||||
with:
|
with:
|
||||||
version: 0.18.8
|
version: 0.18.8
|
||||||
verb: run
|
verb: run
|
||||||
args: go run ./pkg/build/e2e-playwright --package=grafana.tar.gz --shard=${{ matrix.shard }}/${{ matrix.shardTotal }} --blob-dir=./blob-report
|
args: go run ./pkg/build/e2e-playwright --package=grafana.tar.gz --shard=${{ matrix.shard }}/${{ matrix.shardTotal }} --blob-dir=./blob-report
|
||||||
- uses: actions/upload-artifact@v5
|
- uses: actions/upload-artifact@v4
|
||||||
if: success() || failure()
|
if: success() || failure()
|
||||||
with:
|
with:
|
||||||
name: playwright-blob-${{ github.run_number }}-${{ matrix.shard }}
|
name: playwright-blob-${{ github.run_number }}-${{ matrix.shard }}
|
||||||
@@ -315,7 +325,7 @@ jobs:
|
|||||||
retention-days: 1
|
retention-days: 1
|
||||||
|
|
||||||
run-azure-monitor-e2e:
|
run-azure-monitor-e2e:
|
||||||
if: needs.detect-changes.outputs.cloud_plugins_changed == 'true' && github.event.pull_request.head.repo.fork == false && github.event_name == 'pull_request'
|
if: needs.detect-changes.outputs.cloud_plugins_changed == 'true' && github.event.pull_request.head.repo.fork == false
|
||||||
runs-on: ubuntu-x64-large
|
runs-on: ubuntu-x64-large
|
||||||
needs:
|
needs:
|
||||||
- build-grafana
|
- build-grafana
|
||||||
@@ -324,7 +334,7 @@ jobs:
|
|||||||
contents: read
|
contents: read
|
||||||
id-token: write
|
id-token: write
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
@@ -360,12 +370,12 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
docker cp cpp-e2e-deploy:/outputs.json /tmp/outputs.json
|
docker cp cpp-e2e-deploy:/outputs.json /tmp/outputs.json
|
||||||
|
|
||||||
- uses: actions/download-artifact@v6
|
- uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: grafana-tar-gz
|
name: grafana-tar-gz
|
||||||
|
|
||||||
- name: Run E2E tests
|
- name: Run E2E tests
|
||||||
uses: dagger/dagger-for-github@d913e70051faf3b907d4dd96ef1161083c88c644
|
uses: dagger/dagger-for-github@e47aba410ef9bb9ed81a4d2a97df31061e5e842e
|
||||||
with:
|
with:
|
||||||
version: 0.18.8
|
version: 0.18.8
|
||||||
verb: run
|
verb: run
|
||||||
@@ -391,16 +401,16 @@ jobs:
|
|||||||
name: All Playwright tests complete
|
name: All Playwright tests complete
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
- uses: actions/setup-node@v6
|
- uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version-file: '.nvmrc'
|
node-version-file: '.nvmrc'
|
||||||
|
|
||||||
- name: Download blob reports from GitHub Actions Artifacts
|
- name: Download blob reports from GitHub Actions Artifacts
|
||||||
uses: actions/download-artifact@v6
|
uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
path: blobs
|
path: blobs
|
||||||
pattern: playwright-blob-*
|
pattern: playwright-blob-*
|
||||||
@@ -439,7 +449,7 @@ jobs:
|
|||||||
|
|
||||||
- name: Upload HTML report
|
- name: Upload HTML report
|
||||||
id: upload-html
|
id: upload-html
|
||||||
uses: actions/upload-artifact@v5
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: playwright-html-${{ github.run_number }}
|
name: playwright-html-${{ github.run_number }}
|
||||||
path: playwright-report
|
path: playwright-report
|
||||||
@@ -476,29 +486,29 @@ jobs:
|
|||||||
contents: read
|
contents: read
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- uses: actions/download-artifact@v6
|
- uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: grafana-tar-gz
|
name: grafana-tar-gz
|
||||||
- name: Run PR a11y test
|
- name: Run PR a11y test
|
||||||
if: github.event_name == 'pull_request'
|
if: github.event_name == 'pull_request'
|
||||||
uses: dagger/dagger-for-github@d913e70051faf3b907d4dd96ef1161083c88c644
|
uses: dagger/dagger-for-github@e47aba410ef9bb9ed81a4d2a97df31061e5e842e
|
||||||
with:
|
with:
|
||||||
version: 0.18.8
|
version: 0.18.8
|
||||||
verb: run
|
verb: run
|
||||||
args: go run ./pkg/build/a11y --package=grafana.tar.gz
|
args: go run ./pkg/build/a11y --package=grafana.tar.gz
|
||||||
- name: Run non-PR a11y test
|
- name: Run non-PR a11y test
|
||||||
if: github.event_name != 'pull_request'
|
if: github.event_name != 'pull_request'
|
||||||
uses: dagger/dagger-for-github@d913e70051faf3b907d4dd96ef1161083c88c644
|
uses: dagger/dagger-for-github@e47aba410ef9bb9ed81a4d2a97df31061e5e842e
|
||||||
with:
|
with:
|
||||||
version: 0.18.8
|
version: 0.18.8
|
||||||
verb: run
|
verb: run
|
||||||
args: go run ./pkg/build/a11y --package=grafana.tar.gz --no-threshold-fail --results=./pa11y-ci-results.json
|
args: go run ./pkg/build/a11y --package=grafana.tar.gz --no-threshold-fail --results=./pa11y-ci-results.json
|
||||||
- name: Upload pa11y results
|
- name: Upload pa11y results
|
||||||
if: github.event_name != 'pull_request'
|
if: github.event_name != 'pull_request'
|
||||||
uses: actions/upload-artifact@v5
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
retention-days: 1
|
retention-days: 1
|
||||||
name: pa11y-ci-results
|
name: pa11y-ci-results
|
||||||
@@ -521,17 +531,17 @@ jobs:
|
|||||||
repo_secrets: |
|
repo_secrets: |
|
||||||
GRAFANA_MISC_STATS_API_KEY=grafana-misc-stats:api_key
|
GRAFANA_MISC_STATS_API_KEY=grafana-misc-stats:api_key
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Setup Node.js
|
- name: Setup Node.js
|
||||||
uses: actions/setup-node@v6
|
uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version-file: '.nvmrc'
|
node-version-file: '.nvmrc'
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: yarn install --immutable
|
run: yarn install --immutable
|
||||||
- name: Get pa11y results
|
- name: Get pa11y results
|
||||||
uses: actions/download-artifact@v6
|
uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: pa11y-ci-results
|
name: pa11y-ci-results
|
||||||
- name: Extract and publish metrics
|
- name: Extract and publish metrics
|
||||||
@@ -556,7 +566,7 @@ jobs:
|
|||||||
name: All E2E tests complete
|
name: All E2E tests complete
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
|
|||||||
36
.github/workflows/pr-frontend-unit-tests.yml
vendored
36
.github/workflows/pr-frontend-unit-tests.yml
vendored
@@ -18,9 +18,8 @@ jobs:
|
|||||||
contents: read
|
contents: read
|
||||||
outputs:
|
outputs:
|
||||||
changed: ${{ steps.detect-changes.outputs.frontend }}
|
changed: ${{ steps.detect-changes.outputs.frontend }}
|
||||||
devenv-changed: ${{ steps.detect-changes.outputs.devenv }}
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: true # required to get more history in the changed-files action
|
persist-credentials: true # required to get more history in the changed-files action
|
||||||
fetch-depth: 2
|
fetch-depth: 2
|
||||||
@@ -47,7 +46,7 @@ jobs:
|
|||||||
shard: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]
|
shard: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]
|
||||||
total: [16]
|
total: [16]
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Setup Node.js
|
- name: Setup Node.js
|
||||||
@@ -79,7 +78,7 @@ jobs:
|
|||||||
shard: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]
|
shard: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]
|
||||||
total: [16]
|
total: [16]
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Setup Enterprise
|
- name: Setup Enterprise
|
||||||
@@ -108,7 +107,7 @@ jobs:
|
|||||||
runs-on: ubuntu-x64-large
|
runs-on: ubuntu-x64-large
|
||||||
name: "Decoupled plugin tests"
|
name: "Decoupled plugin tests"
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Setup Node.js
|
- name: Setup Node.js
|
||||||
@@ -129,7 +128,7 @@ jobs:
|
|||||||
runs-on: ubuntu-x64-large
|
runs-on: ubuntu-x64-large
|
||||||
name: "Packages unit tests"
|
name: "Packages unit tests"
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Setup Node.js
|
- name: Setup Node.js
|
||||||
@@ -161,7 +160,7 @@ jobs:
|
|||||||
name: All frontend unit tests complete
|
name: All frontend unit tests complete
|
||||||
runs-on: ubuntu-x64-small
|
runs-on: ubuntu-x64-small
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Check test suites
|
- name: Check test suites
|
||||||
@@ -170,26 +169,3 @@ jobs:
|
|||||||
needs: ${{ toJson(needs) }}
|
needs: ${{ toJson(needs) }}
|
||||||
failure-message: "One or more unit test jobs have failed"
|
failure-message: "One or more unit test jobs have failed"
|
||||||
success-message: "All unit tests completed successfully"
|
success-message: "All unit tests completed successfully"
|
||||||
|
|
||||||
devenv:
|
|
||||||
needs:
|
|
||||||
- detect-changes
|
|
||||||
if: needs.detect-changes.outputs.devenv-changed == 'true'
|
|
||||||
runs-on: ubuntu-x64-large
|
|
||||||
name: "Devenv frontend-service build"
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v5
|
|
||||||
with:
|
|
||||||
persist-credentials: false
|
|
||||||
- name: Setup Docker
|
|
||||||
uses: docker/setup-docker-action@3fb92d6d9c634363128c8cce4bc3b2826526370a # v4
|
|
||||||
- name: Setup Node.js
|
|
||||||
uses: ./.github/actions/setup-node
|
|
||||||
- name: Install Tilt
|
|
||||||
run: curl -fsSL https://raw.githubusercontent.com/tilt-dev/tilt/master/scripts/install.sh | bash
|
|
||||||
- name: Create empty config files # TODO: the tiltfile should conditionally mount these only if they exist, like the enterprise license
|
|
||||||
run: |
|
|
||||||
touch devenv/frontend-service/configs/grafana-api.local.ini
|
|
||||||
touch devenv/frontend-service/configs/frontend-service.local.ini
|
|
||||||
- name: Test frontend-service Tiltfile
|
|
||||||
run: tilt ci --file devenv/frontend-service/Tiltfile
|
|
||||||
|
|||||||
22
.github/workflows/pr-go-workspace-check.yml
vendored
22
.github/workflows/pr-go-workspace-check.yml
vendored
@@ -16,7 +16,7 @@ jobs:
|
|||||||
outputs:
|
outputs:
|
||||||
changed: ${{ steps.detect-changes.outputs.backend }}
|
changed: ${{ steps.detect-changes.outputs.backend }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: true # required to get more history in the changed-files action
|
persist-credentials: true # required to get more history in the changed-files action
|
||||||
fetch-depth: 2
|
fetch-depth: 2
|
||||||
@@ -34,12 +34,12 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
- name: Set go version
|
- name: Set go version
|
||||||
uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00
|
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5
|
||||||
with:
|
with:
|
||||||
cache: false
|
cache: false
|
||||||
go-version-file: go.mod
|
go-version-file: go.mod
|
||||||
@@ -71,12 +71,12 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
- name: Set go version
|
- name: Set go version
|
||||||
uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00
|
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5
|
||||||
with:
|
with:
|
||||||
cache: false
|
cache: false
|
||||||
go-version-file: go.mod
|
go-version-file: go.mod
|
||||||
@@ -107,7 +107,6 @@ jobs:
|
|||||||
CURRENT_OSS_WIRE_CHECKSUM=$(sha256sum pkg/server/wire_gen.go | cut -d' ' -f1)
|
CURRENT_OSS_WIRE_CHECKSUM=$(sha256sum pkg/server/wire_gen.go | cut -d' ' -f1)
|
||||||
if [ "$CURRENT_OSS_WIRE_CHECKSUM" != "${{ steps.pre_gen_oss.outputs.wire_checksum }}" ]; then
|
if [ "$CURRENT_OSS_WIRE_CHECKSUM" != "${{ steps.pre_gen_oss.outputs.wire_checksum }}" ]; then
|
||||||
OSS_WIRE_CHANGED=true
|
OSS_WIRE_CHANGED=true
|
||||||
OSS_DIFF=$(git diff pkg/server/wire_gen.go)
|
|
||||||
echo "Uncomitted changes detected in pkg/server/wire_gen.go"
|
echo "Uncomitted changes detected in pkg/server/wire_gen.go"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -116,7 +115,6 @@ jobs:
|
|||||||
CURRENT_ENTERPRISE_WIRE_CHECKSUM=$(sha256sum pkg/server/enterprise_wire_gen.go | cut -d' ' -f1)
|
CURRENT_ENTERPRISE_WIRE_CHECKSUM=$(sha256sum pkg/server/enterprise_wire_gen.go | cut -d' ' -f1)
|
||||||
if [ "$CURRENT_ENTERPRISE_WIRE_CHECKSUM" != "${{ steps.pre_gen_enterprise.outputs.wire_checksum }}" ]; then
|
if [ "$CURRENT_ENTERPRISE_WIRE_CHECKSUM" != "${{ steps.pre_gen_enterprise.outputs.wire_checksum }}" ]; then
|
||||||
ENTERPRISE_WIRE_CHANGED=true
|
ENTERPRISE_WIRE_CHANGED=true
|
||||||
ENTERPRISE_DIFF=$(git diff pkg/server/enterprise_wire_gen.go)
|
|
||||||
echo "Uncomitted changes detected in pkg/server/enterprise_wire_gen.go"
|
echo "Uncomitted changes detected in pkg/server/enterprise_wire_gen.go"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
@@ -125,15 +123,7 @@ jobs:
|
|||||||
echo "No changes in generated Go files"
|
echo "No changes in generated Go files"
|
||||||
else
|
else
|
||||||
if [[ "${{ github.event.pull_request.head.repo.fork }}" == "false" ]]; then
|
if [[ "${{ github.event.pull_request.head.repo.fork }}" == "false" ]]; then
|
||||||
echo "> !!! Please synchronize the grafana OSS and grafana enterprise code bases as defined in the enterprise readme, then run 'make gen-go' in the OSS folder and commit the changes to both repositories."
|
echo "> !!! Please link Enterprise and run 'make gen-go', then commit the changes to both repositories."
|
||||||
if [[ "$OSS_WIRE_CHANGED" == "true" ]]; then
|
|
||||||
echo "OSS changes:"
|
|
||||||
echo "$OSS_DIFF"
|
|
||||||
fi
|
|
||||||
if [[ "$ENTERPRISE_WIRE_CHANGED" == "true" ]]; then
|
|
||||||
echo "Enterprise changes:"
|
|
||||||
echo "$ENTERPRISE_DIFF"
|
|
||||||
fi
|
|
||||||
else
|
else
|
||||||
echo "> !!! Please run 'make gen-go' and commit the changes."
|
echo "> !!! Please run 'make gen-go' and commit the changes."
|
||||||
fi
|
fi
|
||||||
|
|||||||
4
.github/workflows/pr-k8s-codegen-check.yml
vendored
4
.github/workflows/pr-k8s-codegen-check.yml
vendored
@@ -19,12 +19,12 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
- name: Set go version
|
- name: Set go version
|
||||||
uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00
|
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5
|
||||||
with:
|
with:
|
||||||
go-version-file: go.mod
|
go-version-file: go.mod
|
||||||
|
|
||||||
|
|||||||
2
.github/workflows/pr-patch-check.yml
vendored
2
.github/workflows/pr-patch-check.yml
vendored
@@ -55,7 +55,7 @@ jobs:
|
|||||||
permissions: "{\"actions\": \"write\", \"workflows\": \"write\"}"
|
permissions: "{\"actions\": \"write\", \"workflows\": \"write\"}"
|
||||||
repositories: "[\"security-patch-actions\"]"
|
repositories: "[\"security-patch-actions\"]"
|
||||||
- name: "Dispatch job"
|
- name: "Dispatch job"
|
||||||
uses: actions/github-script@v8
|
uses: actions/github-script@v7
|
||||||
with:
|
with:
|
||||||
github-token: ${{ steps.generate_token.outputs.token }}
|
github-token: ${{ steps.generate_token.outputs.token }}
|
||||||
script: |
|
script: |
|
||||||
|
|||||||
8
.github/workflows/pr-test-docker.yml
vendored
8
.github/workflows/pr-test-docker.yml
vendored
@@ -13,7 +13,7 @@ jobs:
|
|||||||
outputs:
|
outputs:
|
||||||
changed: ${{ steps.detect-changes.outputs.backend || steps.detect-changes.outputs.frontend || steps.detect-changes.outputs.dockerfile }}
|
changed: ${{ steps.detect-changes.outputs.backend || steps.detect-changes.outputs.frontend || steps.detect-changes.outputs.dockerfile }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: true # required to get more history in the changed-files action
|
persist-credentials: true # required to get more history in the changed-files action
|
||||||
fetch-depth: 2
|
fetch-depth: 2
|
||||||
@@ -21,7 +21,7 @@ jobs:
|
|||||||
id: detect-changes
|
id: detect-changes
|
||||||
uses: ./.github/actions/change-detection
|
uses: ./.github/actions/change-detection
|
||||||
with:
|
with:
|
||||||
self: .github/workflows/pr-test-docker.yml
|
self: .github/workflows/pr-test-integration.yml
|
||||||
|
|
||||||
build-dockerfile:
|
build-dockerfile:
|
||||||
needs: detect-changes
|
needs: detect-changes
|
||||||
@@ -31,9 +31,9 @@ jobs:
|
|||||||
contents: read
|
contents: read
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- uses: docker/setup-docker-action@3fb92d6d9c634363128c8cce4bc3b2826526370a # v4
|
- uses: docker/setup-docker-action@b60f85385d03ac8acfca6d9996982511d8620a19 # v4
|
||||||
- name: Build Dockerfile
|
- name: Build Dockerfile
|
||||||
run: make build-docker-full
|
run: make build-docker-full
|
||||||
|
|||||||
85
.github/workflows/pr-test-integration.yml
vendored
85
.github/workflows/pr-test-integration.yml
vendored
@@ -28,7 +28,7 @@ jobs:
|
|||||||
outputs:
|
outputs:
|
||||||
changed: ${{ steps.detect-changes.outputs.backend }}
|
changed: ${{ steps.detect-changes.outputs.backend }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: true # required to get more history in the changed-files action
|
persist-credentials: true # required to get more history in the changed-files action
|
||||||
fetch-depth: 2
|
fetch-depth: 2
|
||||||
@@ -54,11 +54,11 @@ jobs:
|
|||||||
contents: read
|
contents: read
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Setup Go
|
- name: Setup Go
|
||||||
uses: actions/setup-go@v6.0.0
|
uses: actions/setup-go@v5.5.0
|
||||||
with:
|
with:
|
||||||
go-version-file: go.mod
|
go-version-file: go.mod
|
||||||
cache: true
|
cache: true
|
||||||
@@ -78,7 +78,6 @@ jobs:
|
|||||||
# We don't need more than this since it has to wait for the other tests.
|
# We don't need more than this since it has to wait for the other tests.
|
||||||
shard: [
|
shard: [
|
||||||
1/4, 2/4, 3/4, 4/4,
|
1/4, 2/4, 3/4, 4/4,
|
||||||
profiled,
|
|
||||||
]
|
]
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
|
|
||||||
@@ -88,83 +87,21 @@ jobs:
|
|||||||
contents: read
|
contents: read
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Setup Go
|
- name: Setup Go
|
||||||
uses: actions/setup-go@v6.0.0
|
uses: actions/setup-go@v5.5.0
|
||||||
with:
|
with:
|
||||||
go-version-file: go.mod
|
go-version-file: go.mod
|
||||||
cache: true
|
cache: true
|
||||||
- name: Run tests
|
- name: Run tests
|
||||||
if: matrix.shard != 'profiled'
|
|
||||||
env:
|
env:
|
||||||
SHARD: ${{ matrix.shard }}
|
SHARD: ${{ matrix.shard }}
|
||||||
CGO_ENABLED: 0
|
|
||||||
SKIP_PACKAGES: |-
|
|
||||||
pkg/tests/apis/folder
|
|
||||||
pkg/tests/apis/dashboard
|
|
||||||
run: |
|
run: |
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
# Build regex pattern like: pkg1$|pkg2$|pkg3$
|
readarray -t PACKAGES <<< "$(./scripts/ci/backend-tests/pkgs-with-tests-named.sh -b TestIntegration | ./scripts/ci/backend-tests/shard.sh -N"$SHARD" -d-)"
|
||||||
SKIP_PATTERN=$(echo "$SKIP_PACKAGES" | sed '/^$/d' | sed 's|.*|&$|' | paste -sd '|' -)
|
CGO_ENABLED=0 go test -tags=sqlite -timeout=8m -run '^TestIntegration' "${PACKAGES[@]}"
|
||||||
readarray -t PACKAGES <<< "$(./scripts/ci/backend-tests/pkgs-with-tests-named.sh -b TestIntegration | ./scripts/ci/backend-tests/shard.sh -N "$SHARD" -d - | grep -Ev "($SKIP_PATTERN)")"
|
|
||||||
go test -tags=sqlite -timeout=8m -run '^TestIntegration' "${PACKAGES[@]}"
|
|
||||||
- name: Run profiled tests
|
|
||||||
id: run-profiled-tests
|
|
||||||
if: matrix.shard == 'profiled'
|
|
||||||
env:
|
|
||||||
CGO_ENABLED: 0
|
|
||||||
PROFILED_PACKAGES: |-
|
|
||||||
pkg/tests/apis/folder
|
|
||||||
pkg/tests/apis/dashboard
|
|
||||||
run: |
|
|
||||||
set -euo pipefail
|
|
||||||
# Build regex pattern line: pkg1$|pkg2$|pkg3$
|
|
||||||
PROFILE_PATTERN=$(echo "$PROFILED_PACKAGES" | sed '/^$/d' | sed 's|.*|&$|' | paste -sd '|' -)
|
|
||||||
readarray -t PACKAGES <<< "$(./scripts/ci/backend-tests/pkgs-with-tests-named.sh -b TestIntegration | grep -E "($PROFILE_PATTERN)")"
|
|
||||||
if [ ${#PACKAGES[@]} -eq 0 ]; then
|
|
||||||
echo "⚠️ No profiled packages found"
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
mkdir -p profiles
|
|
||||||
EXIT_CODE=0
|
|
||||||
# Run each profiled package sequentially
|
|
||||||
for full_pkg in "${PACKAGES[@]}"; do
|
|
||||||
# Build valid file name
|
|
||||||
pkg_name=$(basename "$full_pkg" | tr '/' '_' | tr '.' '_')
|
|
||||||
echo "📦 Running $full_pkg"
|
|
||||||
set +e
|
|
||||||
go test -tags=sqlite -timeout=8m -run '^TestIntegration' \
|
|
||||||
-outputdir=profiles \
|
|
||||||
-cpuprofile="cpu_${pkg_name}.prof" \
|
|
||||||
-memprofile="mem_${pkg_name}.prof" \
|
|
||||||
-trace="trace_${pkg_name}.out" \
|
|
||||||
"$full_pkg" 2>&1 | tee "profiles/test_${pkg_name}.log"
|
|
||||||
TEST_EXIT=$?
|
|
||||||
set -e
|
|
||||||
if [ $TEST_EXIT -ne 0 ]; then
|
|
||||||
echo "❌ $full_pkg failed with exit code $TEST_EXIT"
|
|
||||||
EXIT_CODE=1
|
|
||||||
else
|
|
||||||
echo "✅ $full_pkg passed"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
# Set output for artifact upload
|
|
||||||
if [ $EXIT_CODE -ne 0 ]; then
|
|
||||||
echo "upload_artifacts=true" >> "$GITHUB_OUTPUT"
|
|
||||||
else
|
|
||||||
echo "upload_artifacts=false" >> "$GITHUB_OUTPUT"
|
|
||||||
fi
|
|
||||||
exit $EXIT_CODE
|
|
||||||
- name: Output test profiles and traces
|
|
||||||
uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v4
|
|
||||||
if: matrix.shard == 'profiled' && !cancelled() && steps.run-profiled-tests.outputs.upload_artifacts == 'true'
|
|
||||||
with:
|
|
||||||
name: integration-test-profiles-sqlite-nocgo-${{ github.run_number }}
|
|
||||||
path: profiles/
|
|
||||||
retention-days: 7
|
|
||||||
if-no-files-found: ignore
|
|
||||||
mysql:
|
mysql:
|
||||||
needs: detect-changes
|
needs: detect-changes
|
||||||
if: needs.detect-changes.outputs.changed == 'true'
|
if: needs.detect-changes.outputs.changed == 'true'
|
||||||
@@ -198,11 +135,11 @@ jobs:
|
|||||||
- 3306:3306
|
- 3306:3306
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Setup Go
|
- name: Setup Go
|
||||||
uses: actions/setup-go@v6.0.0
|
uses: actions/setup-go@v5.5.0
|
||||||
with:
|
with:
|
||||||
go-version-file: go.mod
|
go-version-file: go.mod
|
||||||
cache: true
|
cache: true
|
||||||
@@ -247,11 +184,11 @@ jobs:
|
|||||||
- 5432:5432
|
- 5432:5432
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Setup Go
|
- name: Setup Go
|
||||||
uses: actions/setup-go@v6.0.0
|
uses: actions/setup-go@v5.5.0
|
||||||
with:
|
with:
|
||||||
go-version-file: go.mod
|
go-version-file: go.mod
|
||||||
cache: true
|
cache: true
|
||||||
|
|||||||
2
.github/workflows/publish-artifact.yml
vendored
2
.github/workflows/publish-artifact.yml
vendored
@@ -44,7 +44,7 @@ jobs:
|
|||||||
permissions:
|
permissions:
|
||||||
id-token: write
|
id-token: write
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53
|
- uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.name }}
|
name: ${{ inputs.name }}
|
||||||
pattern: ${{ inputs.pattern }}
|
pattern: ${{ inputs.pattern }}
|
||||||
|
|||||||
4
.github/workflows/publish-kinds-next.yml
vendored
4
.github/workflows/publish-kinds-next.yml
vendored
@@ -21,13 +21,13 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: "Checkout Grafana repo"
|
- name: "Checkout Grafana repo"
|
||||||
uses: "actions/checkout@v5"
|
uses: "actions/checkout@v4"
|
||||||
with:
|
with:
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
- name: "Setup Go"
|
- name: "Setup Go"
|
||||||
uses: "actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00"
|
uses: "actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5"
|
||||||
with:
|
with:
|
||||||
go-version-file: go.mod
|
go-version-file: go.mod
|
||||||
|
|
||||||
|
|||||||
6
.github/workflows/publish-kinds-release.yml
vendored
6
.github/workflows/publish-kinds-release.yml
vendored
@@ -23,14 +23,14 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: "Checkout Grafana repo"
|
- name: "Checkout Grafana repo"
|
||||||
uses: "actions/checkout@v5"
|
uses: "actions/checkout@v4"
|
||||||
with:
|
with:
|
||||||
# required for the `grafana/grafana-github-actions/has-matching-release-tag` action to work
|
# required for the `grafana/grafana-github-actions/has-matching-release-tag` action to work
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
- name: "Setup Go"
|
- name: "Setup Go"
|
||||||
uses: "actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00"
|
uses: "actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5"
|
||||||
with:
|
with:
|
||||||
go-version-file: go.mod
|
go-version-file: go.mod
|
||||||
|
|
||||||
@@ -38,7 +38,7 @@ jobs:
|
|||||||
run: go run .github/workflows/scripts/kinds/verify-kinds.go
|
run: go run .github/workflows/scripts/kinds/verify-kinds.go
|
||||||
|
|
||||||
- name: "Checkout Actions library"
|
- name: "Checkout Actions library"
|
||||||
uses: "actions/checkout@v5"
|
uses: "actions/checkout@v4"
|
||||||
with:
|
with:
|
||||||
repository: "grafana/grafana-github-actions"
|
repository: "grafana/grafana-github-actions"
|
||||||
path: "./actions"
|
path: "./actions"
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ jobs:
|
|||||||
id-token: write
|
id-token: write
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- uses: grafana/writers-toolkit/publish-technical-documentation@publish-technical-documentation/v1 # zizmor: ignore[unpinned-uses]
|
- uses: grafana/writers-toolkit/publish-technical-documentation@publish-technical-documentation/v1 # zizmor: ignore[unpinned-uses]
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ jobs:
|
|||||||
id-token: write
|
id-token: write
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|||||||
2
.github/workflows/reject-gh-secrets.yml
vendored
2
.github/workflows/reject-gh-secrets.yml
vendored
@@ -20,7 +20,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8
|
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
|
|||||||
69
.github/workflows/release-build.yml
vendored
69
.github/workflows/release-build.yml
vendored
@@ -96,7 +96,7 @@ jobs:
|
|||||||
private_key: ${{ env.GRAFANA_DELIVERY_BOT_APP_PEM }}
|
private_key: ${{ env.GRAFANA_DELIVERY_BOT_APP_PEM }}
|
||||||
repositories: '["grafana-enterprise"]'
|
repositories: '["grafana-enterprise"]'
|
||||||
permissions: '{"actions": "write"}'
|
permissions: '{"actions": "write"}'
|
||||||
- uses: actions/github-script@v8
|
- uses: actions/github-script@v7
|
||||||
env:
|
env:
|
||||||
REF: ${{ github.ref_name }}
|
REF: ${{ github.ref_name }}
|
||||||
VERSION: ${{ needs.setup.outputs.version }}
|
VERSION: ${{ needs.setup.outputs.version }}
|
||||||
@@ -156,16 +156,16 @@ jobs:
|
|||||||
artifacts: targz:grafana:linux/arm/v6,deb:grafana:linux/arm/v6
|
artifacts: targz:grafana:linux/arm/v6,deb:grafana:linux/arm/v6
|
||||||
verify: true
|
verify: true
|
||||||
- name: windows-amd64
|
- name: windows-amd64
|
||||||
artifacts: targz:grafana:windows/amd64:nocgo,zip:grafana:windows/amd64:nocgo,msi:grafana:windows/amd64:nocgo
|
artifacts: targz:grafana:windows/amd64,zip:grafana:windows/amd64,msi:grafana:windows/amd64
|
||||||
verify: true
|
verify: true
|
||||||
- name: windows-arm64
|
- name: windows-arm64
|
||||||
artifacts: targz:grafana:windows/arm64:nocgo,zip:grafana:windows/arm64:nocgo
|
artifacts: targz:grafana:windows/arm64,zip:grafana:windows/arm64
|
||||||
verify: true
|
verify: true
|
||||||
- name: darwin-amd64
|
- name: darwin-amd64
|
||||||
artifacts: targz:grafana:darwin/amd64:nocgo
|
artifacts: targz:grafana:darwin/amd64
|
||||||
verify: true
|
verify: true
|
||||||
- name: darwin-arm64
|
- name: darwin-arm64
|
||||||
artifacts: targz:grafana:darwin/arm64:nocgo
|
artifacts: targz:grafana:darwin/arm64
|
||||||
verify: true
|
verify: true
|
||||||
steps:
|
steps:
|
||||||
- uses: grafana/shared-workflows/actions/dockerhub-login@dockerhub-login/v1.0.2
|
- uses: grafana/shared-workflows/actions/dockerhub-login@dockerhub-login/v1.0.2
|
||||||
@@ -187,12 +187,12 @@ jobs:
|
|||||||
output: artifacts-${{ matrix.name }}.txt
|
output: artifacts-${{ matrix.name }}.txt
|
||||||
verify: ${{ matrix.verify }}
|
verify: ${{ matrix.verify }}
|
||||||
build-id: ${{ github.run_id }}
|
build-id: ${{ github.run_id }}
|
||||||
- uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4
|
- uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02
|
||||||
with:
|
with:
|
||||||
name: artifacts-list-${{ matrix.name }}
|
name: artifacts-list-${{ matrix.name }}
|
||||||
path: ${{ steps.build.outputs.file }}
|
path: ${{ steps.build.outputs.file }}
|
||||||
retention-days: 1
|
retention-days: 1
|
||||||
- uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4
|
- uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02
|
||||||
with:
|
with:
|
||||||
name: artifacts-${{ matrix.name }}
|
name: artifacts-${{ matrix.name }}
|
||||||
path: ${{ steps.build.outputs.dist-dir }}
|
path: ${{ steps.build.outputs.dist-dir }}
|
||||||
@@ -212,7 +212,6 @@ jobs:
|
|||||||
run-id: ${{ github.run_id }}
|
run-id: ${{ github.run_id }}
|
||||||
bucket-path: ${{ needs.setup.outputs.version }}_${{ github.run_id }}
|
bucket-path: ${{ needs.setup.outputs.version }}_${{ github.run_id }}
|
||||||
environment: prod
|
environment: prod
|
||||||
runs-on: ubuntu-x64-small
|
|
||||||
|
|
||||||
publish-dockerhub:
|
publish-dockerhub:
|
||||||
if: github.ref_name == 'main'
|
if: github.ref_name == 'main'
|
||||||
@@ -225,27 +224,27 @@ jobs:
|
|||||||
- build
|
- build
|
||||||
steps:
|
steps:
|
||||||
- uses: grafana/shared-workflows/actions/dockerhub-login@dockerhub-login/v1.0.2
|
- uses: grafana/shared-workflows/actions/dockerhub-login@dockerhub-login/v1.0.2
|
||||||
- uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53
|
- uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093
|
||||||
with:
|
with:
|
||||||
name: artifacts-list-linux-amd64
|
name: artifacts-list-linux-amd64
|
||||||
path: .
|
path: .
|
||||||
- uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53
|
- uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093
|
||||||
with:
|
with:
|
||||||
name: artifacts-list-linux-arm64
|
name: artifacts-list-linux-arm64
|
||||||
path: .
|
path: .
|
||||||
- uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53
|
- uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093
|
||||||
with:
|
with:
|
||||||
name: artifacts-list-linux-armv7
|
name: artifacts-list-linux-armv7
|
||||||
path: .
|
path: .
|
||||||
- uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53
|
- uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093
|
||||||
with:
|
with:
|
||||||
name: artifacts-linux-amd64
|
name: artifacts-linux-amd64
|
||||||
path: dist
|
path: dist
|
||||||
- uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53
|
- uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093
|
||||||
with:
|
with:
|
||||||
name: artifacts-linux-arm64
|
name: artifacts-linux-arm64
|
||||||
path: dist
|
path: dist
|
||||||
- uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53
|
- uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093
|
||||||
with:
|
with:
|
||||||
name: artifacts-linux-armv7
|
name: artifacts-linux-armv7
|
||||||
path: dist
|
path: dist
|
||||||
@@ -272,30 +271,21 @@ jobs:
|
|||||||
docker manifest push "grafana/grafana-dev:${VERSION}"
|
docker manifest push "grafana/grafana-dev:${VERSION}"
|
||||||
docker manifest push "grafana/grafana-dev:${VERSION}-ubuntu"
|
docker manifest push "grafana/grafana-dev:${VERSION}-ubuntu"
|
||||||
|
|
||||||
dispatch-npm-canaries:
|
publish-npm-canaries:
|
||||||
if: github.ref_name == 'main'
|
if: github.ref_name == 'main'
|
||||||
name: Dispatch publish NPM canaries
|
name: Publish NPM canaries
|
||||||
|
uses: ./.github/workflows/release-npm.yml
|
||||||
permissions:
|
permissions:
|
||||||
actions: write
|
|
||||||
contents: read
|
contents: read
|
||||||
runs-on: ubuntu-x64-small
|
id-token: write
|
||||||
needs:
|
needs:
|
||||||
- setup
|
- setup
|
||||||
steps:
|
- build
|
||||||
- name: Dispatch action
|
with:
|
||||||
env:
|
grafana_commit: ${{ needs.setup.outputs.grafana-commit }}
|
||||||
GRAFANA_COMMIT: ${{ needs.setup.outputs.grafana-commit }}
|
version: ${{ needs.setup.outputs.version }}
|
||||||
VERSION: ${{ needs.setup.outputs.version }}
|
build_id: ${{ github.run_id }}
|
||||||
BUILD_ID: ${{ github.run_id }}
|
version_type: "canary"
|
||||||
GH_TOKEN: ${{ github.token }}
|
|
||||||
run: |
|
|
||||||
gh workflow run release-npm.yml \
|
|
||||||
--repo grafana/grafana \
|
|
||||||
--ref main \
|
|
||||||
--field grafana_commit="$GRAFANA_COMMIT" \
|
|
||||||
--field version="$VERSION" \
|
|
||||||
--field build_id="$BUILD_ID"\
|
|
||||||
--field version_type="canary"
|
|
||||||
|
|
||||||
# notify-pr creates (or updates) a comment in a pull request to link to this workflow where the release artifacts are
|
# notify-pr creates (or updates) a comment in a pull request to link to this workflow where the release artifacts are
|
||||||
# being built.
|
# being built.
|
||||||
@@ -321,29 +311,20 @@ jobs:
|
|||||||
repositories: '["grafana"]'
|
repositories: '["grafana"]'
|
||||||
permissions: '{"issues": "write", "pull_requests": "write", "contents": "read"}'
|
permissions: '{"issues": "write", "pull_requests": "write", "contents": "read"}'
|
||||||
- name: Find PR
|
- name: Find PR
|
||||||
continue-on-error: true
|
|
||||||
id: find-pr
|
|
||||||
env:
|
env:
|
||||||
GITHUB_TOKEN: ${{ steps.generate_token.outputs.token }}
|
GITHUB_TOKEN: ${{ steps.generate_token.outputs.token }}
|
||||||
GRAFANA_COMMIT: ${{ needs.setup.outputs.grafana-commit }}
|
GRAFANA_COMMIT: ${{ needs.setup.outputs.grafana-commit }}
|
||||||
REPO: ${{ github.repository }}
|
run: echo "ISSUE_NUMBER=$(gh api "/repos/grafana/grafana/commits/${GRAFANA_COMMIT}/pulls" | jq -r '.[0].number')" >> "$GITHUB_ENV"
|
||||||
run: |
|
|
||||||
set -eo pipefail
|
|
||||||
gh api "/repos/${REPO}/commits/${GRAFANA_COMMIT}/pulls" | jq -r '.[0].number' | tee issue_number.txt
|
|
||||||
echo "ISSUE_NUMBER=$(cat issue_number.txt)" >> "$GITHUB_ENV"
|
|
||||||
- name: Find Comment
|
- name: Find Comment
|
||||||
uses: peter-evans/find-comment@3eae4d37986fb5a8592848f6a574fdf654e61f9e # v3
|
uses: peter-evans/find-comment@3eae4d37986fb5a8592848f6a574fdf654e61f9e # v3
|
||||||
if: ${{ steps.find-pr.outcome == 'success' }}
|
|
||||||
id: fc
|
id: fc
|
||||||
continue-on-error: true
|
|
||||||
with:
|
with:
|
||||||
issue-number: ${{ env.ISSUE_NUMBER }}
|
issue-number: ${{ env.ISSUE_NUMBER }}
|
||||||
comment-author: 'grafana-delivery-bot[bot]'
|
comment-author: 'grafana-delivery-bot[bot]'
|
||||||
body-includes: GitHub Actions Build
|
body-includes: GitHub Actions Build
|
||||||
token: ${{ steps.generate_token.outputs.token }}
|
token: ${{ steps.generate_token.outputs.token }}
|
||||||
- name: Create or update comment
|
- name: Create or update comment
|
||||||
uses: peter-evans/create-or-update-comment@e8674b075228eee787fea43ef493e45ece1004c9 # v4
|
uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v4
|
||||||
if: ${{ steps.find-pr.outcome == 'success' }} # Run even if comment wasn't found
|
|
||||||
with:
|
with:
|
||||||
token: ${{ steps.generate_token.outputs.token }}
|
token: ${{ steps.generate_token.outputs.token }}
|
||||||
comment-id: ${{ steps.fc.outputs.comment-id }}
|
comment-id: ${{ steps.fc.outputs.comment-id }}
|
||||||
|
|||||||
4
.github/workflows/release-npm.yml
vendored
4
.github/workflows/release-npm.yml
vendored
@@ -60,7 +60,7 @@ jobs:
|
|||||||
echo "github.ref: $GITHUB_REF"
|
echo "github.ref: $GITHUB_REF"
|
||||||
|
|
||||||
- name: Checkout workflow ref
|
- name: Checkout workflow ref
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
fetch-depth: 100
|
fetch-depth: 100
|
||||||
@@ -86,7 +86,7 @@ jobs:
|
|||||||
shell: bash
|
shell: bash
|
||||||
|
|
||||||
- name: Checkout build commit
|
- name: Checkout build commit
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
ref: ${{ inputs.grafana_commit }}
|
ref: ${{ inputs.grafana_commit }}
|
||||||
|
|||||||
10
.github/workflows/release-pr.yml
vendored
10
.github/workflows/release-pr.yml
vendored
@@ -118,14 +118,14 @@ jobs:
|
|||||||
permissions: "{\"contents\": \"write\", \"pull_requests\": \"write\", \"workflows\":\"write\"}"
|
permissions: "{\"contents\": \"write\", \"pull_requests\": \"write\", \"workflows\":\"write\"}"
|
||||||
- run: echo "RELEASE_BRANCH=release-${VERSION}" >> "$GITHUB_ENV"
|
- run: echo "RELEASE_BRANCH=release-${VERSION}" >> "$GITHUB_ENV"
|
||||||
- name: Checkout Grafana
|
- name: Checkout Grafana
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
token: ${{ steps.generate_changelog_token.outputs.token }}
|
token: ${{ steps.generate_changelog_token.outputs.token }}
|
||||||
ref: ${{ env.RELEASE_BRANCH }}
|
ref: ${{ env.RELEASE_BRANCH }}
|
||||||
fetch-tags: true
|
fetch-tags: true
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
- name: Checkout Grafana (main)
|
- name: Checkout Grafana (main)
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
token: ${{ steps.generate_changelog_token.outputs.token }}
|
token: ${{ steps.generate_changelog_token.outputs.token }}
|
||||||
ref: main
|
ref: main
|
||||||
@@ -133,10 +133,10 @@ jobs:
|
|||||||
path: .grafana-main
|
path: .grafana-main
|
||||||
|
|
||||||
- name: Setup nodejs environment
|
- name: Setup nodejs environment
|
||||||
uses: actions/setup-node@v6
|
uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version-file: .nvmrc
|
node-version-file: .nvmrc
|
||||||
- uses: actions/setup-go@v6.0.0
|
- uses: actions/setup-go@v5.5.0
|
||||||
with:
|
with:
|
||||||
go-version-file: go.mod
|
go-version-file: go.mod
|
||||||
- name: Configure git user
|
- name: Configure git user
|
||||||
@@ -196,7 +196,7 @@ jobs:
|
|||||||
run: git add CHANGELOG.md && git commit --allow-empty -m "Update changelog" CHANGELOG.md
|
run: git add CHANGELOG.md && git commit --allow-empty -m "Update changelog" CHANGELOG.md
|
||||||
- name: Bump versions
|
- name: Bump versions
|
||||||
if: ${{ inputs.bump == true || inputs.bump == 'true' }}
|
if: ${{ inputs.bump == true || inputs.bump == 'true' }}
|
||||||
uses: dagger/dagger-for-github@d913e70051faf3b907d4dd96ef1161083c88c644
|
uses: dagger/dagger-for-github@e47aba410ef9bb9ed81a4d2a97df31061e5e842e
|
||||||
with:
|
with:
|
||||||
version: 0.18.8
|
version: 0.18.8
|
||||||
verb: run
|
verb: run
|
||||||
|
|||||||
2
.github/workflows/relyance-scan.yml
vendored
2
.github/workflows/relyance-scan.yml
vendored
@@ -14,7 +14,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
|
|||||||
@@ -25,16 +25,16 @@ jobs:
|
|||||||
id-token: write
|
id-token: write
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Pin Go version to mod file
|
- name: Pin Go version to mod file
|
||||||
uses: actions/setup-go@v6.0.0
|
uses: actions/setup-go@v5.5.0
|
||||||
with:
|
with:
|
||||||
go-version-file: 'go.mod'
|
go-version-file: 'go.mod'
|
||||||
cache: true
|
cache: true
|
||||||
- run: go version
|
- run: go version
|
||||||
- uses: actions/setup-node@v6
|
- uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version-file: '.nvmrc'
|
node-version-file: '.nvmrc'
|
||||||
cache: 'yarn'
|
cache: 'yarn'
|
||||||
@@ -96,7 +96,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Restore Cached Node Modules
|
- name: Restore Cached Node Modules
|
||||||
|
|||||||
6
.github/workflows/run-schema-v2-e2e.yml
vendored
6
.github/workflows/run-schema-v2-e2e.yml
vendored
@@ -18,15 +18,15 @@ jobs:
|
|||||||
if: github.event.pull_request.draft == false
|
if: github.event.pull_request.draft == false
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Pin Go version to mod file
|
- name: Pin Go version to mod file
|
||||||
uses: actions/setup-go@v6.0.0
|
uses: actions/setup-go@v5.5.0
|
||||||
with:
|
with:
|
||||||
go-version-file: 'go.mod'
|
go-version-file: 'go.mod'
|
||||||
- run: go version
|
- run: go version
|
||||||
- uses: actions/setup-node@v6
|
- uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version-file: '.nvmrc'
|
node-version-file: '.nvmrc'
|
||||||
cache: 'yarn'
|
cache: 'yarn'
|
||||||
|
|||||||
2
.github/workflows/shellcheck.yml
vendored
2
.github/workflows/shellcheck.yml
vendored
@@ -24,7 +24,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Clone repository
|
- name: Clone repository
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Run Shellcheck
|
- name: Run Shellcheck
|
||||||
|
|||||||
2
.github/workflows/stale.yml
vendored
2
.github/workflows/stale.yml
vendored
@@ -11,7 +11,7 @@ jobs:
|
|||||||
stale:
|
stale:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/stale@v10
|
- uses: actions/stale@v9
|
||||||
with:
|
with:
|
||||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
operations-per-run: 750
|
operations-per-run: 750
|
||||||
|
|||||||
43
.github/workflows/storybook-a11y.yml
vendored
43
.github/workflows/storybook-a11y.yml
vendored
@@ -17,7 +17,7 @@ jobs:
|
|||||||
outputs:
|
outputs:
|
||||||
changed: ${{ steps.detect-changes.outputs.frontend }}
|
changed: ${{ steps.detect-changes.outputs.frontend }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: true # required to get more history in the changed-files action
|
persist-credentials: true # required to get more history in the changed-files action
|
||||||
fetch-depth: 2
|
fetch-depth: 2
|
||||||
@@ -27,57 +27,26 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
self: .github/workflows/storybook-a11y.yml
|
self: .github/workflows/storybook-a11y.yml
|
||||||
|
|
||||||
test-storybook-a11y-light:
|
test-storybook-a11y:
|
||||||
runs-on: ubuntu-latest-8-cores
|
runs-on: ubuntu-latest-8-cores
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
id-token: write
|
id-token: write
|
||||||
needs: detect-changes
|
needs: detect-changes
|
||||||
if: needs.detect-changes.outputs.changed == 'true'
|
if: needs.detect-changes.outputs.changed == 'true'
|
||||||
name: "Run Storybook a11y tests (light theme)"
|
name: "Run Storybook a11y tests"
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- uses: actions/setup-node@v6
|
- uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version-file: '.nvmrc'
|
node-version-file: '.nvmrc'
|
||||||
package-manager-cache: false # too large for GH's cache limits :-(
|
|
||||||
- run: yarn install --immutable --check-cache
|
- run: yarn install --immutable --check-cache
|
||||||
- name: Install Playwright browsers
|
- name: Install Playwright browsers
|
||||||
run: npx playwright install --with-deps
|
run: npx playwright install --with-deps
|
||||||
- name: Start Storybook
|
- name: Start Storybook
|
||||||
run: STORYBOOK_THEME=light yarn storybook &
|
run: yarn storybook &
|
||||||
- name: Run tests
|
|
||||||
# the chromium browser used by Playwright sets its locale to "en_US@posix" by default
|
|
||||||
# this is not a valid language code, and causes some stories to fail to load!
|
|
||||||
# instead, we set the LANG environment variable to en_US to override this
|
|
||||||
# see https://github.com/microsoft/playwright/issues/34046
|
|
||||||
env:
|
|
||||||
LANG: en_US
|
|
||||||
run: npx wait-on --timeout 120000 http://localhost:9001 && yarn test:storybook
|
|
||||||
|
|
||||||
test-storybook-a11y-dark:
|
|
||||||
runs-on: ubuntu-latest-8-cores
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
id-token: write
|
|
||||||
needs: detect-changes
|
|
||||||
if: needs.detect-changes.outputs.changed == 'true'
|
|
||||||
name: "Run Storybook a11y tests (dark theme)"
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v5
|
|
||||||
with:
|
|
||||||
persist-credentials: false
|
|
||||||
- uses: actions/setup-node@v6
|
|
||||||
with:
|
|
||||||
node-version-file: '.nvmrc'
|
|
||||||
package-manager-cache: false # too large for GH's cache limits :-(
|
|
||||||
- run: yarn install --immutable --check-cache
|
|
||||||
- name: Install Playwright browsers
|
|
||||||
run: npx playwright install --with-deps
|
|
||||||
- name: Start Storybook
|
|
||||||
run: STORYBOOK_THEME=dark yarn storybook &
|
|
||||||
- name: Run tests
|
- name: Run tests
|
||||||
# the chromium browser used by Playwright sets its locale to "en_US@posix" by default
|
# the chromium browser used by Playwright sets its locale to "en_US@posix" by default
|
||||||
# this is not a valid language code, and causes some stories to fail to load!
|
# this is not a valid language code, and causes some stories to fail to load!
|
||||||
|
|||||||
6
.github/workflows/swagger-gen.yml
vendored
6
.github/workflows/swagger-gen.yml
vendored
@@ -24,7 +24,7 @@ jobs:
|
|||||||
outputs:
|
outputs:
|
||||||
changed: ${{ steps.detect-changes.outputs.backend }}
|
changed: ${{ steps.detect-changes.outputs.backend }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: true # required to get more history in the changed-files action
|
persist-credentials: true # required to get more history in the changed-files action
|
||||||
fetch-depth: 2
|
fetch-depth: 2
|
||||||
@@ -45,11 +45,11 @@ jobs:
|
|||||||
steps:
|
steps:
|
||||||
# Set up repository clone
|
# Set up repository clone
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Setup Go
|
- name: Setup Go
|
||||||
uses: actions/setup-go@v6.0.0
|
uses: actions/setup-go@v5.5.0
|
||||||
with:
|
with:
|
||||||
go-version-file: go.mod
|
go-version-file: go.mod
|
||||||
- name: Setup Enterprise
|
- name: Setup Enterprise
|
||||||
|
|||||||
2
.github/workflows/sync-mirror-event.yml
vendored
2
.github/workflows/sync-mirror-event.yml
vendored
@@ -41,7 +41,7 @@ jobs:
|
|||||||
app_id: ${{ vars.DELIVERY_BOT_APP_ID }}
|
app_id: ${{ vars.DELIVERY_BOT_APP_ID }}
|
||||||
private_key: ${{ env.GRAFANA_DELIVERY_BOT_APP_PEM }}
|
private_key: ${{ env.GRAFANA_DELIVERY_BOT_APP_PEM }}
|
||||||
|
|
||||||
- uses: actions/github-script@v8
|
- uses: actions/github-script@v7
|
||||||
if: github.repository == 'grafana/grafana'
|
if: github.repository == 'grafana/grafana'
|
||||||
with:
|
with:
|
||||||
github-token: ${{ steps.generate_token.outputs.token }}
|
github-token: ${{ steps.generate_token.outputs.token }}
|
||||||
|
|||||||
6
.github/workflows/trivy-scan.yml
vendored
6
.github/workflows/trivy-scan.yml
vendored
@@ -16,11 +16,11 @@ jobs:
|
|||||||
trivy-scan:
|
trivy-scan:
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-22.04
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- name: Install Trivy
|
- name: Install Trivy
|
||||||
uses: aquasecurity/setup-trivy@e6c2c5e321ed9123bda567646e2f96565e34abe1
|
uses: aquasecurity/setup-trivy@9ea583eb67910444b1f64abf338bd2e105a0a93d
|
||||||
with:
|
with:
|
||||||
version: v0.56.2
|
version: v0.56.2
|
||||||
cache: true
|
cache: true
|
||||||
@@ -64,7 +64,7 @@ jobs:
|
|||||||
.
|
.
|
||||||
if: always() && github.repository == 'grafana/grafana'
|
if: always() && github.repository == 'grafana/grafana'
|
||||||
- name: Upload Trivy scan results to GitHub Security tab
|
- name: Upload Trivy scan results to GitHub Security tab
|
||||||
uses: github/codeql-action/upload-sarif@v4
|
uses: github/codeql-action/upload-sarif@v3
|
||||||
with:
|
with:
|
||||||
sarif_file: 'trivy-results.sarif'
|
sarif_file: 'trivy-results.sarif'
|
||||||
if: always() && github.repository == 'grafana/grafana'
|
if: always() && github.repository == 'grafana/grafana'
|
||||||
|
|||||||
4
.github/workflows/trufflehog.yml
vendored
4
.github/workflows/trufflehog.yml
vendored
@@ -26,11 +26,11 @@ jobs:
|
|||||||
shell: bash
|
shell: bash
|
||||||
run: echo "fetch_depth=$(( ${{ github.event.pull_request.commits }} + 2 ))" >> "$GITHUB_OUTPUT"
|
run: echo "fetch_depth=$(( ${{ github.event.pull_request.commits }} + 2 ))" >> "$GITHUB_OUTPUT"
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
fetch-depth: ${{ steps.fetch_depth.outputs.fetch_depth }}
|
fetch-depth: ${{ steps.fetch_depth.outputs.fetch_depth }}
|
||||||
- name: Trufflehog
|
- name: Trufflehog
|
||||||
uses: trufflesecurity/trufflehog@b84c3d14d189e16da175e2c27fa8136603783ffc # v3.90.12
|
uses: trufflesecurity/trufflehog@eafb8c5f6a06175141c27f17bcc17941853d0047 # v3.90.0
|
||||||
with:
|
with:
|
||||||
extra_args: --results=verified
|
extra_args: --results=verified
|
||||||
|
|||||||
2
.github/workflows/update-make-docs.yml
vendored
2
.github/workflows/update-make-docs.yml
vendored
@@ -8,7 +8,7 @@ jobs:
|
|||||||
if: github.repository == 'grafana/grafana'
|
if: github.repository == 'grafana/grafana'
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
- uses: grafana/writers-toolkit/update-make-docs@update-make-docs/v1 # zizmor: ignore[unpinned-uses]
|
- uses: grafana/writers-toolkit/update-make-docs@update-make-docs/v1 # zizmor: ignore[unpinned-uses]
|
||||||
|
|||||||
22
.github/workflows/update-schema-types.yml
vendored
22
.github/workflows/update-schema-types.yml
vendored
@@ -1,22 +0,0 @@
|
|||||||
name: Update Schema Types
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
paths:
|
|
||||||
- docs/sources/developers/plugins/plugin.schema.json
|
|
||||||
workflow_dispatch:
|
|
||||||
|
|
||||||
# These permissions are needed to assume roles from Github's OIDC.
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
id-token: write
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
bundle-schema-types:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v5
|
|
||||||
|
|
||||||
- uses: grafana/plugin-actions/bundle-schema-types@main
|
|
||||||
8
.github/workflows/verify-kinds.yml
vendored
8
.github/workflows/verify-kinds.yml
vendored
@@ -6,22 +6,18 @@ on:
|
|||||||
paths:
|
paths:
|
||||||
- '**/*.cue'
|
- '**/*.cue'
|
||||||
|
|
||||||
permissions: {}
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
main:
|
main:
|
||||||
runs-on: "ubuntu-latest"
|
runs-on: "ubuntu-latest"
|
||||||
permissions:
|
|
||||||
contents: read # clone repository
|
|
||||||
steps:
|
steps:
|
||||||
- name: "Checkout Grafana repo"
|
- name: "Checkout Grafana repo"
|
||||||
uses: "actions/checkout@v5"
|
uses: "actions/checkout@v4"
|
||||||
with:
|
with:
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
|
|
||||||
- name: "Setup Go"
|
- name: "Setup Go"
|
||||||
uses: "actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00"
|
uses: "actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5"
|
||||||
with:
|
with:
|
||||||
go-version-file: go.mod
|
go-version-file: go.mod
|
||||||
|
|
||||||
|
|||||||
15
.gitignore
vendored
15
.gitignore
vendored
@@ -42,7 +42,6 @@ __debug_bin*
|
|||||||
/devenv/docker/blocks/auth/saml-enterprise
|
/devenv/docker/blocks/auth/saml-enterprise
|
||||||
/devenv/docker/blocks/auth/signer
|
/devenv/docker/blocks/auth/signer
|
||||||
/devenv/docker/blocks/mt-db
|
/devenv/docker/blocks/mt-db
|
||||||
/devenv/mt-tilt
|
|
||||||
|
|
||||||
/tmp
|
/tmp
|
||||||
tools/phantomjs/phantomjs
|
tools/phantomjs/phantomjs
|
||||||
@@ -71,7 +70,6 @@ public/css/*.min.css
|
|||||||
.vs/
|
.vs/
|
||||||
.cursor/
|
.cursor/
|
||||||
.devcontainer/
|
.devcontainer/
|
||||||
.claude/
|
|
||||||
|
|
||||||
.eslintcache
|
.eslintcache
|
||||||
.stylelintcache
|
.stylelintcache
|
||||||
@@ -131,9 +129,6 @@ profile.cov
|
|||||||
/public/app/extensions
|
/public/app/extensions
|
||||||
!/public/app/extensions/.keep
|
!/public/app/extensions/.keep
|
||||||
|
|
||||||
# Enterprise operators
|
|
||||||
/pkg/operators/enterprise_*
|
|
||||||
/pkg/operators/**/enterprise_*
|
|
||||||
|
|
||||||
debug.test
|
debug.test
|
||||||
/examples/*/dist
|
/examples/*/dist
|
||||||
@@ -166,7 +161,6 @@ pkg/services/quota/quotaimpl/storage/storage.json
|
|||||||
/packages/grafana-ui/.yarn/.cache
|
/packages/grafana-ui/.yarn/.cache
|
||||||
/packages/grafana-ui/.storybook/static
|
/packages/grafana-ui/.storybook/static
|
||||||
/packages/grafana-ui/unstable
|
/packages/grafana-ui/unstable
|
||||||
/packages/grafana-flamegraph/.storybook/static
|
|
||||||
/packages/**/dist
|
/packages/**/dist
|
||||||
/packages/**/compiled
|
/packages/**/compiled
|
||||||
/packages/**/.rpt2_cache
|
/packages/**/.rpt2_cache
|
||||||
@@ -252,13 +246,6 @@ public/mockServiceWorker.js
|
|||||||
/e2e-playwright/test-plugins/*/dist
|
/e2e-playwright/test-plugins/*/dist
|
||||||
/apps/provisioning/cmd/job-controller/bin/
|
/apps/provisioning/cmd/job-controller/bin/
|
||||||
|
|
||||||
|
|
||||||
# Ignore unified storage kv store files
|
# Ignore unified storage kv store files
|
||||||
/grafana-kv-data
|
/grafana-kv-data
|
||||||
|
|
||||||
# Ignore debug output from test library
|
|
||||||
/pkg/storage/secret/metadata/testdata/rapid/TestStateMachine/
|
|
||||||
|
|
||||||
/codeowners-manifest/
|
|
||||||
|
|
||||||
# Ignore grafana/hippocampus local cache folder
|
|
||||||
.hippo
|
|
||||||
|
|||||||
@@ -83,7 +83,7 @@ linters:
|
|||||||
deny:
|
deny:
|
||||||
- pkg: github.com/grafana/grafana/pkg
|
- pkg: github.com/grafana/grafana/pkg
|
||||||
desc: apps/playlist is not allowed to import grafana core
|
desc: apps/playlist is not allowed to import grafana core
|
||||||
apps-secret:
|
apps-secret:
|
||||||
list-mode: lax
|
list-mode: lax
|
||||||
files:
|
files:
|
||||||
- ./apps/secret/*
|
- ./apps/secret/*
|
||||||
@@ -101,12 +101,8 @@ linters:
|
|||||||
- '**/pkg/tsdb/azuremonitor/**/*'
|
- '**/pkg/tsdb/azuremonitor/**/*'
|
||||||
- '**/pkg/tsdb/cloud-monitoring/*'
|
- '**/pkg/tsdb/cloud-monitoring/*'
|
||||||
- '**/pkg/tsdb/cloud-monitoring/**/*'
|
- '**/pkg/tsdb/cloud-monitoring/**/*'
|
||||||
- '**/pkg/tsdb/graphite/*'
|
|
||||||
- '**/pkg/tsdb/graphite/**/*'
|
|
||||||
- '**/pkg/tsdb/mysql/*'
|
- '**/pkg/tsdb/mysql/*'
|
||||||
- '**/pkg/tsdb/mysql/**/*'
|
- '**/pkg/tsdb/mysql/**/*'
|
||||||
- '**/pkg/tsdb/opentsdb/*'
|
|
||||||
- '**/pkg/tsdb/opentsdb/**/*'
|
|
||||||
- '**/pkg/tsdb/parca/*'
|
- '**/pkg/tsdb/parca/*'
|
||||||
- '**/pkg/tsdb/parca/**/*'
|
- '**/pkg/tsdb/parca/**/*'
|
||||||
- '**/pkg/tsdb/tempo/*'
|
- '**/pkg/tsdb/tempo/*'
|
||||||
@@ -181,9 +177,7 @@ linters:
|
|||||||
- pkg: io/ioutil
|
- pkg: io/ioutil
|
||||||
desc: 'Deprecated: As of Go 1.16, the same functionality is now provided by package io or package os, and those implementations should be preferred in new code. See the specific function documentation for details.'
|
desc: 'Deprecated: As of Go 1.16, the same functionality is now provided by package io or package os, and those implementations should be preferred in new code. See the specific function documentation for details.'
|
||||||
- pkg: gopkg.in/yaml.v2
|
- pkg: gopkg.in/yaml.v2
|
||||||
desc: use go.yaml.in/yaml/v3 instead
|
desc: Grafana packages are not allowed to depend on gopkg.in/yaml.v2 as gopkg.in/yaml.v3 is now available
|
||||||
- pkg: gopkg.in/yaml.v3
|
|
||||||
desc: use go.yaml.in/yaml/v3 instead
|
|
||||||
- pkg: github.com/pkg/errors
|
- pkg: github.com/pkg/errors
|
||||||
desc: 'Deprecated: Go 1.13 supports the functionality provided by pkg/errors in the standard library.'
|
desc: 'Deprecated: Go 1.13 supports the functionality provided by pkg/errors in the standard library.'
|
||||||
- pkg: github.com/xorcare/pointer
|
- pkg: github.com/xorcare/pointer
|
||||||
|
|||||||
@@ -14,9 +14,6 @@ public/sass/*.generated.scss
|
|||||||
scripts/grafana-server/tmp
|
scripts/grafana-server/tmp
|
||||||
vendor
|
vendor
|
||||||
|
|
||||||
/coverage
|
|
||||||
/codeowners-manifest
|
|
||||||
|
|
||||||
# TS generate from cue by cuetsy
|
# TS generate from cue by cuetsy
|
||||||
**/*.gen.ts
|
**/*.gen.ts
|
||||||
|
|
||||||
@@ -26,7 +23,6 @@ vendor
|
|||||||
# Auto-generated theme files
|
# Auto-generated theme files
|
||||||
theme.light.generated.json
|
theme.light.generated.json
|
||||||
theme.dark.generated.json
|
theme.dark.generated.json
|
||||||
public/app/features/theme-playground/schema.generated.json
|
|
||||||
|
|
||||||
# Generated Swagger API specs
|
# Generated Swagger API specs
|
||||||
public/api-merged.json
|
public/api-merged.json
|
||||||
|
|||||||
942
.yarn/releases/yarn-4.11.0.cjs
vendored
942
.yarn/releases/yarn-4.11.0.cjs
vendored
File diff suppressed because one or more lines are too long
942
.yarn/releases/yarn-4.9.2.cjs
vendored
Executable file
942
.yarn/releases/yarn-4.9.2.cjs
vendored
Executable file
File diff suppressed because one or more lines are too long
@@ -25,6 +25,4 @@ plugins:
|
|||||||
path: .yarn/plugins/@yarnpkg/plugin-licenses.cjs
|
path: .yarn/plugins/@yarnpkg/plugin-licenses.cjs
|
||||||
spec: "https://raw.githubusercontent.com/mhassan1/yarn-plugin-licenses/v0.15.0/bundles/@yarnpkg/plugin-licenses.js"
|
spec: "https://raw.githubusercontent.com/mhassan1/yarn-plugin-licenses/v0.15.0/bundles/@yarnpkg/plugin-licenses.js"
|
||||||
|
|
||||||
yarnPath: .yarn/releases/yarn-4.11.0.cjs
|
yarnPath: .yarn/releases/yarn-4.9.2.cjs
|
||||||
|
|
||||||
enableScripts: false
|
|
||||||
|
|||||||
297
AGENTS.md
297
AGENTS.md
@@ -1,297 +0,0 @@
|
|||||||
# AGENTS.md
|
|
||||||
|
|
||||||
<!-- docs-ai-begin -->
|
|
||||||
|
|
||||||
<!-- version: 1.1.0 -->
|
|
||||||
|
|
||||||
## Documentation
|
|
||||||
|
|
||||||
Instructions for documentation authoring in Markdown files.
|
|
||||||
|
|
||||||
DOCS.md contains all the Docs AI toolkit docs in one file.
|
|
||||||
|
|
||||||
## Role
|
|
||||||
|
|
||||||
Act as an experienced software engineer and technical writer for Grafana Labs.
|
|
||||||
|
|
||||||
Write for software developers and engineers who understand general programming concepts.
|
|
||||||
|
|
||||||
Focus on practical implementation and clear problem-solving guidance.
|
|
||||||
|
|
||||||
### Grafana
|
|
||||||
|
|
||||||
Use full product names on first mention, then short names:
|
|
||||||
|
|
||||||
- Grafana Alloy (full), Alloy (short)
|
|
||||||
- Grafana Beyla (full), Beyla (short)
|
|
||||||
|
|
||||||
Use "OpenTelemetry Collector" on first mention, then "Collector" for subsequent references.
|
|
||||||
Keep full name for distributions, headings, and links.
|
|
||||||
|
|
||||||
Always use "Grafana Cloud" in full.
|
|
||||||
|
|
||||||
Use complete terms:
|
|
||||||
|
|
||||||
- "OpenTelemetry" (not "OTel")
|
|
||||||
- "Kubernetes" (not "K8s")
|
|
||||||
|
|
||||||
Present observability signals in order: metrics, logs, traces, and profiles.
|
|
||||||
|
|
||||||
Focus content on Grafana solutions when discussing integrations or migrations.
|
|
||||||
|
|
||||||
## Style
|
|
||||||
|
|
||||||
### Structure
|
|
||||||
|
|
||||||
Structure articles into sections with headings.
|
|
||||||
|
|
||||||
Leave Markdown front matter content between two triple dashes `---`.
|
|
||||||
|
|
||||||
The front matter YAML `title` and the content h1 (#) heading should be the same.
|
|
||||||
Make sure there's an h1 heading in the content; this redundancy is required.
|
|
||||||
|
|
||||||
Always include copy after a heading or between headings, for example:
|
|
||||||
|
|
||||||
```markdown
|
|
||||||
## Heading
|
|
||||||
|
|
||||||
Immediately followed by copy and not another heading.
|
|
||||||
|
|
||||||
## Sub heading
|
|
||||||
```
|
|
||||||
|
|
||||||
The immediate copy after a heading should introduce and provide an overview of what's covered in the section.
|
|
||||||
|
|
||||||
Start articles with an introduction that covers the goal of the article. Example goals:
|
|
||||||
|
|
||||||
- Learn concepts
|
|
||||||
- Set up or install something
|
|
||||||
- Configure something
|
|
||||||
- Use a product to solve a business problem
|
|
||||||
- Troubleshoot a problem
|
|
||||||
- Integrate with other software or systems
|
|
||||||
- Migrate from one thing to another
|
|
||||||
- Refer to APIs or reference documentation
|
|
||||||
|
|
||||||
Follow the goal with a list of prerequisites, for example:
|
|
||||||
|
|
||||||
```markdown
|
|
||||||
Before you begin, ensure you have the following:
|
|
||||||
|
|
||||||
- <Prerequisite 1>
|
|
||||||
- <Prerequisite 2>
|
|
||||||
- ...
|
|
||||||
```
|
|
||||||
|
|
||||||
Suggest and link to next steps and related resources at the end of the article, for example:
|
|
||||||
|
|
||||||
- Learn more about A, B, C
|
|
||||||
- Configure X
|
|
||||||
- Use X to achieve Y
|
|
||||||
- Use X to achieve Z
|
|
||||||
- Project homepage or documentation
|
|
||||||
- Project repository (for example, GitHub, GitLab)
|
|
||||||
- Project package (for example, pip or NPM)
|
|
||||||
|
|
||||||
You don't need to use the "Refer to..." syntax for next steps; use the link text directly.
|
|
||||||
|
|
||||||
### Copy
|
|
||||||
|
|
||||||
Write simple, direct copy with short sentences and paragraphs.
|
|
||||||
|
|
||||||
Use contractions:
|
|
||||||
|
|
||||||
- it's, isn't, that's, you're, don't
|
|
||||||
|
|
||||||
Choose simple words:
|
|
||||||
|
|
||||||
- use (not utilize)
|
|
||||||
- help (not assist)
|
|
||||||
- show (not demonstrate)
|
|
||||||
|
|
||||||
Write with verbs and nouns. Use minimal adjectives except when describing Grafana Labs products.
|
|
||||||
|
|
||||||
## Tense
|
|
||||||
|
|
||||||
Write in present simple tense.
|
|
||||||
|
|
||||||
Avoid present continuous tense.
|
|
||||||
|
|
||||||
Only write in future tense to show future actions.
|
|
||||||
|
|
||||||
### Voice
|
|
||||||
|
|
||||||
Always write in an active voice.
|
|
||||||
|
|
||||||
Change passive voice to active voice.
|
|
||||||
|
|
||||||
### Perspective
|
|
||||||
|
|
||||||
Address users as "you".
|
|
||||||
|
|
||||||
Use second person perspective consistently.
|
|
||||||
|
|
||||||
### Wordlist
|
|
||||||
|
|
||||||
Use allowlist/blocklist instead of whitelist/blacklist.
|
|
||||||
|
|
||||||
Use primary/secondary instead of master/slave.
|
|
||||||
|
|
||||||
Use "refer to" instead of "see", "consult", "check out", and other phrases.
|
|
||||||
|
|
||||||
### Formatting
|
|
||||||
|
|
||||||
Use sentence case for titles and headings.
|
|
||||||
|
|
||||||
Use inline Markdown links: [Link text](https://example.com).
|
|
||||||
|
|
||||||
Link to other sections using descriptive phrases that include the section name:
|
|
||||||
"For setup details, refer to the [Lists](#lists) section."
|
|
||||||
|
|
||||||
Bold text with two asterisks: **bold**
|
|
||||||
|
|
||||||
Emphasize text with one underscore: _italics_
|
|
||||||
|
|
||||||
Format UI elements using sentence case as they appear:
|
|
||||||
|
|
||||||
- Click **Submit**.
|
|
||||||
- Navigate to **User settings**.
|
|
||||||
- Configure **Alerting rules**.
|
|
||||||
|
|
||||||
### Lists
|
|
||||||
|
|
||||||
Write complete sentences for lists:
|
|
||||||
|
|
||||||
- Works with all languages and frameworks (correct)
|
|
||||||
- All languages and frameworks (incorrect)
|
|
||||||
|
|
||||||
Use dashes for unordered lists.
|
|
||||||
|
|
||||||
Bold keywords at list start and follow with a colon.
|
|
||||||
|
|
||||||
### Images
|
|
||||||
|
|
||||||
Include descriptive alt text that conveys the essential information or purpose.
|
|
||||||
|
|
||||||
Write alt text without "Image of..." or "Picture of..." prefixes.
|
|
||||||
|
|
||||||
### Code
|
|
||||||
|
|
||||||
Use single code backticks for:
|
|
||||||
|
|
||||||
- user input
|
|
||||||
- placeholders in markdown, for example _`<PLACEHOLDER_NAME>`_
|
|
||||||
- files and directories, for example `/opt/file.md`
|
|
||||||
- source code keywords and identifiers,
|
|
||||||
for example variables, function and class names
|
|
||||||
- configuration options and values, for example `PORT` and `80`
|
|
||||||
- status codes, for example `404`
|
|
||||||
|
|
||||||
Use triple code backticks followed by the syntax for code blocks, for example:
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
console.log('Hello World!');
|
|
||||||
```
|
|
||||||
|
|
||||||
Introduce each code block with a short description.
|
|
||||||
End the introduction with a colon if the code sample follows it, for example:
|
|
||||||
|
|
||||||
```markdown
|
|
||||||
The code sample outputs "Hello World!" to the browser console:
|
|
||||||
|
|
||||||
<CODE_BLOCK>
|
|
||||||
```
|
|
||||||
|
|
||||||
Use descriptive placeholder names in code samples.
|
|
||||||
Use uppercase letters with underscores to separate words in placeholders,
|
|
||||||
for example:
|
|
||||||
|
|
||||||
```sh
|
|
||||||
OTEL_RESOURCE_ATTRIBUTES="service.name=<SERVICE_NAME>
|
|
||||||
OTEL_EXPORTER_OTLP_ENDPOINT=<OTLP_ENDPOINT>
|
|
||||||
```
|
|
||||||
|
|
||||||
The placeholder includes the name and the less than and greater than symbols,
|
|
||||||
for example <PLACEHOLDER_NAME>.
|
|
||||||
|
|
||||||
If the placeholder is markdown emphasize it with underscores,
|
|
||||||
for example _`<PLACEHOLDER_NAME>`_.
|
|
||||||
|
|
||||||
In code blocks use the placeholder without additional backticks or emphasis,
|
|
||||||
for example <PLACEHOLDER_NAME>.
|
|
||||||
|
|
||||||
Provide an explanation for each placeholder,
|
|
||||||
typically in the text following the code block or in a configuration section.
|
|
||||||
|
|
||||||
Follow code samples with an explanation
|
|
||||||
and configuration options for placeholders, for example:
|
|
||||||
|
|
||||||
```markdown
|
|
||||||
<CODE_BLOCK>
|
|
||||||
|
|
||||||
This code sets required environment variables
|
|
||||||
to send OTLP data to an OTLP endpoint.
|
|
||||||
To configure the code refer to the configuration section.
|
|
||||||
|
|
||||||
<CONFIGURATION>
|
|
||||||
```
|
|
||||||
|
|
||||||
Put configuration for a code block after the code block.
|
|
||||||
|
|
||||||
## APIs
|
|
||||||
|
|
||||||
When documenting API endpoints specify the HTTP method,
|
|
||||||
for example `GET`, `POST`, `PUT`, `DELETE`.
|
|
||||||
|
|
||||||
Provide the full request path, using backticks.
|
|
||||||
|
|
||||||
Use backticks for parameter names and example values.
|
|
||||||
|
|
||||||
Use placeholders like `{userId}` for path parameters, for example:
|
|
||||||
|
|
||||||
- To retrieve user details, make a `GET` request to `/api/v1/users/{userId}`.
|
|
||||||
|
|
||||||
### CLI commands
|
|
||||||
|
|
||||||
When presenting CLI commands and their output,
|
|
||||||
introduce the command with a brief explanation of its purpose.
|
|
||||||
Clearly distinguish the command from its output.
|
|
||||||
|
|
||||||
For commands, use `sh` to specify the code block language.
|
|
||||||
|
|
||||||
For output, use a generic specifier like `text`, `console`,
|
|
||||||
or `json`/`yaml` if the output is structured.
|
|
||||||
|
|
||||||
For example:
|
|
||||||
|
|
||||||
```markdown
|
|
||||||
To list all running pods in the `default` namespace, use the following command:
|
|
||||||
|
|
||||||
<CODE_BLOCK>
|
|
||||||
```
|
|
||||||
|
|
||||||
The output will resemble the following:
|
|
||||||
|
|
||||||
```text
|
|
||||||
NAME READY STATUS RESTARTS AGE
|
|
||||||
my-app-deployment-7fdb6c5f65-abcde 1/1 Running 0 2d1h
|
|
||||||
another-service-pod-xyz123 2/2 Running 0 5h30m
|
|
||||||
```
|
|
||||||
|
|
||||||
### Shortcodes
|
|
||||||
|
|
||||||
Leave Hugo shortcodes in the content when editing.
|
|
||||||
|
|
||||||
Use our custom admonition Hugo shortcode for notes, cautions, or warnings,
|
|
||||||
with `<TYPE>` as "note", "caution", or "warning":
|
|
||||||
|
|
||||||
```markdown
|
|
||||||
{{< admonition type="<TYPE>" >}}
|
|
||||||
...
|
|
||||||
{{< /admonition >}}
|
|
||||||
```
|
|
||||||
|
|
||||||
Use admonitions sparingly.
|
|
||||||
Only include exceptional information in admonitions.
|
|
||||||
|
|
||||||
<!-- docs-ai-end -->
|
|
||||||
558
CHANGELOG.md
558
CHANGELOG.md
@@ -1,561 +1,3 @@
|
|||||||
<!-- 12.3.0 START -->
|
|
||||||
|
|
||||||
# 12.3.0 (2025-11-19)
|
|
||||||
|
|
||||||
### Features and enhancements
|
|
||||||
|
|
||||||
- **API Clients:** Add lazy hooks to clients [#113226](https://github.com/grafana/grafana/pull/113226), [@tomratcliffe](https://github.com/tomratcliffe)
|
|
||||||
- **API clients:** Automatically set PATCH headers [#111879](https://github.com/grafana/grafana/pull/111879), [@Clarity-89](https://github.com/Clarity-89)
|
|
||||||
- **API clients:** Extract into a package [#111810](https://github.com/grafana/grafana/pull/111810), [@Clarity-89](https://github.com/Clarity-89)
|
|
||||||
- **API clients:** Extract into a package (Enterprise)
|
|
||||||
- **API clients:** Update API clients to include all endpoints & add hooks [#113061](https://github.com/grafana/grafana/pull/113061), [@tomratcliffe](https://github.com/tomratcliffe)
|
|
||||||
- **AccessControl:** Include hidden roles in service account role display [#112924](https://github.com/grafana/grafana/pull/112924), [@Jguer](https://github.com/Jguer)
|
|
||||||
- **AccessControl:** Increase limit of LBAC for Datasources rules [#111560](https://github.com/grafana/grafana/pull/111560), [@Jguer](https://github.com/Jguer)
|
|
||||||
- **Accessibility:** Wrap data source info onto 2 lines at small viewports [#113033](https://github.com/grafana/grafana/pull/113033), [@ashharrison90](https://github.com/ashharrison90)
|
|
||||||
- **Alert Enrichment:** Add mutator to insert rule UID labels to allow for efficient use of labelSelector (Enterprise)
|
|
||||||
- **Alerting:** Add enrichment components to rule view page (Enterprise)
|
|
||||||
- **Alerting:** Add enrichment section to rule view page (Enterprise)
|
|
||||||
- **Alerting:** Add jitter support for periodic alert state storage to reduce database load spikes [#111357](https://github.com/grafana/grafana/pull/111357), [@softho0n](https://github.com/softho0n)
|
|
||||||
- **Alerting:** Add position-based matching for identical alert rules [#112407](https://github.com/grafana/grafana/pull/112407), [@konrad147](https://github.com/konrad147)
|
|
||||||
- **Alerting:** Create alertingAlertRuleFormSchema in restrictedGrafanaApis [#112794](https://github.com/grafana/grafana/pull/112794), [@soniaAguilarPeiron](https://github.com/soniaAguilarPeiron)
|
|
||||||
- **Alerting:** Display error message in central state history view [#111445](https://github.com/grafana/grafana/pull/111445), [@laurenashleigh](https://github.com/laurenashleigh)
|
|
||||||
- **Alerting:** Enrichment per rule wip-2 (Enterprise)
|
|
||||||
- **Alerting:** Hide metadata if grouping by folder [#113216](https://github.com/grafana/grafana/pull/113216), [@laurenashleigh](https://github.com/laurenashleigh)
|
|
||||||
- **Alerting:** Improve template ai helper prompt and add some examples (Enterprise)
|
|
||||||
- **Alerting:** Move enrichment tab between details and versions [#110886](https://github.com/grafana/grafana/pull/110886), [@laurenashleigh](https://github.com/laurenashleigh)
|
|
||||||
- **Alerting:** Remove ai feedback button from alert form [#112713](https://github.com/grafana/grafana/pull/112713), [@soniaAguilarPeiron](https://github.com/soniaAguilarPeiron)
|
|
||||||
- **Alerting:** Remove unused components [#111320](https://github.com/grafana/grafana/pull/111320), [@laurenashleigh](https://github.com/laurenashleigh)
|
|
||||||
- **Alerting:** Remove useRulesSourcesWithRuler for SmartAlertTypeDetector [#111623](https://github.com/grafana/grafana/pull/111623), [@soniaAguilarPeiron](https://github.com/soniaAguilarPeiron)
|
|
||||||
- **Alerting:** Surface remote AM silence creation errors properly [#112757](https://github.com/grafana/grafana/pull/112757), [@moustafab](https://github.com/moustafab)
|
|
||||||
- **Alerting:** Triage [#110339](https://github.com/grafana/grafana/pull/110339), [@gillesdemey](https://github.com/gillesdemey)
|
|
||||||
- **Alerting:** Triage rule details drawer [#112055](https://github.com/grafana/grafana/pull/112055), [@konrad147](https://github.com/konrad147)
|
|
||||||
- **Alerting:** Update prompt examples for template AI Helper (Enterprise)
|
|
||||||
- **Alerting:** Update width to instance details drawer in Triage page [#113209](https://github.com/grafana/grafana/pull/113209), [@soniaAguilarPeiron](https://github.com/soniaAguilarPeiron)
|
|
||||||
- **Alerting:** Use new enrichment endpoints in FE (Enterprise)
|
|
||||||
- **Alerting:** Use ruleUid as a prop instead of extracting it from the rule context (Enterprise)
|
|
||||||
- **Analytics:** Aggregate daily summary in datasources analytics (Enterprise)
|
|
||||||
- **Analytics:** Apply proper batching to Loki exports and add configurable settings (Enterprise)
|
|
||||||
- **Annotations:** Exclude internal dashboard id when saved via UID [#111535](https://github.com/grafana/grafana/pull/111535), [@ryantxu](https://github.com/ryantxu)
|
|
||||||
- **Azure:** Use SSO settings in plugin context [#112058](https://github.com/grafana/grafana/pull/112058), [@aangelisc](https://github.com/aangelisc)
|
|
||||||
- **Buttons:** Active style for buttons [#111235](https://github.com/grafana/grafana/pull/111235), [@gtk-grafana](https://github.com/gtk-grafana)
|
|
||||||
- **Caching:** Disable cache if datasource has oauthPassThru=true (Enterprise)
|
|
||||||
- **Canvas:** Allow non-icon bg image fields [#112308](https://github.com/grafana/grafana/pull/112308), [@fastfrwrd](https://github.com/fastfrwrd)
|
|
||||||
- **Chore:** Add logsdrilldown replace to apps/iam/go.mod [#112581](https://github.com/grafana/grafana/pull/112581), [@njvrzm](https://github.com/njvrzm)
|
|
||||||
- **CloudWatch Logs:** Don't add console link to every field in the logs response [#112230](https://github.com/grafana/grafana/pull/112230), [@idastambuk](https://github.com/idastambuk)
|
|
||||||
- **CloudWatch Logs:** Support Log Anomalies query type [#113067](https://github.com/grafana/grafana/pull/113067), [@idastambuk](https://github.com/idastambuk)
|
|
||||||
- **CloudWatch:** Add syntax highlighting and autocomplete for logs diff command [#111207](https://github.com/grafana/grafana/pull/111207), [@kevinwcyu](https://github.com/kevinwcyu)
|
|
||||||
- **CloudWatch:** Add tracking for logs anomalies [#113181](https://github.com/grafana/grafana/pull/113181), [@idastambuk](https://github.com/idastambuk)
|
|
||||||
- **Dashboard Controls:** Add annotations to the dashboard controls menu [#112816](https://github.com/grafana/grafana/pull/112816), [@leventebalogh](https://github.com/leventebalogh)
|
|
||||||
- **Dashboard Picker:** Update to use correct search + dashboards APIs [#112341](https://github.com/grafana/grafana/pull/112341), [@tomratcliffe](https://github.com/tomratcliffe)
|
|
||||||
- **Dashboard:** Backend always set `metricEditorMode: 0` regardless `metricQueryType` and `expression` [#111613](https://github.com/grafana/grafana/pull/111613), [@ivanortegaalba](https://github.com/ivanortegaalba)
|
|
||||||
- **Dashboards:** Add a new variable type called "Switch" [#111366](https://github.com/grafana/grafana/pull/111366), [@leventebalogh](https://github.com/leventebalogh)
|
|
||||||
- **Dashboards:** Hide error notifications in kiosk mode on dashboards [#112390](https://github.com/grafana/grafana/pull/112390), [@ivanortegaalba](https://github.com/ivanortegaalba)
|
|
||||||
- **Dynamic Dashboards:** Expand dashboards_init_dashboard_completed tracking info [#111102](https://github.com/grafana/grafana/pull/111102), [@idastambuk](https://github.com/idastambuk)
|
|
||||||
- **ErrorBoundary:** Report specific boundary type to Faro [#112071](https://github.com/grafana/grafana/pull/112071), [@tskarhed](https://github.com/tskarhed)
|
|
||||||
- **Explore:** Use compact mode only when targeting Tempo [#113037](https://github.com/grafana/grafana/pull/113037), [@ifrost](https://github.com/ifrost)
|
|
||||||
- **FeatureToggles:** Remove deprecated experimental apiserver [#111617](https://github.com/grafana/grafana/pull/111617), [@ryantxu](https://github.com/ryantxu)
|
|
||||||
- **Fields Selector:** Add component and integrate with Logs and Logs table visualization [#112534](https://github.com/grafana/grafana/pull/112534), [@matyax](https://github.com/matyax)
|
|
||||||
- **Flame Graph:** Anchor exact match when clicking a table symbol in search [#111101](https://github.com/grafana/grafana/pull/111101), [@samarthbagga-meesho](https://github.com/samarthbagga-meesho)
|
|
||||||
- **FlameGraph:** Improve prompt for open assistant to analyze flamegraph [#113071](https://github.com/grafana/grafana/pull/113071), [@simonswine](https://github.com/simonswine)
|
|
||||||
- **FolderPicker:** Don't show expand button for empty folders and move search icon [#111872](https://github.com/grafana/grafana/pull/111872), [@aocenas](https://github.com/aocenas)
|
|
||||||
- **FolderPicker:** Show parent folder when searching [#111026](https://github.com/grafana/grafana/pull/111026), [@aocenas](https://github.com/aocenas)
|
|
||||||
- **Geomap:** Add a MapLibre style base layer [#109841](https://github.com/grafana/grafana/pull/109841), [@remogeissbuehler](https://github.com/remogeissbuehler)
|
|
||||||
- **Geomap:** Move beta layers to GA [#113186](https://github.com/grafana/grafana/pull/113186), [@drew08t](https://github.com/drew08t)
|
|
||||||
- **Go:** Update to 1.25.2 + golangci-lint v2.5.0 + golang.org/x/net v0.45.0 [#112149](https://github.com/grafana/grafana/pull/112149), [@macabu](https://github.com/macabu)
|
|
||||||
- **Go:** Update to 1.25.3 [#112359](https://github.com/grafana/grafana/pull/112359), [@macabu](https://github.com/macabu)
|
|
||||||
- **Grafana Advisor:** Prometheus Type Migration check [#110853](https://github.com/grafana/grafana/pull/110853), [@bossinc](https://github.com/bossinc)
|
|
||||||
- **Grafana Data Source:** Add random walk configuration options [#113009](https://github.com/grafana/grafana/pull/113009), [@nmarrs](https://github.com/nmarrs)
|
|
||||||
- **IAM:** Add uid column in team_member DB table [#112439](https://github.com/grafana/grafana/pull/112439), [@dmihai](https://github.com/dmihai)
|
|
||||||
- **Jaeger:** Migrate API calls to gRPC endpoint [#113297](https://github.com/grafana/grafana/pull/113297), [@jcolladokuri](https://github.com/jcolladokuri)
|
|
||||||
- **LBAC for data sources:** Provide user feedback of potential performance loss from LBAC rules (Enterprise)
|
|
||||||
- **Library Panels:** Remove direct use of legacy search [#112231](https://github.com/grafana/grafana/pull/112231), [@tomratcliffe](https://github.com/tomratcliffe)
|
|
||||||
- **Logs panel:** Respect selected fields for downloading logs [#111753](https://github.com/grafana/grafana/pull/111753), [@matyax](https://github.com/matyax)
|
|
||||||
- **Nav:** Render menu items as `p` tags so truncation logic can work [#113248](https://github.com/grafana/grafana/pull/113248), [@tomratcliffe](https://github.com/tomratcliffe)
|
|
||||||
- **Navigation:** Move Cost management and billing plugin to root [#111739](https://github.com/grafana/grafana/pull/111739), [@gubjanos](https://github.com/gubjanos)
|
|
||||||
- **PanelTimeCompare:** Support saving time compare window [#113150](https://github.com/grafana/grafana/pull/113150), [@torkelo](https://github.com/torkelo)
|
|
||||||
- **PanelTimeSettings:** Support panel time range settings changes from dashboard in view mode [#113027](https://github.com/grafana/grafana/pull/113027), [@torkelo](https://github.com/torkelo)
|
|
||||||
- **Plugins:** Install Grafana Pathfinder behind a feature flag [#109909](https://github.com/grafana/grafana/pull/109909), [@Jayclifford345](https://github.com/Jayclifford345)
|
|
||||||
- **PostgreSQL:** Support PGPASSFILE by making password optional [#108856](https://github.com/grafana/grafana/pull/108856), [@taraspos](https://github.com/taraspos)
|
|
||||||
- **Provisioning:** Watch file system for changes [#112184](https://github.com/grafana/grafana/pull/112184), [@ryantxu](https://github.com/ryantxu)
|
|
||||||
- **Reporting:** Add support for schema v2 dashboards (Enterprise)
|
|
||||||
- **Reporting:** Wait for streaming to end before exporting CSVs (Enterprise)
|
|
||||||
- **SQL Expressions:** Add Functions to Allow list [#113291](https://github.com/grafana/grafana/pull/113291), [@kylebrandt](https://github.com/kylebrandt)
|
|
||||||
- **Snapshots:** Use appSubUrl for View all snapshots [#111652](https://github.com/grafana/grafana/pull/111652), [@Clarity-89](https://github.com/Clarity-89)
|
|
||||||
- **Span Details:** Bring back span id to span details [#112411](https://github.com/grafana/grafana/pull/112411), [@ifrost](https://github.com/ifrost)
|
|
||||||
- **Span Details:** Wrap label values [#112413](https://github.com/grafana/grafana/pull/112413), [@ifrost](https://github.com/ifrost)
|
|
||||||
- **Stars:** Refactor StarsToolbarButton and unify nav update logic [#112582](https://github.com/grafana/grafana/pull/112582), [@tomratcliffe](https://github.com/tomratcliffe)
|
|
||||||
- **Stat/BarGauge:** Border radius tweak [#112562](https://github.com/grafana/grafana/pull/112562), [@torkelo](https://github.com/torkelo)
|
|
||||||
- **Table:** Add some error-case handling to ImageCell [#110461](https://github.com/grafana/grafana/pull/110461), [@fastfrwrd](https://github.com/fastfrwrd)
|
|
||||||
- **Table:** Allow FieldType.other containing arrays to use Pills [#111205](https://github.com/grafana/grafana/pull/111205), [@fastfrwrd](https://github.com/fastfrwrd)
|
|
||||||
- **Table:** Disable virtualization, hover overflow, and scrollbar width resizing on Safari 26 [#111834](https://github.com/grafana/grafana/pull/111834), [@fastfrwrd](https://github.com/fastfrwrd)
|
|
||||||
- **Table:** Pill and JSON Cells should allow formatting [#111951](https://github.com/grafana/grafana/pull/111951), [@fastfrwrd](https://github.com/fastfrwrd)
|
|
||||||
- **Table:** Support DataLinks and Actions in SparklineCell [#112244](https://github.com/grafana/grafana/pull/112244), [@fastfrwrd](https://github.com/fastfrwrd)
|
|
||||||
- **Table:** Update ad-hoc filter to use name instead of displayName [#112815](https://github.com/grafana/grafana/pull/112815), [@fastfrwrd](https://github.com/fastfrwrd)
|
|
||||||
- **Tempo:** Migrates tags and tag values to datasource backend CallResource requests (Enterprise)
|
|
||||||
- **Theme:** Changes light theme canvas color a more white shade [#111318](https://github.com/grafana/grafana/pull/111318), [@torkelo](https://github.com/torkelo)
|
|
||||||
- **Themes:** Update themes border radius [#111478](https://github.com/grafana/grafana/pull/111478), [@torkelo](https://github.com/torkelo)
|
|
||||||
- **TimeComparison:** Automatically show/hide menu on hover [#112750](https://github.com/grafana/grafana/pull/112750), [@jesdavpet](https://github.com/jesdavpet)
|
|
||||||
- **TimeSeries:** Allow custom time units on x-axis [#112913](https://github.com/grafana/grafana/pull/112913), [@leeoniya](https://github.com/leeoniya)
|
|
||||||
- **Timeseries:** Numeric duration values could render as NaN (#73795) [#112076](https://github.com/grafana/grafana/pull/112076), [@fastfrwrd](https://github.com/fastfrwrd)
|
|
||||||
- **Transformations:** Hide "Match all/any" conditions for less than two filters [#109754](https://github.com/grafana/grafana/pull/109754), [@sudoice](https://github.com/sudoice)
|
|
||||||
- **UI Extensions:** Remove path validation from link extensions [#112259](https://github.com/grafana/grafana/pull/112259), [@leventebalogh](https://github.com/leventebalogh)
|
|
||||||
|
|
||||||
### Bug fixes
|
|
||||||
|
|
||||||
- **Access Control:** Fix the permission checks for saving/updating/deleting annotations [#112953](https://github.com/grafana/grafana/pull/112953), [@IevaVasiljeva](https://github.com/IevaVasiljeva)
|
|
||||||
- **Accessibility:** Improve no-unreduced-motion rule and fix violations [#110304](https://github.com/grafana/grafana/pull/110304), [@tomratcliffe](https://github.com/tomratcliffe)
|
|
||||||
- **Alerting Provisioning:** Don't error on recording rules without conditions [#109410](https://github.com/grafana/grafana/pull/109410), [@djpnicholls](https://github.com/djpnicholls)
|
|
||||||
- **Alerting:** Clear outdated settings when switching contact point type [#111869](https://github.com/grafana/grafana/pull/111869), [@konrad147](https://github.com/konrad147)
|
|
||||||
- **Alerting:** Fix enrichment tab to be rendered only for grafana alerting rules [#113030](https://github.com/grafana/grafana/pull/113030), [@soniaAguilarPeiron](https://github.com/soniaAguilarPeiron)
|
|
||||||
- **Alerting:** Fix instances matching in notification policies [#112326](https://github.com/grafana/grafana/pull/112326), [@konrad147](https://github.com/konrad147)
|
|
||||||
- **Alerting:** Fix threshold params [#111645](https://github.com/grafana/grafana/pull/111645), [@soniaAguilarPeiron](https://github.com/soniaAguilarPeiron)
|
|
||||||
- **Alerting:** Fix unmarshalling of GettableStatus to include time intervals [#112602](https://github.com/grafana/grafana/pull/112602), [@yuri-tceretian](https://github.com/yuri-tceretian)
|
|
||||||
- **Alerting:** Migrate `spec.title` and `spec.name` fieldSelectors [#111993](https://github.com/grafana/grafana/pull/111993), [@gillesdemey](https://github.com/gillesdemey)
|
|
||||||
- **Alerting:** Normalize health when filtering rules [#113087](https://github.com/grafana/grafana/pull/113087), [@gillesdemey](https://github.com/gillesdemey)
|
|
||||||
- **Alerting:** Prohibit receivers with empty name [#113064](https://github.com/grafana/grafana/pull/113064), [@yuri-tceretian](https://github.com/yuri-tceretian)
|
|
||||||
- **Alerting:** Provisioning to fix contact point type on save [#112246](https://github.com/grafana/grafana/pull/112246), [@yuri-tceretian](https://github.com/yuri-tceretian)
|
|
||||||
- **Alerting:** Remove \_\_grafana_origin when duplicating rule [#112396](https://github.com/grafana/grafana/pull/112396), [@soniaAguilarPeiron](https://github.com/soniaAguilarPeiron)
|
|
||||||
- **AnnoList:** Fix annotations not loading when in a repeated row [#111540](https://github.com/grafana/grafana/pull/111540), [@joshhunt](https://github.com/joshhunt)
|
|
||||||
- **Annotations:** Fix issue with transformation logic in scenes [#112288](https://github.com/grafana/grafana/pull/112288), [@fastfrwrd](https://github.com/fastfrwrd)
|
|
||||||
- **Auth:** Fix render user OAuth passthrough [#111636](https://github.com/grafana/grafana/pull/111636), [@charandas](https://github.com/charandas)
|
|
||||||
- **ComboBox:** Add loading state to dropdown and prefixIcon [#112967](https://github.com/grafana/grafana/pull/112967), [@tomratcliffe](https://github.com/tomratcliffe)
|
|
||||||
- **Connections:** Fix connections home page on enterprise [#111751](https://github.com/grafana/grafana/pull/111751), [@oshirohugo](https://github.com/oshirohugo)
|
|
||||||
- **Dashboard:** Fix editor specific permissions in /api [#113292](https://github.com/grafana/grafana/pull/113292), [@stephaniehingtgen](https://github.com/stephaniehingtgen)
|
|
||||||
- **Dashboards:** Fix bug with anon users with editor permissions creating dashboards [#113260](https://github.com/grafana/grafana/pull/113260), [@stephaniehingtgen](https://github.com/stephaniehingtgen)
|
|
||||||
- **Dashboards:** Fix missing Ctrl+O keyboard shortcut for crosshair toggle [#111310](https://github.com/grafana/grafana/pull/111310), [@ivanortegaalba](https://github.com/ivanortegaalba)
|
|
||||||
- **Dashboards:** Fix moving to root folder [#111515](https://github.com/grafana/grafana/pull/111515), [@stephaniehingtgen](https://github.com/stephaniehingtgen)
|
|
||||||
- **Dashboards:** Fix preload field not being persisted via /v1beta1 [#112475](https://github.com/grafana/grafana/pull/112475), [@ivanortegaalba](https://github.com/ivanortegaalba)
|
|
||||||
- **Flame Graph:** Use suffix for values formatted with a short formatter [#110999](https://github.com/grafana/grafana/pull/110999), [@ifrost](https://github.com/ifrost)
|
|
||||||
- **FlameGraph:** Ensure total is only counted once for recursive function calls [#111548](https://github.com/grafana/grafana/pull/111548), [@simonswine](https://github.com/simonswine)
|
|
||||||
- **FolderPermissions:** Return 404 error when folder does not exist instead of 500 [#112919](https://github.com/grafana/grafana/pull/112919), [@Jguer](https://github.com/Jguer)
|
|
||||||
- **FolderPicker:** Fix expand toggle also selecting folder [#111755](https://github.com/grafana/grafana/pull/111755), [@aocenas](https://github.com/aocenas)
|
|
||||||
- **Graphite:** Fix legacy response unmarshalling [#112968](https://github.com/grafana/grafana/pull/112968), [@aangelisc](https://github.com/aangelisc)
|
|
||||||
- **Histogram:** Properly handle sparse heatmap-cells frames [#112907](https://github.com/grafana/grafana/pull/112907), [@leeoniya](https://github.com/leeoniya)
|
|
||||||
- **LDAP Authentication:** Fix URL to propagate username context as parameter [#111723](https://github.com/grafana/grafana/pull/111723), [@bradleypettit](https://github.com/bradleypettit)
|
|
||||||
- **Node graph:** Fix context menu position after scrolling [#112374](https://github.com/grafana/grafana/pull/112374), [@adrapereira](https://github.com/adrapereira)
|
|
||||||
- **Playlist:** Fix navigation issues with emoji-titled dashboards during dual-write migration [#111659](https://github.com/grafana/grafana/pull/111659), [@axelavargas](https://github.com/axelavargas)
|
|
||||||
- **Plugin Details Page:** Fix tabs not loading on hard refresh [#112915](https://github.com/grafana/grafana/pull/112915), [@sunker](https://github.com/sunker)
|
|
||||||
- **Plugin navigation:** Fix active nav item selection when there are more than 10 items in a group [#112886](https://github.com/grafana/grafana/pull/112886), [@aocenas](https://github.com/aocenas)
|
|
||||||
- **Plugins:** Dependencies do not inherit parent URL for preinstall [#111762](https://github.com/grafana/grafana/pull/111762), [@wbrowne](https://github.com/wbrowne)
|
|
||||||
- **Plugins:** Set isProvisioned for local plugins without remote counterpart [#111268](https://github.com/grafana/grafana/pull/111268), [@oshirohugo](https://github.com/oshirohugo)
|
|
||||||
- **Prometheus:** Fix incremental querying logic for public dashboards [#111642](https://github.com/grafana/grafana/pull/111642), [@jcolladokuri](https://github.com/jcolladokuri)
|
|
||||||
- **Prometheus:** Fix parsing logic of prometheus expressions to honor the order of binary operations [#112220](https://github.com/grafana/grafana/pull/112220), [@jcolladokuri](https://github.com/jcolladokuri)
|
|
||||||
- **Security:** fix for CVE-2025-41115 in SCIM (System for Cross-domain Identity Management) (Enterprise)
|
|
||||||
- **SoloPanel:** Fixes issue with solo route and scopes variable [#112769](https://github.com/grafana/grafana/pull/112769), [@torkelo](https://github.com/torkelo)
|
|
||||||
- **Stars:** Fix starred state not being updated [#111936](https://github.com/grafana/grafana/pull/111936), [@Clarity-89](https://github.com/Clarity-89)
|
|
||||||
- **Stat:** Fix math for percent change value heights when sparkline is not rendered [#112599](https://github.com/grafana/grafana/pull/112599), [@fastfrwrd](https://github.com/fastfrwrd)
|
|
||||||
- **StateTimeline:** Fix color display in tooltip [#112878](https://github.com/grafana/grafana/pull/112878), [@fastfrwrd](https://github.com/fastfrwrd)
|
|
||||||
- **Table:** Fix cell inspect for Sparkline and inferred JSON cells [#113059](https://github.com/grafana/grafana/pull/113059), [@fastfrwrd](https://github.com/fastfrwrd)
|
|
||||||
- **TextPanel:** Fix `CodeEditor` not appearing properly [#111937](https://github.com/grafana/grafana/pull/111937), [@ashharrison90](https://github.com/ashharrison90)
|
|
||||||
- **UnitPicker/Cascader:** Fixes type to search for unit feature [#112614](https://github.com/grafana/grafana/pull/112614), [@torkelo](https://github.com/torkelo)
|
|
||||||
- **VizTooltip:** Better overflow handling on long series names [#112240](https://github.com/grafana/grafana/pull/112240), [@fastfrwrd](https://github.com/fastfrwrd)
|
|
||||||
|
|
||||||
### Breaking changes
|
|
||||||
|
|
||||||
- **Faro:** Update configuration with best practices [#112108](https://github.com/grafana/grafana/pull/112108), [@joshhunt](https://github.com/joshhunt)
|
|
||||||
- **LibraryPanels:** Remove unique name constraints [#113077](https://github.com/grafana/grafana/pull/113077), [@ryantxu](https://github.com/ryantxu)
|
|
||||||
- **RBAC:** Only write action sets [#112429](https://github.com/grafana/grafana/pull/112429), [@IevaVasiljeva](https://github.com/IevaVasiljeva)
|
|
||||||
|
|
||||||
### Plugin development fixes & changes
|
|
||||||
|
|
||||||
- **Checkbox:** Improve accessibility of the `indeterminate` state [#112388](https://github.com/grafana/grafana/pull/112388), [@ashharrison90](https://github.com/ashharrison90)
|
|
||||||
- **Collapse:** Improve layout and deprecate `collapsible` prop [#113164](https://github.com/grafana/grafana/pull/113164), [@ashharrison90](https://github.com/ashharrison90)
|
|
||||||
- **Docs:** Add storybook links to components [#113102](https://github.com/grafana/grafana/pull/113102), [@samsch](https://github.com/samsch)
|
|
||||||
- **Modal:** Fix button focus being clipped [#112867](https://github.com/grafana/grafana/pull/112867), [@ashharrison90](https://github.com/ashharrison90)
|
|
||||||
- **Slider:** Expose prop to control visibility of input [#113084](https://github.com/grafana/grafana/pull/113084), [@ashharrison90](https://github.com/ashharrison90)
|
|
||||||
- **Slider:** Make `inputId` a required param and fix minor a11y violations [#112006](https://github.com/grafana/grafana/pull/112006), [@ashharrison90](https://github.com/ashharrison90)
|
|
||||||
|
|
||||||
<!-- 12.3.0 END -->
|
|
||||||
<!-- 12.1.4 START -->
|
|
||||||
|
|
||||||
# 12.1.4 (2025-11-19)
|
|
||||||
|
|
||||||
### Bug fixes
|
|
||||||
|
|
||||||
- **Alerting:** Fix unmarshalling of GettableStatus to include time intervals [#112733](https://github.com/grafana/grafana/pull/112733), [@yuri-tceretian](https://github.com/yuri-tceretian)
|
|
||||||
- **AnalyticsSummaries:** Fix dashboard rollup not resetting "last X days" metrics to zero (Enterprise)
|
|
||||||
- **AnalyticsSummaries:** Fix dashboard rollup totals resetting incorrectly (Enterprise)
|
|
||||||
- **Security:** fix for CVE-2025-41115 in SCIM (System for Cross-domain Identity Management) (Enterprise)
|
|
||||||
|
|
||||||
<!-- 12.1.4 END -->
|
|
||||||
<!-- 12.0.7 START -->
|
|
||||||
|
|
||||||
# 12.0.7 (2025-11-19)
|
|
||||||
|
|
||||||
### Bug fixes
|
|
||||||
|
|
||||||
- **Alerting:** Fix unmarshalling of GettableStatus to include time intervals [#112732](https://github.com/grafana/grafana/pull/112732), [@yuri-tceretian](https://github.com/yuri-tceretian)
|
|
||||||
- **AnalyticsSummaries:** Fix dashboard rollup not resetting "last X days" metrics to zero (Enterprise)
|
|
||||||
- **AnalyticsSummaries:** Fix dashboard rollup totals resetting incorrectly (Enterprise)
|
|
||||||
- **Security:** fix for CVE-2025-41115 in SCIM (System for Cross-domain Identity Management) (Enterprise)
|
|
||||||
|
|
||||||
<!-- 12.0.7 END -->
|
|
||||||
<!-- 12.2.2 START -->
|
|
||||||
|
|
||||||
# 12.2.2 (2025-11-19)
|
|
||||||
|
|
||||||
### Features and enhancements
|
|
||||||
|
|
||||||
- **Access control:** Reduce memory usage when fetching user's permissions [#113414](https://github.com/grafana/grafana/pull/113414), [@hairyhenderson](https://github.com/hairyhenderson)
|
|
||||||
- **Table:** Pill and JSON Cells should allow formatting [#113130](https://github.com/grafana/grafana/pull/113130), [@fastfrwrd](https://github.com/fastfrwrd)
|
|
||||||
|
|
||||||
### Bug fixes
|
|
||||||
|
|
||||||
- **AnalyticsSummaries:** Fix dashboard rollup not resetting "last X days" metrics to zero (Enterprise)
|
|
||||||
- **AnalyticsSummaries:** Fix dashboard rollup totals resetting incorrectly (Enterprise)
|
|
||||||
- **Security:** fix for CVE-2025-41115 in SCIM (System for Cross-domain Identity Management) (Enterprise)
|
|
||||||
|
|
||||||
<!-- 12.2.2 END -->
|
|
||||||
<!-- 11.6.8 START -->
|
|
||||||
|
|
||||||
# 11.6.8 (2025-11-19)
|
|
||||||
|
|
||||||
### Bug fixes
|
|
||||||
|
|
||||||
- **Alerting:** Fix unmarshalling of GettableStatus to include time intervals [#112731](https://github.com/grafana/grafana/pull/112731), [@yuri-tceretian](https://github.com/yuri-tceretian)
|
|
||||||
- **AnalyticsSummaries:** Fix dashboard rollup not resetting "last X days" metrics to zero (Enterprise)
|
|
||||||
- **AnalyticsSummaries:** Fix dashboard rollup totals resetting incorrectly (Enterprise)
|
|
||||||
- **Seeder:** Add check in `filterRemovedPermissions` for already existing new permissions before seeding (Enterprise)
|
|
||||||
|
|
||||||
<!-- 11.6.8 END -->
|
|
||||||
<!-- 12.2.1+security-01 START -->
|
|
||||||
|
|
||||||
# 12.2.1+security-01 (2025-11-19)
|
|
||||||
|
|
||||||
### Bug fixes
|
|
||||||
|
|
||||||
- **Security:** fix for CVE-2025-41115 in SCIM (System for Cross-domain Identity Management) (Enterprise)
|
|
||||||
|
|
||||||
<!-- 12.2.1+security-01 END -->
|
|
||||||
<!-- 12.1.3+security-01 START -->
|
|
||||||
|
|
||||||
# 12.1.3+security-01 (2025-11-19)
|
|
||||||
|
|
||||||
### Bug fixes
|
|
||||||
|
|
||||||
- **Security:** fix for CVE-2025-41115 in SCIM (System for Cross-domain Identity Management) (Enterprise)
|
|
||||||
|
|
||||||
<!-- 12.1.3+security-01 END -->
|
|
||||||
|
|
||||||
<!-- 12.0.6+security-01 START -->
|
|
||||||
|
|
||||||
# 12.0.6+security-01 (2025-11-19)
|
|
||||||
|
|
||||||
### Bug fixes
|
|
||||||
|
|
||||||
- **Security:** fix for CVE-2025-41115 in SCIM (System for Cross-domain Identity Management) (Enterprise)
|
|
||||||
|
|
||||||
<!-- 12.0.6+security-01 END -->
|
|
||||||
<!-- 12.2.1 START -->
|
|
||||||
|
|
||||||
# 12.2.1 (2025-10-21)
|
|
||||||
|
|
||||||
### Features and enhancements
|
|
||||||
|
|
||||||
- **Go:** Update to 1.25.2 + golangci-lint v2.5.0 + golang.org/x/net v0.45.0 [#112156](https://github.com/grafana/grafana/pull/112156), [@macabu](https://github.com/macabu)
|
|
||||||
- **Go:** Update to 1.25.3 [#112361](https://github.com/grafana/grafana/pull/112361), [@macabu](https://github.com/macabu)
|
|
||||||
|
|
||||||
### Bug fixes
|
|
||||||
|
|
||||||
- **Auth:** Fix render user OAuth passthrough [#112092](https://github.com/grafana/grafana/pull/112092), [@mgyongyosi](https://github.com/mgyongyosi)
|
|
||||||
- **Dashboards:** Fix missing Ctrl+O keyboard shortcut for crosshair toggle [#111402](https://github.com/grafana/grafana/pull/111402), [@ivanortegaalba](https://github.com/ivanortegaalba)
|
|
||||||
- **Fix:** Fix redirection after login when Grafana is served from subpath [#111069](https://github.com/grafana/grafana/pull/111069), [@mgyongyosi](https://github.com/mgyongyosi)
|
|
||||||
- **FlameGraph:** Ensure total is only counted once for recursive function calls [#111606](https://github.com/grafana/grafana/pull/111606), [@simonswine](https://github.com/simonswine)
|
|
||||||
- **LDAP Authentication:** Fix URL to propagate username context as parameter [#111849](https://github.com/grafana/grafana/pull/111849), [@bradleypettit](https://github.com/bradleypettit)
|
|
||||||
- **Plugins:** Dependencies do not inherit parent URL for preinstall [#111769](https://github.com/grafana/grafana/pull/111769), [@wbrowne](https://github.com/wbrowne)
|
|
||||||
- **Table:** Backport the Safari 26 fixes to 12.2.1 [#111906](https://github.com/grafana/grafana/pull/111906), [@fastfrwrd](https://github.com/fastfrwrd)
|
|
||||||
|
|
||||||
<!-- 12.2.1 END -->
|
|
||||||
<!-- 12.1.3 START -->
|
|
||||||
|
|
||||||
# 12.1.3 (2025-10-21)
|
|
||||||
|
|
||||||
### Features and enhancements
|
|
||||||
|
|
||||||
- **Go:** Update to 1.25.2 + golangci-lint v2.5.0 + golang.org/x/net v0.45.0 [#112159](https://github.com/grafana/grafana/pull/112159), [@macabu](https://github.com/macabu)
|
|
||||||
- **Go:** Update to 1.25.3 [#112362](https://github.com/grafana/grafana/pull/112362), [@macabu](https://github.com/macabu)
|
|
||||||
- **Table:** Avoid thrown error due to internal React issue [#111945](https://github.com/grafana/grafana/pull/111945), [@fastfrwrd](https://github.com/fastfrwrd)
|
|
||||||
|
|
||||||
### Bug fixes
|
|
||||||
|
|
||||||
- **Auth:** Fix render user OAuth passthrough [#112097](https://github.com/grafana/grafana/pull/112097), [@mgyongyosi](https://github.com/mgyongyosi)
|
|
||||||
- **FlameGraph:** Ensure total is only counted once for recursive function calls [#111605](https://github.com/grafana/grafana/pull/111605), [@simonswine](https://github.com/simonswine)
|
|
||||||
- **LDAP Authentication:** Fix URL to propagate username context as parameter [#111848](https://github.com/grafana/grafana/pull/111848), [@bradleypettit](https://github.com/bradleypettit)
|
|
||||||
- **Plugins:** Dependencies do not inherit parent URL for preinstall [#111767](https://github.com/grafana/grafana/pull/111767), [@wbrowne](https://github.com/wbrowne)
|
|
||||||
|
|
||||||
<!-- 12.1.3 END -->
|
|
||||||
<!-- 12.0.6 START -->
|
|
||||||
|
|
||||||
# 12.0.6 (2025-10-21)
|
|
||||||
|
|
||||||
### Features and enhancements
|
|
||||||
|
|
||||||
- **Go:** Update to 1.25.2 + golangci-lint v2.5.0 + golang.org/x/net v0.45.0 [#112161](https://github.com/grafana/grafana/pull/112161), [@macabu](https://github.com/macabu)
|
|
||||||
- **Go:** Update to 1.25.3 [#112364](https://github.com/grafana/grafana/pull/112364), [@macabu](https://github.com/macabu)
|
|
||||||
|
|
||||||
### Bug fixes
|
|
||||||
|
|
||||||
- **Auth:** Fix render user OAuth passthrough [#112096](https://github.com/grafana/grafana/pull/112096), [@mgyongyosi](https://github.com/mgyongyosi)
|
|
||||||
- **FlameGraph:** Ensure total is only counted once for recursive function calls [#111604](https://github.com/grafana/grafana/pull/111604), [@simonswine](https://github.com/simonswine)
|
|
||||||
- **LDAP Authentication:** Fix URL to propagate username context as parameter [#111847](https://github.com/grafana/grafana/pull/111847), [@bradleypettit](https://github.com/bradleypettit)
|
|
||||||
- **Plugins:** Dependencies do not inherit parent URL for preinstall [#111766](https://github.com/grafana/grafana/pull/111766), [@wbrowne](https://github.com/wbrowne)
|
|
||||||
|
|
||||||
<!-- 12.0.6 END -->
|
|
||||||
<!-- 11.6.7 START -->
|
|
||||||
|
|
||||||
# 11.6.7 (2025-10-21)
|
|
||||||
|
|
||||||
### Features and enhancements
|
|
||||||
|
|
||||||
- **Analytics:** Apply proper batching to Loki exports and add configurable settings (Enterprise)
|
|
||||||
- **Go:** Update to 1.25.2 + golangci-lint v2.5.0 + golang.org/x/net v0.45.0 [#112162](https://github.com/grafana/grafana/pull/112162), [@grambbledook](https://github.com/grambbledook)
|
|
||||||
- **Go:** Update to 1.25.3 [#112365](https://github.com/grafana/grafana/pull/112365), [@macabu](https://github.com/macabu)
|
|
||||||
|
|
||||||
### Bug fixes
|
|
||||||
|
|
||||||
- **Auth:** Fix render user OAuth passthrough [#112094](https://github.com/grafana/grafana/pull/112094), [@mgyongyosi](https://github.com/mgyongyosi)
|
|
||||||
- **LDAP Authentication:** Fix URL to propagate username context as parameter [#111846](https://github.com/grafana/grafana/pull/111846), [@bradleypettit](https://github.com/bradleypettit)
|
|
||||||
- **Plugins:** Dependencies do not inherit parent URL for preinstall [#111801](https://github.com/grafana/grafana/pull/111801), [@wbrowne](https://github.com/wbrowne)
|
|
||||||
- **URLParams:** Stringify true values as key=true always (fixes issues with variables with true value) [#112045](https://github.com/grafana/grafana/pull/112045), [@torkelo](https://github.com/torkelo)
|
|
||||||
|
|
||||||
<!-- 11.6.7 END -->
|
|
||||||
<!-- 11.5.10 START -->
|
|
||||||
|
|
||||||
# 11.5.10 (2025-10-21)
|
|
||||||
|
|
||||||
### Features and enhancements
|
|
||||||
|
|
||||||
- **Go:** Update to 1.25.2 + golangci-lint v2.5.0 + golang.org/x/net v0.45.0 [#112163](https://github.com/grafana/grafana/pull/112163), [@macabu](https://github.com/macabu)
|
|
||||||
- **Go:** Update to 1.25.3 [#112366](https://github.com/grafana/grafana/pull/112366), [@macabu](https://github.com/macabu)
|
|
||||||
|
|
||||||
### Bug fixes
|
|
||||||
|
|
||||||
- **Auth:** Fix render user OAuth passthrough [#112093](https://github.com/grafana/grafana/pull/112093), [@mgyongyosi](https://github.com/mgyongyosi)
|
|
||||||
- **LDAP Authentication:** Fix URL to propagate username context as parameter [#111845](https://github.com/grafana/grafana/pull/111845), [@bradleypettit](https://github.com/bradleypettit)
|
|
||||||
- **Plugins:** Dependencies do not inherit parent URL for preinstall [#111802](https://github.com/grafana/grafana/pull/111802), [@wbrowne](https://github.com/wbrowne)
|
|
||||||
|
|
||||||
<!-- 11.5.10 END -->
|
|
||||||
<!-- 12.2.0 START -->
|
|
||||||
|
|
||||||
# 12.2.0 (2025-09-23)
|
|
||||||
|
|
||||||
### Features and enhancements
|
|
||||||
|
|
||||||
- ** Alerting:** Add feedback buttons for the new AI helpers (Enterprise)
|
|
||||||
- **Access:** Remove plugin app access in plugin basic role seeder (Enterprise)
|
|
||||||
- **Actions:** Infinity authentication [#109493](https://github.com/grafana/grafana/pull/109493), [@adela-almasan](https://github.com/adela-almasan)
|
|
||||||
- **Alerting:** Add GMA export to the new list page [#109784](https://github.com/grafana/grafana/pull/109784), [@konrad147](https://github.com/konrad147)
|
|
||||||
- **Alerting:** Add alerting AI buttons for cloud (Enterprise)
|
|
||||||
- **Alerting:** Add contact point filter to Active Notifications page [#109775](https://github.com/grafana/grafana/pull/109775), [@alexander-akhmetov](https://github.com/alexander-akhmetov)
|
|
||||||
- **Alerting:** Add enrichment per rule extension component (Enterprise)
|
|
||||||
- **Alerting:** Add extension point link from alert rule to grafana-metricsdrilldown-app [#108566](https://github.com/grafana/grafana/pull/108566), [@bohandley](https://github.com/bohandley)
|
|
||||||
- **Alerting:** Add feature toggle and extension point [#110141](https://github.com/grafana/grafana/pull/110141), [@soniaAguilarPeiron](https://github.com/soniaAguilarPeiron)
|
|
||||||
- **Alerting:** Add keepFiringFor and missing_series_evals_to_resolve to file provisioning [#109699](https://github.com/grafana/grafana/pull/109699), [@alexander-akhmetov](https://github.com/alexander-akhmetov)
|
|
||||||
- **Alerting:** Add observability to enrichment UI (Enterprise)
|
|
||||||
- **Alerting:** Add tooltips in enrichment list for enrichment type (Enterprise)
|
|
||||||
- **Alerting:** Alert enrichment list page (Enterprise)
|
|
||||||
- **Alerting:** Allow filter by rule source in Filter V2 [#110336](https://github.com/grafana/grafana/pull/110336), [@laurenashleigh](https://github.com/laurenashleigh)
|
|
||||||
- **Alerting:** Auto refresh contact points in the rule form [#109539](https://github.com/grafana/grafana/pull/109539), [@konrad147](https://github.com/konrad147)
|
|
||||||
- **Alerting:** Check if TimeInterval is used in ActiveTimings when deleting [#110691](https://github.com/grafana/grafana/pull/110691), [@fayzal-g](https://github.com/fayzal-g)
|
|
||||||
- **Alerting:** Disable group consistency check for GMA rules [#109599](https://github.com/grafana/grafana/pull/109599), [@konrad147](https://github.com/konrad147)
|
|
||||||
- **Alerting:** Display Error Message in Alert History View [#110123](https://github.com/grafana/grafana/pull/110123), [@laurenashleigh](https://github.com/laurenashleigh)
|
|
||||||
- **Alerting:** Enrichment Config Form (Enterprise)
|
|
||||||
- **Alerting:** Filter out private labels before writing recording rules [#109295](https://github.com/grafana/grafana/pull/109295), [@alexander-akhmetov](https://github.com/alexander-akhmetov)
|
|
||||||
- **Alerting:** List V2 - Add a group link to the rule list item [#108960](https://github.com/grafana/grafana/pull/108960), [@konrad147](https://github.com/konrad147)
|
|
||||||
- **Alerting:** List V2 - datasource icons for rules [#109033](https://github.com/grafana/grafana/pull/109033), [@konrad147](https://github.com/konrad147)
|
|
||||||
- **Alerting:** Load labels in drop-downs without blocking the interaction with the form inputs [#110648](https://github.com/grafana/grafana/pull/110648), [@soniaAguilarPeiron](https://github.com/soniaAguilarPeiron)
|
|
||||||
- **Alerting:** Mark Prometheus to Grafana conversion API as stable [#103499](https://github.com/grafana/grafana/pull/103499), [@alexander-akhmetov](https://github.com/alexander-akhmetov)
|
|
||||||
- **Alerting:** Move alerting file to an alerting folder [#110257](https://github.com/grafana/grafana/pull/110257), [@soniaAguilarPeiron](https://github.com/soniaAguilarPeiron)
|
|
||||||
- **Alerting:** Support JSON responses in the Prometheus conversion API [#109070](https://github.com/grafana/grafana/pull/109070), [@alexander-akhmetov](https://github.com/alexander-akhmetov)
|
|
||||||
- **Alerting:** Support extra labels in the Prometheus conversion API [#109136](https://github.com/grafana/grafana/pull/109136), [@alexander-akhmetov](https://github.com/alexander-akhmetov)
|
|
||||||
- **Alerting:** Support retry with backoff in alert rule evaluation [#99710](https://github.com/grafana/grafana/pull/99710), [@alexander-akhmetov](https://github.com/alexander-akhmetov)
|
|
||||||
- **Alerting:** Triage alert history with Assistant if available (Enterprise)
|
|
||||||
- **Auditing:** Add settings to control recording of datasource query request and response body (Enterprise)
|
|
||||||
- **Auth:** Add setting to disable username based brute force login protection [#109152](https://github.com/grafana/grafana/pull/109152), [@TheoBrigitte](https://github.com/TheoBrigitte)
|
|
||||||
- **Auth:** Support JWT configs `tls_client_ca` and `jwk_set_bearer_token_file` [#109095](https://github.com/grafana/grafana/pull/109095), [@Baarsgaard](https://github.com/Baarsgaard)
|
|
||||||
- **Azure:** Resource picker improvements (#109458) [#109520](https://github.com/grafana/grafana/pull/109520), [@aangelisc](https://github.com/aangelisc)
|
|
||||||
- **Azure:** Show resource group in picker [#110442](https://github.com/grafana/grafana/pull/110442), [@aangelisc](https://github.com/aangelisc)
|
|
||||||
- **Canvas:** Add option to disable tooltips for one-click elements [#109937](https://github.com/grafana/grafana/pull/109937), [@adela-almasan](https://github.com/adela-almasan)
|
|
||||||
- **Canvas:** Dynamic connection direction [#108423](https://github.com/grafana/grafana/pull/108423), [@adela-almasan](https://github.com/adela-almasan)
|
|
||||||
- **Chore:** Remove prometheusCodeModeMetricNamesSearch feature toggle [#109024](https://github.com/grafana/grafana/pull/109024), [@itsmylife](https://github.com/itsmylife)
|
|
||||||
- **Chore:** Removes HideAngularDeprecation configuration [#110665](https://github.com/grafana/grafana/pull/110665), [@hugohaggmark](https://github.com/hugohaggmark)
|
|
||||||
- **CloudConfig:** Add config from defaults.ini to StackInfo (Enterprise)
|
|
||||||
- **CloudWatch:** Append query type to the request id [#109068](https://github.com/grafana/grafana/pull/109068), [@idastambuk](https://github.com/idastambuk)
|
|
||||||
- **CloudWatch:** Use default region when query region is unset [#109089](https://github.com/grafana/grafana/pull/109089), [@iwysiu](https://github.com/iwysiu)
|
|
||||||
- **CloudWatch:** Use the correct metric name for errors per function panel in the AWS Lambda sample dashboard [#110718](https://github.com/grafana/grafana/pull/110718), [@kevinwcyu](https://github.com/kevinwcyu)
|
|
||||||
- **CommandPalette:** Use fuzzySearch util from grafana/data [#108884](https://github.com/grafana/grafana/pull/108884), [@Clarity-89](https://github.com/Clarity-89)
|
|
||||||
- **Dashboard:** Inspect drawer can no longer be opened with url or linked to [#109617](https://github.com/grafana/grafana/pull/109617), [@torkelo](https://github.com/torkelo)
|
|
||||||
- **Dashboards:** Add support for full screen panel view and embedded (solo panel) route to repeated panels and new layouts (via new SoloPanelContex) [#107375](https://github.com/grafana/grafana/pull/107375), [@torkelo](https://github.com/torkelo)
|
|
||||||
- **Dashboards:** Conserve timestamp on time range copy-paste across timezones [#109769](https://github.com/grafana/grafana/pull/109769), [@alik-r](https://github.com/alik-r)
|
|
||||||
- **Dashboards:** Enable kubernetesDashboards by default [#107618](https://github.com/grafana/grafana/pull/107618), [@dprokop](https://github.com/dprokop)
|
|
||||||
- **Dashboards:** Make it possible to render variables under a drop-down [#109225](https://github.com/grafana/grafana/pull/109225), [@leventebalogh](https://github.com/leventebalogh)
|
|
||||||
- **Database:** Add primary key to Settings table (Enterprise)
|
|
||||||
- **Database:** Add primary key to settings table (Enterprise)
|
|
||||||
- **Dependencies:** Bump Go to v1.24.5 (Enterprise)
|
|
||||||
- **Docs:** Deprecate `grafana/grafana-oss` docker repo in favor of `grafana/grafana` [#110065](https://github.com/grafana/grafana/pull/110065), [@kminehart](https://github.com/kminehart)
|
|
||||||
- **Flame Graph:** Analyze with Grafana Assistant [#108684](https://github.com/grafana/grafana/pull/108684), [@ifrost](https://github.com/ifrost)
|
|
||||||
- **Folders:** Add team folders feature toggle [#109389](https://github.com/grafana/grafana/pull/109389), [@tomratcliffe](https://github.com/tomratcliffe)
|
|
||||||
- **Folders:** Update folder using app platform APIs [#110449](https://github.com/grafana/grafana/pull/110449), [@tomratcliffe](https://github.com/tomratcliffe)
|
|
||||||
- **Folders:** Use app platform search endpoint and update tests [#108814](https://github.com/grafana/grafana/pull/108814), [@tomratcliffe](https://github.com/tomratcliffe)
|
|
||||||
- **Go:** Update to 1.24.6 [#109313](https://github.com/grafana/grafana/pull/109313), [@Proximyst](https://github.com/Proximyst)
|
|
||||||
- **InfluxDB:** Ad hoc filters support for expressions [#109344](https://github.com/grafana/grafana/pull/109344), [@aangelisc](https://github.com/aangelisc)
|
|
||||||
- **Metrics:** Add http_response_size_bytes metric [#110428](https://github.com/grafana/grafana/pull/110428), [@joshhunt](https://github.com/joshhunt)
|
|
||||||
- **Nested folders:** Remove feature flag [#109212](https://github.com/grafana/grafana/pull/109212), [@stephaniehingtgen](https://github.com/stephaniehingtgen)
|
|
||||||
- **NestedFolderPicker:** Add rootFolderUID prop [#109991](https://github.com/grafana/grafana/pull/109991), [@ywzheng1](https://github.com/ywzheng1)
|
|
||||||
- **P2P Filter:** Add adhoc filter option toggle [#110160](https://github.com/grafana/grafana/pull/110160), [@Develer](https://github.com/Develer)
|
|
||||||
- **PieChart:** Add panel options for ascending/descending sort, and no sorting [#109564](https://github.com/grafana/grafana/pull/109564), [@cglukas](https://github.com/cglukas)
|
|
||||||
- **Plugin Extensions:** DataSource Configuration Components [#108350](https://github.com/grafana/grafana/pull/108350), [@shelldandy](https://github.com/shelldandy)
|
|
||||||
- **Plugins:** Add Connections homepage [#108316](https://github.com/grafana/grafana/pull/108316), [@oshirohugo](https://github.com/oshirohugo)
|
|
||||||
- **Plugins:** Record plugin version in request metrics [#110210](https://github.com/grafana/grafana/pull/110210), [@njvrzm](https://github.com/njvrzm)
|
|
||||||
- **Preferences:** Move codegen to apps [#109178](https://github.com/grafana/grafana/pull/109178), [@ryantxu](https://github.com/ryantxu)
|
|
||||||
- **Prometheus data source:** Migration service [#107364](https://github.com/grafana/grafana/pull/107364), [@bossinc](https://github.com/bossinc)
|
|
||||||
- **Prometheus:** Refactor metrics modal to handle high cardinality metrics [#108437](https://github.com/grafana/grafana/pull/108437), [@itsmylife](https://github.com/itsmylife)
|
|
||||||
- **Pyroscope:** Process and display sampling annotations [#109707](https://github.com/grafana/grafana/pull/109707), [@aleks-p](https://github.com/aleks-p)
|
|
||||||
- **Reporting:** Permit valid but weird emails (Enterprise)
|
|
||||||
- **Reporting:** Show correct recipient count (Enterprise)
|
|
||||||
- **Revert:** DataSource: Support config CRUD from apiservers (#106996) [#110342](https://github.com/grafana/grafana/pull/110342), [@njvrzm](https://github.com/njvrzm)
|
|
||||||
- **Revert:** DataSource: Support config CRUD from apiservers (#8860) (Enterprise)
|
|
||||||
- **SCIM:** Add flag for rejecting non provisioned users from logging in (Enterprise)
|
|
||||||
- **SCIM:** Allow empty externalId on update operation (Enterprise)
|
|
||||||
- **SCIM:** Delete user instead of disabling it on SCIM DELETE user request (Enterprise)
|
|
||||||
- **SQL Expressions:** Switch feature toggle to public preview [#110473](https://github.com/grafana/grafana/pull/110473), [@kylebrandt](https://github.com/kylebrandt)
|
|
||||||
- **Table:** Frozen columns [#109276](https://github.com/grafana/grafana/pull/109276), [@fastfrwrd](https://github.com/fastfrwrd)
|
|
||||||
- **Table:** Max row height for variable height rows [#109639](https://github.com/grafana/grafana/pull/109639), [@fastfrwrd](https://github.com/fastfrwrd)
|
|
||||||
- **Table:** Tooltip from Field [#109428](https://github.com/grafana/grafana/pull/109428), [@fastfrwrd](https://github.com/fastfrwrd)
|
|
||||||
- **Table:** Update UX for uniform-reducer case in new footer and overflow [#110493](https://github.com/grafana/grafana/pull/110493), [@fastfrwrd](https://github.com/fastfrwrd)
|
|
||||||
- **TableNG:** Footer enhancements [#102948](https://github.com/grafana/grafana/pull/102948), [@alexjonspencer1](https://github.com/alexjonspencer1)
|
|
||||||
- **Text:** Add Inter italic font variants to Grafana UI [#110313](https://github.com/grafana/grafana/pull/110313), [@kapowaz](https://github.com/kapowaz)
|
|
||||||
- **TraceView:** Refine UI visual hierarchy inside details section [#108929](https://github.com/grafana/grafana/pull/108929), [@ifrost](https://github.com/ifrost)
|
|
||||||
- **Transformations:** Add empty values options to Transpose [#108421](https://github.com/grafana/grafana/pull/108421), [@gelicia](https://github.com/gelicia)
|
|
||||||
- **Trend/TimeSeries:** Add "Show values" option [#108090](https://github.com/grafana/grafana/pull/108090), [@HasithDeAlwis](https://github.com/HasithDeAlwis)
|
|
||||||
- **Trend:** Add support for a logarithmic x axis [#101433](https://github.com/grafana/grafana/pull/101433), [@gelicia](https://github.com/gelicia)
|
|
||||||
- **Variables:** shows warning when user tries to save erroneous variables [#110154](https://github.com/grafana/grafana/pull/110154), [@hugohaggmark](https://github.com/hugohaggmark)
|
|
||||||
- **VizTooltip:** Replace `ExemplarHoverView` with `VizTooltip` components [#109369](https://github.com/grafana/grafana/pull/109369), [@adela-almasan](https://github.com/adela-almasan)
|
|
||||||
|
|
||||||
### Bug fixes
|
|
||||||
|
|
||||||
- **Alerting:** Fix bug where rules with identical mute/active intervals produced conflicting routes [#110971](https://github.com/grafana/grafana/pull/110971), [@alexander-akhmetov](https://github.com/alexander-akhmetov)
|
|
||||||
- **Alerting:** Fix copying of recording rule fields [#110311](https://github.com/grafana/grafana/pull/110311), [@moustafab](https://github.com/moustafab)
|
|
||||||
- **Alerting:** Fix field names on webhook HMAC/TLS config HCL export [#110722](https://github.com/grafana/grafana/pull/110722), [@JacobsonMT](https://github.com/JacobsonMT)
|
|
||||||
- **Alerting:** Fix newly created alert rules not immediately showing up in folder view [#109584](https://github.com/grafana/grafana/pull/109584), [@tomratcliffe](https://github.com/tomratcliffe)
|
|
||||||
- **Alerting:** Fix permission checks for the Import to GMA [#109950](https://github.com/grafana/grafana/pull/109950), [@konrad147](https://github.com/konrad147)
|
|
||||||
- **Alerting:** Fix permissions for enrichment routes (Enterprise)
|
|
||||||
- **Alerting:** Fix subpath handling in the alerting package [#109448](https://github.com/grafana/grafana/pull/109448), [@konrad147](https://github.com/konrad147)
|
|
||||||
- **Alerting:** Fix wrong import (Enterprise)
|
|
||||||
- **Alerting:** Hide list view loader if we don't have anything yet [#110464](https://github.com/grafana/grafana/pull/110464), [@gillesdemey](https://github.com/gillesdemey)
|
|
||||||
- **Alerting:** Set dataSourceName to GRAFANA_RULES_SOURCE_NAME when switch… [#109900](https://github.com/grafana/grafana/pull/109900), [@laurenashleigh](https://github.com/laurenashleigh)
|
|
||||||
- **Alerting:** Update alerting module to 10915888e4f099586ad37bea5f4a70f45101d2f5 [#109989](https://github.com/grafana/grafana/pull/109989), [@yuri-tceretian](https://github.com/yuri-tceretian)
|
|
||||||
- **Azure:** Fix logs editor rendering [#109491](https://github.com/grafana/grafana/pull/109491), [@aangelisc](https://github.com/aangelisc)
|
|
||||||
- **Canvas:** Fix element selection being cleared on panel resize [#110010](https://github.com/grafana/grafana/pull/110010), [@adela-almasan](https://github.com/adela-almasan)
|
|
||||||
- **CloudConfig:** Fix panic in defaults.ini merge (Enterprise)
|
|
||||||
- **CloudWatch:** Fix handling region for legacy alerts [#109217](https://github.com/grafana/grafana/pull/109217), [@iwysiu](https://github.com/iwysiu)
|
|
||||||
- **CloudWatch:** Fix logs query requestId to prevent setting undefined-logs as a requestId [#109930](https://github.com/grafana/grafana/pull/109930), [@kevinwcyu](https://github.com/kevinwcyu)
|
|
||||||
- **CloudWatch:** Update grafana/aws-sdk-go with STS endpoint bugfix [#109120](https://github.com/grafana/grafana/pull/109120), [@idastambuk](https://github.com/idastambuk)
|
|
||||||
- **Config:** Fix date_formats options being moved to a different section [#109339](https://github.com/grafana/grafana/pull/109339), [@joshhunt](https://github.com/joshhunt)
|
|
||||||
- **Dashboard List:** Fix how link query part is created when variables are included [#109861](https://github.com/grafana/grafana/pull/109861), [@aocenas](https://github.com/aocenas)
|
|
||||||
- **Dashboard versions:** Fix list for large dashboards [#109433](https://github.com/grafana/grafana/pull/109433), [@stephaniehingtgen](https://github.com/stephaniehingtgen)
|
|
||||||
- **Dashboard:** Fix AngularJS deprecation in grafana-overview dashboard [#106462](https://github.com/grafana/grafana/pull/106462), [@schoen2](https://github.com/schoen2)
|
|
||||||
- **Dashboard:** Fixes url links to embedded panels in scene based dashboards [#109837](https://github.com/grafana/grafana/pull/109837), [@torkelo](https://github.com/torkelo)
|
|
||||||
- **Dashboards:** Fix UTF-8 characters not working with excel downloads by replacing download for excel with excel compatibility mode. [#110099](https://github.com/grafana/grafana/pull/110099), [@oscarkilhed](https://github.com/oscarkilhed)
|
|
||||||
- **Dashboards:** Fix issue where the time range picker would seemingly be hidden behind the side menu if it was set to always open. [#108607](https://github.com/grafana/grafana/pull/108607), [@oscarkilhed](https://github.com/oscarkilhed)
|
|
||||||
- **Dashboards:** Fix kiosk mode not persisting through refresh [#110284](https://github.com/grafana/grafana/pull/110284), [@oscarkilhed](https://github.com/oscarkilhed)
|
|
||||||
- **Dashboards:** Fixing saving and viewing snapshots for repeated panels [#109856](https://github.com/grafana/grafana/pull/109856), [@torkelo](https://github.com/torkelo)
|
|
||||||
- **Explore:** Fix units overflow for trace durations [#108515](https://github.com/grafana/grafana/pull/108515), [@martincostello](https://github.com/martincostello)
|
|
||||||
- **Fix:** Install plugins when they have no plugin archive info(catalog en… [#109200](https://github.com/grafana/grafana/pull/109200), [@s4kh](https://github.com/s4kh)
|
|
||||||
- **InfluxDB:** Fix Unable to use self-signed CA for adding influxdb data source [#105586](https://github.com/grafana/grafana/pull/105586), [@geekeryy](https://github.com/geekeryy)
|
|
||||||
- **Prometheus:** Don't use incremental querying if one of the queries has $\_\_range variable [#108823](https://github.com/grafana/grafana/pull/108823), [@itsmylife](https://github.com/itsmylife)
|
|
||||||
- **Prometheus:** Fix eager auto completion [#109128](https://github.com/grafana/grafana/pull/109128), [@itsmylife](https://github.com/itsmylife)
|
|
||||||
- **Prometheus:** QueryEditor fix error when switching from code to builder for undefined aggregation operations [#110179](https://github.com/grafana/grafana/pull/110179), [@jcolladokuri](https://github.com/jcolladokuri)
|
|
||||||
- **Pyroscope:** Add start and end date to profiletypes call [#110277](https://github.com/grafana/grafana/pull/110277), [@zoltanbedi](https://github.com/zoltanbedi)
|
|
||||||
- **Pyroscope:** Fix incorrect rate calculation from flamegraph totals [#110470](https://github.com/grafana/grafana/pull/110470), [@marcsanmi](https://github.com/marcsanmi)
|
|
||||||
- **Service Accounts:** Fix typo on page indicating none are present [#109560](https://github.com/grafana/grafana/pull/109560), [@eamonryan](https://github.com/eamonryan)
|
|
||||||
- **Tempo:** Fix instant query streaming [#108924](https://github.com/grafana/grafana/pull/108924), [@adrapereira](https://github.com/adrapereira)
|
|
||||||
- **TimeSeries:** Use exported time shift and fix time comparison tooltip [#109947](https://github.com/grafana/grafana/pull/109947), [@drew08t](https://github.com/drew08t)
|
|
||||||
- **Transformations:** Account for group by / count when assessing if calculation is needed [#110546](https://github.com/grafana/grafana/pull/110546), [@gelicia](https://github.com/gelicia)
|
|
||||||
- **Transforms:** GroupToMatrix transform should retain keyRowField config [#109066](https://github.com/grafana/grafana/pull/109066), [@fastfrwrd](https://github.com/fastfrwrd)
|
|
||||||
|
|
||||||
### Breaking changes
|
|
||||||
|
|
||||||
- **Alerting:** Enable alertingSaveStateCompressed by default [#109390](https://github.com/grafana/grafana/pull/109390), [@alexander-akhmetov](https://github.com/alexander-akhmetov)
|
|
||||||
- **Dashboards:** Repeating with no clone keys [#109839](https://github.com/grafana/grafana/pull/109839), [@torkelo](https://github.com/torkelo)
|
|
||||||
- **Provisioning:** Use inline secrets for gitsync [#109908](https://github.com/grafana/grafana/pull/109908), [@ryantxu](https://github.com/ryantxu)
|
|
||||||
- **Stars:** Remove deprecated internal ID apis [#110499](https://github.com/grafana/grafana/pull/110499), [@ryantxu](https://github.com/ryantxu)
|
|
||||||
|
|
||||||
### Plugin development fixes & changes
|
|
||||||
|
|
||||||
- **Drawer:** Truncate Drawer title to just one line [#109540](https://github.com/grafana/grafana/pull/109540), [@joshhunt](https://github.com/joshhunt)
|
|
||||||
- **Modal:** Center modals at smaller screen heights [#109256](https://github.com/grafana/grafana/pull/109256), [@ashharrison90](https://github.com/ashharrison90)
|
|
||||||
- **MultiCombobox:** Fix async options to being able to be removed [#109473](https://github.com/grafana/grafana/pull/109473), [@joshhunt](https://github.com/joshhunt)
|
|
||||||
- **MultiCombobox:** Fix select all when only a single option is available [#109910](https://github.com/grafana/grafana/pull/109910), [@aangelisc](https://github.com/aangelisc)
|
|
||||||
|
|
||||||
<!-- 12.2.0 END -->
|
|
||||||
<!-- 12.1.2 START -->
|
|
||||||
|
|
||||||
# 12.1.2 (2025-09-23)
|
|
||||||
|
|
||||||
### Features and enhancements
|
|
||||||
|
|
||||||
- **Alerting:** Update alerting module [#109999](https://github.com/grafana/grafana/pull/109999), [@yuri-tceretian](https://github.com/yuri-tceretian)
|
|
||||||
- **Auditing:** Add settings to control recording of datasource query request and response body (Enterprise)
|
|
||||||
- **Auditing:** Document new options for recording datasource query request/response body [#109981](https://github.com/grafana/grafana/pull/109981), [@macabu](https://github.com/macabu)
|
|
||||||
- **Chore:** Don't show a "Not found" for public-dashboard fetches if the service is disabled via config [#110144](https://github.com/grafana/grafana/pull/110144), [@mmandrus](https://github.com/mmandrus)
|
|
||||||
- **CloudWatch:** Use default region when query region is unset [#111079](https://github.com/grafana/grafana/pull/111079), [@iwysiu](https://github.com/iwysiu)
|
|
||||||
|
|
||||||
### Bug fixes
|
|
||||||
|
|
||||||
- **Alerting:** Fix bug where rules with identical mute/active intervals produced conflicting routes [#110973](https://github.com/grafana/grafana/pull/110973), [@alexander-akhmetov](https://github.com/alexander-akhmetov)
|
|
||||||
- **Alerting:** Fix copying of recording rule fields [#110312](https://github.com/grafana/grafana/pull/110312), [@moustafab](https://github.com/moustafab)
|
|
||||||
- **Fix:** Fix redirection after login when Grafana is served from subpath [#111097](https://github.com/grafana/grafana/pull/111097), [@mgyongyosi](https://github.com/mgyongyosi)
|
|
||||||
|
|
||||||
### Plugin development fixes & changes
|
|
||||||
|
|
||||||
- **Fix:** Prevent Rollup from treeshaking NPM packages [#108570](https://github.com/grafana/grafana/pull/108570), [@jackw](https://github.com/jackw)
|
|
||||||
|
|
||||||
<!-- 12.1.2 END -->
|
|
||||||
<!-- 12.0.5 START -->
|
|
||||||
|
|
||||||
# 12.0.5 (2025-09-23)
|
|
||||||
|
|
||||||
### Features and enhancements
|
|
||||||
|
|
||||||
- **Alerting:** Update alerting module [#110000](https://github.com/grafana/grafana/pull/110000), [@yuri-tceretian](https://github.com/yuri-tceretian)
|
|
||||||
- **Auditing:** Add settings to control recording of datasource query request and response body (Enterprise)
|
|
||||||
- **Auditing:** Document new options for recording datasource query request/response body [#109980](https://github.com/grafana/grafana/pull/109980), [@macabu](https://github.com/macabu)
|
|
||||||
|
|
||||||
### Bug fixes
|
|
||||||
|
|
||||||
- **Alerting:** Fix copying of recording rule fields [#110346](https://github.com/grafana/grafana/pull/110346), [@moustafab](https://github.com/moustafab)
|
|
||||||
- **Azure:** Fix time management field [#108481](https://github.com/grafana/grafana/pull/108481), [@aangelisc](https://github.com/aangelisc)
|
|
||||||
- **Fix:** Fix redirection after login when Grafana is served from subpath [#111156](https://github.com/grafana/grafana/pull/111156), [@mgyongyosi](https://github.com/mgyongyosi)
|
|
||||||
|
|
||||||
### Plugin development fixes & changes
|
|
||||||
|
|
||||||
- **Fix:** Prevent Rollup from treeshaking NPM packages [#110523](https://github.com/grafana/grafana/pull/110523), [@jackw](https://github.com/jackw)
|
|
||||||
|
|
||||||
<!-- 12.0.5 END -->
|
|
||||||
<!-- 11.6.6 START -->
|
|
||||||
|
|
||||||
# 11.6.6 (2025-09-23)
|
|
||||||
|
|
||||||
### Features and enhancements
|
|
||||||
|
|
||||||
- **Auditing:** Add settings to control recording of datasource query request and response body (Enterprise)
|
|
||||||
|
|
||||||
<!-- 11.6.6 END -->
|
|
||||||
<!-- 11.5.9 START -->
|
|
||||||
|
|
||||||
# 11.5.9 (2025-09-23)
|
|
||||||
|
|
||||||
### Features and enhancements
|
|
||||||
|
|
||||||
- **Auditing:** Add settings to control recording of datasource query request and response body (Enterprise)
|
|
||||||
- **Auditing:** Document new options for recording datasource query request/response body [#109976](https://github.com/grafana/grafana/pull/109976), [@macabu](https://github.com/macabu)
|
|
||||||
|
|
||||||
### Bug fixes
|
|
||||||
|
|
||||||
- **Fix:** Fix redirection after login when Grafana is served from subpath [#111099](https://github.com/grafana/grafana/pull/111099), [@mgyongyosi](https://github.com/mgyongyosi)
|
|
||||||
|
|
||||||
<!-- 11.5.9 END -->
|
|
||||||
<!-- 12.1.1 START -->
|
<!-- 12.1.1 START -->
|
||||||
|
|
||||||
# 12.1.1 (2025-08-13)
|
# 12.1.1 (2025-08-13)
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user