1588 Commits

Author SHA1 Message Date
e645a7d8ff Chore: update golang version in .drone.yaml (#101894) 2025-03-11 18:25:52 +01:00
607d39b573 Folders: Add k8s API client (#101862)
* Add folder k8s API

* Betterer

* Update index
2025-03-10 12:19:14 +01:00
3a3f781dcf Docs: Add dashboard variables content (#101733)
* Added variables section

* Updated transformations file and Makefile

* Finished Dashboard variables in transformations section
2025-03-07 09:55:39 -05:00
f52b6a5a42 Provisioning: Update spec and dependencies (#101746)
Co-authored-by: Clarity-89 <homes89@ukr.net>
2025-03-07 10:57:13 +03:00
caabb06cd8 Chore: Bump dependencies to address security issues (#101620)
* Chore: Bump golang.org/x/net to v0.36.0

* Chore: Use github.com/moby/moby version 27.5.1 instead of 26.0.0

* Chore: Bump github.com/ua-parser/uap-go to v0.0.0-20250213224047-9c035f085b90

* Chore: Bump github.com/grpc-ecosystem/go-grpc-middleware/v2 to fix 32-bit overflow issue
2025-03-06 10:12:05 +01:00
ac9615ec7d Grafana/schema: Expose dist directory in package.json exports (#101626)
build(schema): expose dist directory in package.json exports so scenes can consume them
2025-03-06 07:09:42 +01:00
61eb837dd6 Chore: Bump Go to 1.23.7 (#101576) 2025-03-05 14:55:36 +01:00
bbfeb8d220 Feature: Introduce subresource integrity checks (SRI) for frontend assets (#100983)
* feat(featuremgmt): introduce feature toggle for enabling sri checks

* feat(frontend): use assetSriChecks feature toggle to inject integrity hash into script tags

* chore(webpack): align sri algorithms across dev and prod builds

* docs(featuremgmt): update assetSriChecks to pass CI

* docs(featuremgmt): fix more spelling complaints with assetSriChecks

* Add crossorigin attribute

* chore(webpack): add subresource-integrity plugin

* build(webpack): wrap webpack jsonp loader integrity checks in feature flag checks

* revert(index.html): remove crossorigin attribute if assertSriChecks is disabled

---------

Co-authored-by: Kristian Bremberg <kristian.bremberg@grafana.com>
2025-03-04 11:56:35 +01:00
859c12bbb4 Grafana UI: Expose unstable entrypoint (#97080)
* feat(grafana-ui): build unstable entrypoint for experimental components

* feat(plugins): expose grafana/ui/unstable

* build(grafana-ui): add rollup plugin to create alias package.json for unstable entrypoint

* build(packages): rewrite prepare npm script to generate alias packagejson files

* chore(packages): use relative paths in publishConfig for exports generation

* chore(frontend): move npmcli/package-json package to root package.json

* revert(grafana-ui): remove rollup plugin for generating alias package.json files

* chore(grafana-ui): clean up unstable directory postpack to prevent yarn lock issues

* build(packages): fix scope for pkgName usage

* feat(packages): create separate cjs and esm builds that validate with arethetypeswrong cli

* chore(yarn): refresh lock file

* fix(packages): make sure alias package.jsons point to existing files
2025-03-04 09:55:41 +01:00
a7ecb19c31 Chore: Update base alpine docker image (#101320)
* baldm0mma/ update base image arg

* baldm0mma/ update alpine image

* baldm0mma/ skip failing test

* baldm0mma/ specifiy patch

* baldm0mma/ flaky test?
2025-02-25 16:23:28 -07:00
e482c037bf Chore: Update drone promote support (#101241) 2025-02-24 20:36:13 +02:00
49e5f77dd1 CI: Remove unused release_publisher scripts (#101019)
* Remove the unused `release_publisher` script.
* Remove the "whats new check" in Drone.
* Automatically set the What's New URL in releases based on the tagged version.
2025-02-20 12:00:15 -06:00
08000eeece Chore: refresh betterer results file (#100863)
* chore(betterer): refresh results file

* ci(betterer): add betterer:ci script to catch out of sync results file
2025-02-18 18:23:32 +02:00
27837ee937 Chore: Update alpine docker image (minor) - 3.20.5 to 3.20.6 [security] (#100791)
* Chore: Update alpine docker image (minor) - 3.20.5 to 3.20.6 [sec-fixes]

* Chore: Regenerate .drone.yml

---------

Co-authored-by: Matheus Macabu <macabu.matheus@gmail.com>
2025-02-17 16:41:38 +01:00
d092998927 Query Library: Move backend to enterprise (#100371)
* Move files to enterprise

* Remove last parts of QL api

* Fix CODEOWNERS
2025-02-14 11:05:03 +00:00
d1dee968c3 Schema V2: Adjust quick_ranges in time settings and remove time_options (#100135)
* adjut quickRanges type in v2

* clean up unused time_options property

* remove deprecated time_options property on time picker

* add schema migration for time_options

* adjust test
2025-02-12 19:23:09 +00:00
1f6142dd8f Chore: Remove betterer:merge and revert previous changes to betterer:stats (#98609) 2025-02-12 17:14:43 +02:00
a9b4b1e5be Chore: pin tonistiigi/binfmt version (#100510)
* Chore: pin tonistiigi/binfmt version

* change version to qemu-v7.0.0-28

* uninstall first, log version

* uninstall first, log version

* uninstall first, log version
2025-02-12 08:37:04 -06:00
0beb7e668b E2E: Add PDF/CSV/Image comparison tasks (#99104)
* E2E: Add tasks for new reporting tests

* try to switch to pdf-parse

* fix pdf comparison

* add log

* increase threshold

* clean up

* apply review feedback

* improve logs + fix local setup for reporting

* format
2025-02-07 15:46:32 +01:00
8e3327a446 Chore: Update grabpl version to v3.1.2 (#100157)
baldm0mma/ update grabpl version
2025-02-06 15:23:51 -07:00
05ea450dd2 Drone: Add apps directory for backend tests (#100204) 2025-02-06 17:01:50 +02:00
c94b8b78ae API client generation: Add verify-api-clients step to drone (#99987)
* add verify-api-clients step to drone

* change to check the verify step fails

* ignore conf dir

* rerun make drone

* undo change to make step fail
2025-02-04 09:13:44 +00:00
443cb092b4 RTK APIs: Support multiple source files (#100029) 2025-02-04 10:32:29 +02:00
46af49f907 Chore: Update alpine build docker image (#99998)
baldm0mma/ update alpine build image
2025-02-03 15:06:29 -07:00
f728b2df12 API client generation: Dedupe scripts and centralise them (#99970)
dedupe scripts and centralise them
2025-02-03 15:26:23 +00:00
a0901456ae RTK Clients: Fix namespace filter (#99949)
* Fix namespace filter

* Update comment

* Update filter
2025-02-03 13:50:15 +02:00
9f4e8ee206 Query Library: Update API client (#99382)
* Add process script

* Working version

* Use new types

* Use new types

* Update client

* Tweaks

* Process multiple specs

* Remove 'any' types

* Use BASE_URL

* Update CODEOWNERS

* Fix filename

* add openapi

* update CODEOWNDER

* use JSONeq

* Use existing specs

* Filter ForAllNamespaces

* Add instructions

* Switch to tsx

* Use openapi-types

* Update src path

* Expand docs

* Update docs

* Rename script

* codeowners

* More docs

* Move openapi-types to dev deps

* Update error message

* Update doc

* Fix typo

---------

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2025-01-29 18:05:40 +02:00
a08f406781 Security: Update to Go 1.23.5 (#99121)
* feat: update to Go 1.23.5

* chore: make drone

* chore: make update-workspace

* CI: Force re-build

* CI: Force re-build
2025-01-17 09:29:52 +01:00
e3e580edfa Chore: Prevent direct path imports from workspace grafana packages (#98940)
* restrict imports from @grafana/ui/src paths

* prevent path imports from all grafana packages

* just run on ui, runtime, data packages

* update
2025-01-15 15:47:44 +02:00
3884c0e896 Replace codespell with Vale spelling check (#98406) 2025-01-14 14:08:01 +00:00
05ea05d64e Chore: Bump Go to 1.23.4 (#98853)
* Chore: Bump Go to 1.23.4

This is done in preparation of updating the App SDK library we import, as it has bumped its Go version to 1.23.4 as well.

* Chore: make update-workspace
2025-01-14 09:28:44 +01:00
e754ea7a64 Fix: MySQL integration tests don't need to verify CA (#98857)
* Fix: MySQL integration tests don't need to verify CA

The _better_ solution here is to use our own, custom CA certificate. But there is also no real problem in risking a MITM
attack here as it's just test code, with no sensitive data, and it's ran on our own infra (so if we have a MITM problem,
we have even bigger issues...).

* Chore: make drone

* Chore: buildifier format
2025-01-13 15:40:19 +01:00
e0121055fb Update dependency typescript to v5.7.2 (#93749)
* Update dependency typescript to v5.7.2

* typescript fixes

* don't need this change

* remaining typescript fixes

* remove emotion/react aliasing

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2025-01-09 15:20:45 +00:00
7c596bb4ed Chore: remove betterer:json script (#98618)
* Chore: remove betterer:json script

* codeowners
2025-01-07 15:58:40 +00:00
49adb86233 Chore: Tweak order of update-workspace script (#98491) 2025-01-03 23:47:41 +02:00
17a9974b87 Storage: Removes integration tests for MySQL 5.7 since it is EOL (#98013)
* Removes integration tests for MySQL 5.7 since it is EOL

Signed-off-by: Bruno Abrantes <bruno@brunoabrantes.com>

* Remake drone.yml

Signed-off-by: Bruno Abrantes <bruno@brunoabrantes.com>

---------

Signed-off-by: Bruno Abrantes <bruno@brunoabrantes.com>
2024-12-16 12:28:30 -03:00
0f52065377 Chore: Rename betterer stats file and attempt to fix (#97887)
Rename betterer stats and attempt to fix
2024-12-13 09:19:11 +00:00
08bb66ba72 Chore: Update to node 22 (#97779)
* update to node 22

* downgrade to 22.11.0

* switch to using node-version-file

* update @types/node

* revert back to using node-version
2024-12-12 16:39:52 +00:00
b34fd6b6a1 Chore: update react-inlinesvg and use new icon caching mechanism (#97725)
* Update dependency react-inlinesvg to v4

* attempt to use new icon caching

* remove unicons chunk

* fix layout shift

* update snapshot

* parameterise cache by commit hash and clear old caches

* remove icon caching in storybook

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-12 13:35:28 +00:00
aa5ba238a4 CI: ignore failure in github_app_generate_token step (#97141) 2024-12-10 10:46:28 +02:00
9688d5b56b Frontend: Add build:stats for analysing bundles (#94729)
* build(webpack): add a stats config and build:stats script for analysing bundles locally

* chore(yarn): dedupe lock file

* feat(webpack): use bundle analyser by default, env vars for additional plugins
2024-12-09 12:09:32 +01:00
21f81cfba3 Remote Alertmanager: Make failing integration tests block merges (#97493) 2024-12-05 17:30:41 -03:00
6fe184a565 CI: add missing github app volume to release pipeline (#97406)
add github app volume to release pipeline
2024-12-04 17:02:01 +02:00
a33f16d568 Frontend: Set moduleResolution to bundler in TSconfig (#96450)
* build(typescript): switch module resolution to bundler for exports imports goodness

* chore: bump react-calendar and temp patch prometheus-io package

* Wip

* feat(decoupled-plugin): fix types errors in tests by including testing-library/jest-dom

* chore(betterer): pass custom tsconfig so betterer continues to run
2024-12-03 07:22:49 +01:00
feeb2c6ce0 Chore: Remove verification steps for deb/rpm in drone (#96991)
remove verification steps for deb/rpm in drone
2024-12-02 11:07:58 -07:00
cfbeea4ce7 Chore: Setup live reloading (#97248)
* setup live reloading

* put live-reloading behind cli flag, remove webpack.hot.js

* use env.liveReload

* fix lint

---------

Co-authored-by: joshhunt <josh@trtr.co>
2024-12-02 12:58:50 +00:00
e4a1243948 Alerting: Consume k8s API for notification policies tree (#96147)
* Add basic usage of K8s API for notification policies

* Add permissions checks for navtree for routes

* Add and update permissions for routing tree logic

* Add capability to skip calling contact points hook

* Conditionally show list of mute timings depending on permissions

* Conditionally link to mute timings if user can see at least one

* Add work in progress k8s handlers for routing tree

* Update notification policy hooks

* Wire up policies to permissions better (conditionally calling APIs)

* Add additional checks for whether to show grafana AM

* Add permission checks to access control

* Remove accidental permissions after rebase

* Update types and const for k8s routes

* Improve statefulness and reset routing tree in tests

* Update notif policy tests to check k8s and config API

* Fix type assertion

* Move non-grafana test out of .each

* Make failure case safer

* Override tag invalidation for notification policies API

* Pass in error and add new error alert component

* Add basic mock server conflict check

* Add test to check user can save after a conflict

* Add logic to allow reloading policies if changed by another user

* Fix test

* Update translations in Modals

* Add ViewAlertGroups ability

* Tweak provisioning logic and memoize AM config response

* Update snapshots for useAbilities

* Update result destructure

* Use enums for provenance in routingtrees

* Use consistent memoisation

* Fix _metadata for vanilla AM

* useAsync for error / update state

* move k8s api error handling to separate file

* use cause for error codes

* Use `supported` bools from Alertmanager abilities and clarify default policy

---------

Co-authored-by: Konrad Lalik <konrad.lalik@grafana.com>
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2024-11-26 13:46:39 +00:00
2400483d6c CI: Add github app token generation in pipelines that use GITHUB_TOKEN (#96646)
* Add github app token generation in pipelines that use GITHUB_TOKEN

* ci?

* clone gh repo using x-access-token user

* address linting issues

* use mounted volume for exporting token

* remove unused github_token env var swagger gen step

* replace pat on release_pr pipepline

* cleanup GH PAT references

* linting

* Update scripts/drone/steps/lib.star

* make drone

---------

Co-authored-by: Matheus Macabu <macabu.matheus@gmail.com>
2024-11-21 17:08:02 +02:00
20837d3837 Chore: silence sass warnings since we're going to remove sass anyway (#96530)
silence sass warnings since we're going to remove sass anyway
2024-11-15 12:18:58 +02:00
9e408f842c Alerting: Skip sanitizing labels when sending alerts to the remote Alertmanager (#96251)
* Alerting: Skip sanitizing labels when sending alerts to the remote Alertmanager

* fix drone image name
2024-11-13 11:21:44 -03:00