517 Commits

Author SHA1 Message Date
2554c482ea Kinds: publish kinds to kind registry (#67515)
* Start local schema registry

* Try to use latest version

* Revert "Try to use latest version"

This reverts commit 682385c0e4cef8f623d88fe9a2e83cdb412036a7.

* update schema registry jenny to validate new lineages

* save kind instead of lineage

* handle plugins

* get published schemas from GH + fix plugins

* handle kind not yet published

* Add script to use in workflow + handle maturity

* first pass on publish-kinds GH workflow

* fix script path

* remove unused script

* use make gen-cue instead of script

* trigger publish-kinds on every commit (for test)

* temporary update to use specific thema commit

* wrapping errors

* remove GH token & refactor for rate limit

* Update publish-kinds.yml

* Update publish-kinds.yml

* revert go.mod and go.sum updates

* use Thema specific commit

* Kind registry v2

* fix script path

* fix second script path

* update go.mod

* update schema registry source

* test checks

* add GITHUB_TOKEN

* revert test checks

* actually write next files when publishing

* Add kind set arg

* Add comments

* clean up workflows

* update Thema

* Update .betterer.results

* few fixes after lineage flattening

* Update publish-kinds-next.yml

* add codeowners for new files

* update thema

* apply review feedback

* update go version in workflows

* clean up workflows

* Add step to generate token and test

* Update publish-kinds-next.yml

* fix script

* try with the app name

* Update publish-kinds-next.yml

* clean up and update release workflow

* add comment

* publish kinds only on cue updates
2023-06-13 14:01:29 +02:00
0ed5d3bdf2 Revert "Alerting: Refactor the ImageStore/Provider to provide image URL/bytes" (#69265)
Revert "Alerting: Refactor the ImageStore/Provider to provide image URL/bytes (#67693)"

This reverts commit 72a187b0be1222b8fecb63792fe3ea67d70d31ad.
2023-05-30 11:33:33 -05:00
72a187b0be Alerting: Refactor the ImageStore/Provider to provide image URL/bytes (#67693)
* (WIP) Refactor the ImageStore interface to work with our latest alerting repository

* update alerting package

* refactor, new URLExists method in ImageProvider

* tests for the new methods

* fix linter warnings

* use alertingImages as an alias for grafana/alerting/images

* logs about image uris and not found images

* nerf image not found logs

* extract duplicated code to getImageFromURI() method

* refactor getImageFromURI()

* add index on url

* add comment about migration log

* sync generated files
2023-05-30 11:25:55 -03:00
09895c26b6 Chore: Hacky first pass on generating composable kinds within grafana/schema (#64723)
* Super hacky first pass on gen types

* First sketchy pass at generated compo kinds in TS, grok-style

* Merge fix

* Create jenny for MajorsOrX for plugins

* Re-generate files with imports

* Delete invalid generated file

* Fix cue

* Update go.mod

* Update schemas

* Fix go-imports

* Regenerate cue files

---------

Co-authored-by: spinillos <selenepinillos@gmail.com>
2023-05-30 05:56:18 -07:00
bd622a5381 Chore: Unify references for dataquery (#68963)
* Unify references for dataquery

* Fix ResultFormat in azure types

* Update azure-log with new schema

* Fix cloudwatch query

* Update thema

* Fix test

* More fixes

* More fixes

* Fix lint
2023-05-26 10:16:01 +02:00
edf1775d49 AuthN: Embed an OAuth2 server for external service authentication (#68086)
* Moving POC files from #64283 to a new branch

Co-authored-by: Mihály Gyöngyösi <mgyongyosi@users.noreply.github.com>

* Adding missing permission definition

Co-authored-by: Mihály Gyöngyösi <mgyongyosi@users.noreply.github.com>

* Force the service instantiation while client isn't merged

Co-authored-by: Mihály Gyöngyösi <mgyongyosi@users.noreply.github.com>

* Merge conf with main

Co-authored-by: Mihály Gyöngyösi <mgyongyosi@users.noreply.github.com>

* Leave go-sqlite3 version unchanged

Co-authored-by: Mihály Gyöngyösi <mgyongyosi@users.noreply.github.com>

* tidy

Co-authored-by: Mihály Gyöngyösi <mgyongyosi@users.noreply.github.com>

* User SearchUserPermissions instead of SearchUsersPermissions

* Replace DummyKeyService with signingkeys.Service

* Use user🆔<id> as subject

* Fix introspection endpoint issue

* Add X-Grafana-Org-Id to get_resources.bash script

* Regenerate toggles_gen.go
* Fix basic.go

* Add GetExternalService tests

* Add GetPublicKeyScopes tests

* Add GetScopesOnUser tests

* Add GetScopes tests

* Add ParsePublicKeyPem tests

* Add database test for GetByName

* re-add comments

* client tests added

* Add GetExternalServicePublicKey tests

* Add other test case to GetExternalServicePublicKey

* client_credentials grant test

* Add test to jwtbearer grant

* Test Comments

* Add handleKeyOptions tests

* Add RSA key generation test

* Add ECDSA by default to EmbeddedSigningKeysService

* Clean up org id scope and audiences

* Add audiences to the DB

* Fix check on Audience

* Fix double import

* Add AC Store mock and align oauthserver tests

* Fix test after rebase

* Adding missing store function to mock

* Fix double import

* Add CODEOWNER

* Fix some linting errors

* errors don't need type assertion

* Typo codeowners

* use mockery for oauthserver store

* Add feature toggle check

* Fix db tests to handle the feature flag

* Adding call to DeleteExternalServiceRole

* Fix flaky test

* Re-organize routes comments and plan futur work

* Add client_id check to Extended JWT client

* Clean up

* Fix

* Remove background service registry instantiation of the OAuth server

* Comment cleanup

* Remove unused client function

* Update go.mod to use the latest ory/fosite commit

* Remove oauth2_server related configs from defaults.ini

* Add audiences to DTO

* Fix flaky test

* Remove registration endpoint and demo scripts. Document code

* Rename packages

* Remove the OAuthService vs OAuthServer confusion

* fix incorrect import ext_jwt_test

* Comments and order

* Comment basic auth

* Remove unecessary todo

* Clean api

* Moving ParsePublicKeyPem to utils

* re ordering functions in service.go

* Fix comment

* comment on the redirect uri

* Add RBAC actions, not only scopes

* Fix tests

* re-import featuremgmt in migrations

* Fix wire

* Fix scopes in test

* Fix flaky test

* Remove todo, the intersection should always return the minimal set

* Remove unecessary check from intersection code

* Allow env overrides on settings

* remove the term app name

* Remove app keyword for client instead and use Name instead of ExternalServiceName

* LogID remove ExternalService ref

* Use Name instead of ExternalServiceName

* Imports order

* Inline

* Using ExternalService and ExternalServiceDTO

* Remove xorm tags

* comment

* Rename client files

* client -> external service

* comments

* Move test to correct package

* slimmer test

* cachedUser -> cachedExternalService

* Fix aggregate store test

* PluginAuthSession -> AuthSession

* Revert the nil cehcks

* Remove unecessary extra

* Removing custom session

* fix typo in test

* Use constants for tests

* Simplify HandleToken tests

* Refactor the HandleTokenRequest test

* test message

* Review test

* Prevent flacky test on client as well

* go imports

* Revert changes from 526e48ad4550fed7e2b753b9d0a0cc6097155f58

* AuthN: Change the External Service registration form (#68649)

* AuthN: change the External Service registration form

* Gen default permissions

* Change demo script registration form

* Remove unecessary comment

* Nit.

* Reduce cyclomatic complexity

* Remove demo_scripts

* Handle case with no service account

* Comments

* Group key gen

* Nit.

* Check the SaveExternalService test

* Rename cachedUser to cachedClient in test

* One more test case to database test

* Comments

* Remove last org scope

Co-authored-by: Mihály Gyöngyösi <mgyongyosi@users.noreply.github.com>

* Update pkg/services/oauthserver/utils/utils_test.go

* Update pkg/services/sqlstore/migrations/oauthserver/migrations.go

Remove comment

* Update pkg/setting/setting.go

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>

---------

Co-authored-by: Mihály Gyöngyösi <mgyongyosi@users.noreply.github.com>
2023-05-25 15:38:30 +02:00
c66d5721f7 Kinds: Use apimachinery ObjectMeta for metadata (#68668) 2023-05-24 09:13:44 -07:00
323cbe1997 kindsys: Adapt to new flattened lineage syntax in Thema (#68034)
* Update all core kinds to flattened lineages

* Regen Go types, without any

* Regen Go types, s/interface{}/any/

* Update generated core typescript

* Update generate docs

* Fix defaults gen in veneer index jenny

* Flatten plugindef lineage

* Convert all plugin kinds to flattened form

* Switch back to interface{} for now

* Switch to fs.Sub in plugin DeclParser

* Mostly undesirable codegen changes, to be fixed

* Update mod and sum

* Update pfs tests to flattened lineages

* Update thema to latest, regen docs
2023-05-24 10:47:25 +02:00
286b9e08e9 Plugins: Bump Plugin SDK version and address instance management breaking changes (#68900)
* bump sdk and propagate ctx

* fix tests
2023-05-24 10:19:34 +02:00
b7ca2d89b1 Chore: Update ProtonMail/go-crypto (#68641) 2023-05-18 09:52:31 +02:00
33fd83f7e3 kindsys: Adapt to new PanelCfg schema interface (#65297)
* kindsys: Adapt to new PanelCfg schema interface

* building locally

* Remove Panel prefix in cue files

* Regenerate

* Update imports

* fixup! Merge branch 'remove-panel-prefix' into sdboyer/redundant-panelcfg-prefixes

* Fix formatting

---------

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Tania B <yalyna.ts@gmail.com>
2023-05-15 23:07:54 -04:00
eafba8fa69 Azure: Configuration for user identity authentication in datasources (Experimental) (#50277)
* Configuration for user identity authentication

* Use token endpoint form Azure AD settings

* Documentation update

* Update Grafana Azure SDK

* Fix secret override

* Fix lint

* Fix doc wording
2023-05-15 18:00:54 +01:00
4df3dc7703 Chore: Bump github.com/go-sql-driver/mysql from 1.6.0 to 1.7.1 (#67584)
Bump github.com/go-sql-driver/mysql from 1.6.0 to 1.7.1

Bumps [github.com/go-sql-driver/mysql](https://github.com/go-sql-driver/mysql) from 1.6.0 to 1.7.1.
- [Release notes](https://github.com/go-sql-driver/mysql/releases)
- [Changelog](https://github.com/go-sql-driver/mysql/blob/master/CHANGELOG.md)
- [Commits](https://github.com/go-sql-driver/mysql/compare/v1.6.0...v1.7.1)

---
updated-dependencies:
- dependency-name: github.com/go-sql-driver/mysql
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-10 15:16:06 +03:00
23a9963507 Chore: Upgrade Prometheus to 2.43.0 (#67853)
- github.com/prometheus/prometheus => 2.43.0 (aka 0.43.0)
- github.com/prometheus/client_golang => 1.15.1
2023-05-10 14:09:49 +02:00
d1229b532d Chore: Delete codegen dead code (#68072)
* Delete codegen dead code

* Use codejen

* Fix lint

* Use fs verify
2023-05-09 19:13:45 -04:00
8bb62a8316 Alerting: Add option for memberlist label (#67982) 2023-05-09 10:32:23 +02:00
c0bb404981 CloudWatch: Use grafana-aws-sdk v0.15.0 (#67876)
Cloudwatch: Update grafana-aws-sdk
2023-05-05 10:41:40 -04:00
881ed3b599 Schema: Add basic folder schema (#67561) 2023-05-03 13:07:39 -07:00
15d4169813 Frontend logging: Remove Sentry javascript agent support (#67493)
* remove Sentry

* fix sourcemap resolve
2023-05-02 12:10:56 +03:00
91471ac7ae Alerting: Template Testing API (#67450) 2023-04-28 15:56:59 +01:00
c4716918f2 Plugins: Bump grafana-plugin-sdk to v0.160.0 (#67488) 2023-04-28 14:03:05 +02:00
8845b4cc3b Plugins: Bump plugin-related backend dependencies (#67373)
Bump github.com/hashicorp/go-plugin to v1.4.9
2023-04-28 11:32:45 +02:00
d3bfaf549f Alerting: Update grafana/alerting to 4f09f51 (#67329) 2023-04-27 23:45:34 +03:00
ca1f79b9ba Kindsys: Target k8s style resource definitions (#67008)
Co-authored-by: sam boyer <sdboyer@grafana.com>
2023-04-27 23:32:38 +03:00
5c32925f9f PostgreSQL: Fix tls certificate issue by downgrading lib/pq (#67372)
* PostgreSQL: Downgrade lib/pq

* Add comment
2023-04-27 15:26:19 +02:00
6d8f9c5bf4 Chore: Remove opentracing and use opentelemetry instead (#67200)
* remove opentracing and use otel instead

* add various samplers for jaeger

* remove useless test that is covered in otel now

* we do not need a struct there

* remove old tests

* restore tests that parse various configurations

* check errors in tests

* Update pkg/infra/tracing/tracing_test.go

fix typo

Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com>

* add test for both legacy and new config formats

* use named constants

---------

Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com>
2023-04-27 15:04:43 +02:00
e17737ba87 Chore: Update SAML lib (#824)
Update saml lib
2023-04-27 14:40:44 +03:00
69a14b9a5e Phlare: ability to set maxNodes parameter (#67017) 2023-04-27 10:50:11 +02:00
b71ef9b667 Alerting: Update grafana/alerting to fix #67177 (#67324) 2023-04-26 20:51:55 +01:00
f48ef6ea50 Chore: Upgrade github.com/docker/docker dependency (#67098) 2023-04-26 15:02:01 +02:00
a8b4a4bb45 Alerting: Update alerting module to 20230418161049-5f374e58cb32 + refactoring (#66622)
* update to alerting 20230418161049-5f374e58cb32
* rename renamed structs in https://github.com/grafana/alerting/pull/73
* update ValidateContactPoint to use BuildReceiverConfiguration
* update logger factory according to changes
* rewrite integration builder
Co-authored-by: Santiago <santiagohernandez.1997@gmail.com>
2023-04-25 13:39:46 -04:00
0adacd1dd3 Chore: Update schema libraries to their latest versions and fixes (#66884)
Update thema, cuelang and necessary dependencies
2023-04-20 11:13:00 +03:00
bc11a484ed Alerting: Add support for running HA using Redis (#65267)
Co-authored-by: Steve Simpson <steve.simpson@grafana.com>
2023-04-19 17:05:26 +02:00
842ce14429 Live: Update Centrifuge to the latest version (#66637) 2023-04-18 21:47:15 -07:00
9665b3afe7 Chore: Update Cuetsy to v0.1.8 version (#66456)
* Update cuetsy version

* Fix defaults

* Update cuetsy

* Update cuelang version in bingo

* Remove TODO comments
2023-04-14 16:45:54 +02:00
e78be44e1a SSE: Dataplane Compliance (#65927)
Takes a specific code path for data that identifies itself as dataplane instead of "guessing" what the data is.

The data must identify itself by being in the dataplane by having both the following frame metadata properties:

- TypeVersion property that is greater than 0.0
- 'Type' property

The flag is disableSSEDataplane and disables this functionality and uses the old code for all queries regardless.

See https://github.com/grafana/grafana-plugin-sdk-go/blob/main/data/contract_docs/contract.md for dataplane details.
2023-04-12 12:24:34 -04:00
536fad5b61 Plugins: add env variables needed for the secure socks proxy in the plugins sdk (#65878) 2023-04-07 08:20:25 -06:00
6c6427e63f Chore: Use latest go-sdk (v0.158.0) (#66054)
SDK release notes:
* Logs contract: ignore remaining fields by @gabor in #659
* Logs contract: more robust field finding, explicit approach by @gabor in #660
* Tracing: Support multiple OTel propagators by @xnyo in #663
* Tracing: Add more details to HTTP Outgoing Request by @xnyo in #664
* Data: Encode Nanosecond into JSON by @kylebrandt in #647
* Data: cmp tests using FrameTestCompareOptions() will no longer ignore time differences beyond millisecond resolution
2023-04-05 21:00:31 +03:00
211beae736 MSSQL: Update forked go-mssqldb dependency (#65658) 2023-03-31 10:07:37 -06:00
04336d53a9 Alerting: Update prometheus version (#65688) 2023-03-31 16:34:35 +02:00
4586bac426 Bump plugin-sdk (#65652) 2023-03-31 12:58:22 +02:00
562d8dba5d CloudMonitoring: Update sdks to latest (#65252)
* Upgrade grafana-google-sdk-go to v0.1.0

* Upgrade @grafana/google-sdk to 0.1.1

* Update doc with provisioning example

* Remove unused types

* Use config types from the sdk

* Add metrics
2023-03-29 12:16:28 +02:00
7731a4d6af Tracing: Add more detail to HTTP Outgoing Request (#64757)
Add more detail to HTTP Outgoing Request.
As events rather than sub-spans, to save cluttering the view.
2023-03-27 13:04:43 +02:00
cc5211119b switch from github.com/gofrs/uuid to github.com/google/uuid (#65016)
* switch from github.com/gofrs/uuid to github.com/google/uuid

* add golangci rule to prevent inadvertent reintroduction
2023-03-21 06:31:29 -04:00
0b506b4ccc Alerting: Update github.com/grafana/alerting (#64882) 2023-03-16 13:59:35 +00:00
8745d7ef1b extract kindsys to external library (#64562)
* extract kindsys

* reinstate kindsys report

This may end up living somewhere else (or not! who knows!), but the important part is that I don't get rid of it right now :)

I hate the package layout (kindsysreport/codegen) for the main function and will take pretty much any alternative suggestion, but we can change also change it later.

Note that the generated report.json is in a different location - anything using this (ops something) needs to be updated.

* kindsysreport in codeowners
2023-03-15 12:04:28 -04:00
4583fe58f3 Chore: Update Grafana to use Alertmanager v0.25.1-0.20230308154952-78fedf89728b (#64778) 2023-03-14 18:59:25 -04:00
cb8e01214d Revert "Alerting: Update Prometheus Alertmanager (#64434)" (#64503)
This reverts commit 5a4ebe3a67d50bf1fcf79afeff58f50881bc2f07.
2023-03-09 13:32:07 +01:00
5a4ebe3a67 Alerting: Update Prometheus Alertmanager (#64434)
This includes a fix to duplicate notification under certain conditions, the details can be found at: https://github.com/grafana/prometheus-alertmanager/pull/30
2023-03-08 18:34:17 +01:00
5422f7cf56 Alerting: Add metrics for active receiver and integrations (#64050)
* Alerting: Add metrics for active receiver and integrations

Introduces metrics that allows us to track the number of configured receivers and integration in the Alertmanager for all orgs.

As a bonus, I realised that the alert reception metrics where not being exported nor collected. This does that too.
2023-03-06 16:37:07 +00:00