* bump plugin-e2e and fix failing test
* do not ignore failures
* generate trace on every test
* force test to fail for debugging purposes
* fix broken test
* regenerate drone file
* Swagger: Re-generate the enterprise specification if enterprise is cloned successfully
* API change to trigger the swagger CI step execution
* Swagger: Silence logs
* Regenerate openapidocs at 1.21.8 to match ci
* Adjust trigger to work on the actual outputted files
* Also put go.mod and go.sum in the triggers
* manually fix
* Make an arbitrary change rather than touching the trigger to force a run
* Drop all triggers - run all the time
* Print diff - taken from @papagian's PR
* Manual fixes to swagger doc
---------
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
* chore: bump Go to 1.21.8
Signed-off-by: Dave Henderson <dave.henderson@grafana.com>
* bump workflows too
Signed-off-by: Dave Henderson <dave.henderson@grafana.com>
---------
Signed-off-by: Dave Henderson <dave.henderson@grafana.com>
* AuthN: Remove embedded oauth server
* Restore main
* go mod tidy
* Fix problem
* Remove permission intersection
* Fix test and lint
* Fix TestData test
* Revert to origin/main
* Update go.mod
* Update go.mod
* Update go.sum
* add playwright test and plugin-e2e
* run tests in ci
* add ds config tests
* add panel edit tests
* add annotation test
* add variable edit page tests
* add explore page tests
* add panel plugin tests
* add readme
* remove comments
* fix broken test
* remove user.json
* remove newline in starlark
* fix lint issue
* ignore failure of playwright tests
* update code owners
* add detailed error messages in every expect
* update message frame
* fix link
* upload report to gcp
* echo url
* add playwright developer guide
* bump plugin-e2e
* add custom provisioning dir
* update plugin-e2e
* remove not used imports
* fix typo
* minor fixes
* use latest version of plugin-e2e
* fix broken link
* use latest plugin-e2e
* add feature toggle scenario verification tests
* bump version
* use auth file from package
* fix type error
* add panel data assertions
* rename parent dir and bump version
* fix codeowners
* reset files
* remove not used file
* update plugin-e2e
* separate tests per role
* pass prov dir
* skip using provisioning fixture
* wip
* fix permission test
* move to e2e dir
* fix path to readme
* post comment with report url
* format starlark
* post comment with report url
* post comment with report url
* fix token
* make test fail
* fix exit code
* bump version
* bump to latest plugin-e2e
* revert reporting message
* remove comments
* readding report comment
* change exit code
* format starlark
* force test to fail
* add new step that posts comment
* fix link
* use latest playwright image
* fix failing test
* format starlark
* remove unused fixture
Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
---------
Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
* Update dependency webpack-dev-server to v5
* update webpack.hot config (is this even used anymore?)
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
* chore(lerna): bump lerna to 8.x.x
* chore(lerna): run lerna repair command to update lerna.json
* ci(drone): use raw output (no quotes) when updating package.json version
* ci(drone): update config file
* chore(monaco): bump monaco-editor to latest version
* feat(codeeditor): use esm to load monaco editor
* revert(monaco): put back previous version
* feat(monaco): setup MonacoEnvironment when bootstrapping app
* feat(monaco): load monaco languages from registry as workers
* feat(webpack): clean up warnings, remove need to copy monaco into lib
* fix(plugins): wip - remove amd loader workaround in systemjs hooks
* chore(azure): clean up so QueryField passes typecheck
* test(jest): update config to fix failing tests due to missing monaco-editor
* test(jest): update config to work with monaco-editor and kusto
* test(jest): prevent message eventlistener in nodeGraph/layout.worker tripping up monaco tests
* test(plugins): wip - remove amd related tests from systemjs hooks
* test(alerting): prefer clearAllMocks to prevent monaco editor failing due to missing matchMedia
* test(parca): fix failing test due to undefined backendSrv
* chore: move monacoEnv to app/core
* test: increase testing-lib timeout to 2secs, fix parca test to assert dom element
* feat(plugins): share kusto via systemjs
* test(e2e): increase timeout for checking monaco editor in exemplars spec
* test(e2e): assert monaco has loaded by checking the spinner is gone and window.monaco exists
* test(e2e): check for monaco editor textarea
* test(e2e): check monaco editor is loaded before assertions
* test(e2e): add waitForMonacoToLoad util to reduce duplication
* test(e2e): fix failing mysql spec
* chore(jest): add comment to setupTests explaining need to incresae default timeout
* chore(nodegraph): improve comment in layout.worker.utils to better explain the need for file
* fix stateSlice type errors for build, do not export stateSlice in the future
* fix exports for consistency
* fix package.json for rollup, update licence, keep private
* rollup as devdependencies
* try a different version of @testing-library/dom to try to fix the aria-query issue in drone
* remove testUtils export
* change @testing-library/dom version back
* remove icon bundling, grafana-ui handles this
* remove unused dependencies
* components folder: avoid nested barrel files and use named exports
* configuration folder: avoid nested barrel files and use named exports
* querybuilder folder: avoid nested barrel files and use named exports
* general files: use named exports
* fix loader issue with promql for external ds
* default to support labels match api
* export things necessary for custom config auth
* remove changes to core datasource.test.ts
* Update packages/grafana-prometheus/package.json
Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
* remove icons script, not needed
* update readme, remove references to grafana/ui
* remove private property
* check tests
* remove private property in package.json
* update changelog
* update npm drone script for file checks
* debug why updating test in script broke another library that had never been tested before
* fix npm test for checking licenses
* fix npm test for checking licenses
* fix npm test for checking licenses
* fix npm test for checking licenses
* update license file for npm drone test
* fix bash script
---------
Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
* Expose betterer results as JSON
* Make prettier and add command
* Add aggregation
* Add json generation to lefthook
* Use relative path
* Add grafanabot as codeowner
* Fix parameter type
* Include changes to results
* Run betterer:json
* Chore: webpack alias react and grafana-runtime to share singletons
* Move alias to dev webpack, add alias for grafana-data as well
* remove whitespace
- Feature Toggle is `promQLScope`.
- Query property is:
"scope": {
"matchers": "{job=~\".*\"}"
}
Misc:
- Also updates drone GO version to address ARM bug https://github.com/golang/go/issues/58425
- Also updates Swagger defs that were causing builds to fail
---------
Co-authored-by: Kevin Minehart <kmineh0151@gmail.com>
* Chore: Use yarn node-modules linker
* fix react-router types resolution
* temp skip failing tests
* remove yarn-links for internal path aliases to fix some webpack errors
* transpile all .ts files, even those in node_modules (usually our internal workspace packages
* fix transformers mock
* import react router type directly
* remove old resolution
* more cleanup
* remove preserveSymlinks: true from tsconfig to make Go To Definition resolve grafana ui to the original location
* developer guide
* update dev guide
* remove sdks
* reenable tests
* fix tsconfig trailing commas (where did they come from)
* bumping grafanas go version to 1.21.5
* adding how to upgrade go doc
* removing the whole ci-build and corresponding pipelines
* clarifying that we have to run make drone
* fixing starlark linter and removing unused code
* Adding note about enterprise
* trying to change the underyling image to avoid musl issues
* only need to golang one
* Added missing alt text
* Rebuilt markdown file
q
wq
* baldm0mma/081223-missing-alt-text-2/ add alt image content to images and build markdown
* baldmomma/081223-missing-alt-text-2/update alt text and build
* baldm0mma/081223-missing-alt-text-2/ make altText required
---------
Co-authored-by: jev forsberg <jev.forsberg@grafana.com>
* Changed weights of pages under panels and visualizations
* Fixed weights
* Moved calculation types under Query and transform data
* Changed weight of Troubleshoot queries
* Updated Grafana (not Cloud) links
* commit changes
* Revert change made directly to transform-data.md
* Updated Cloud links
* Added alias for calculation-types.md
* Updated calculation types links
* Rebuilt markdown file
* Reverted weight setting for troubleshoot-queries.md and updated cloud link
* Updated cloud links to point to cloud docs
* Update existing aliases
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
* Added docs reference shortcode to legend-mode.md
* Reverted addition of docs reference shortcode
---------
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* Alerting: Introduce a Mimir client as part of the Remote Alertmanager
This is our first attempt at making Grafana communicate use Mimir as a backend - it uses a new set of APIs that we've developed on the Mimir side to upload the grafana configuration and alertmanager state so that it can then be ported over.
Codewise, we've introduced a couple of things:
A client to isolate in its own package all the communication that happens with Mimir
A few changes to the remote/alertmanager to include uploading the configuration and state when it starts
A few refactors that align a bit better with the design approach that we're thinking
An integration tests again these newly developed APIs using a custom image
---------
Signed-off-by: gotjosh <josue.abreu@gmail.com>
Co-authored-by: Santiago <santiagohernandez.1997@gmail.com>
* Chore: Replace grafana-authnz-team with identity-access-team as code owner
* Chore: Replace grafana-authnz-team with identity-access-team as code owner
* Fix the failing test
* build docker after packages are updated
* use my branch for main pipelines for testing
* use my branch for main pipelines for testing
* use main instead now
* formatting
* update to yarn 4
* update project to yarn 4
* update tetherdrop archive
* update sdks
* change puppeteer image to official node 20 one
* revert previous, use grafana/docker-puppeteer:pre-node-20 instead
* okay, try original docker image, but use npx instead of yarn for wait-on
* remove wait-on from deps as we use it via npx now
* yarn dedupe
* remove logs from drone
* empty commit testing yarn cache :)
* comment explaining why no -y
* Use latest grafana/docs-base image
The pinned tag does not support recent shortcodes like `docs/public-preview`.
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
* Always pull the image
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
---------
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
* chore(node): update node version to 20
* chore(node): bump to 20.8.0, update drone variables
* chore(drone): update yaml config
* chore(yarn): bump yarn to latest to fix building binaries ERR_IMPORT_ASSERTION_TYPE_MISSING errors
* test(grafana-data): update whitespace in time formats for node 20 (18.13+)
* chore(node): move to LTS 20.8.1
* chore(node): bump to LTS 20.9.0
* Remove docs/reference shortcode for moved content
* Updated transformers content file
* Updated README.md to make Transformations section more prominent
* Updated index file to make super clear where you must update this content
* Added doc/ref back in with new format
* Removed bracket
* Added missing quotation marks
* Added reference style link and removed link from docs/ref shortcode
* Updated link
* Add warning to only use reference style links in content.ts
* ihm/251023-link-fix/ update scripts/docs/generate-transformations.ts with proposed changes, and build markdown
* ihm/251023-link-fix/ build docs
* Fix extraneous whitespace
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
* Add precheck for ONESHELL support
Otherwise the recipe doesn't work.
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
---------
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
Co-authored-by: jev forsberg <jev.forsberg@grafana.com>
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* chore: move over initial changes from sofia's pr #58029
* chore: remove go_image
* chore: begin removing edition, remove unused imports
* chore: remove edition from swagger_gen.star and generate .drone.yml
* chore: regen drone.yml
* fix: fix order of load statements
* fix: try #2 fix order of load statements
* linter fixes
* chore: add doc comment explaining purpose of new clone_pr_branch step
* fix: add placeholder documentation for ver_mode arg
* attempt #1 to import and use clone_enterprise_step_pr
* Update scripts/drone/pipelines/swagger_gen.star
Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com>
* attempt #2 to import and use clone_enterprise_step_pr
* fix: fix drone lint err invalid or unknown step dependency
* fix: regen hmac to make drone run
* fix: fix drone lint err
* fix: update swagger-clean cmd in step
* attempt to return non zero exit code
* test to see if pipeline fails
* fix: add git to clone pr branch step
* fix: add git and make to swagger-gen step
* try to rerun drone
* debug: figure out why cannot find make swagger-clean
* debug: see if cd grafana/grafana fixes things
* debug: undo cd grafana/grafana
* debug: add more logging statements
* debug: try and remove cd grafana in swagger-gen
* debug: removed grafana after clone statement; add debug before cloning
* fix: remove disable clone
* regen specs to see if swagger-gen step passes now
* add descriptive error message to swagger-gen step
* remove api-spec.json from .gitignore
* revert backend change, regen spec
* add back backend change, regen specs
* Update scripts/drone/pipelines/swagger_gen.star
Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com>
* Update scripts/drone/pipelines/swagger_gen.star
Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com>
* revert gitignore change, set enterprise source to drone source branch
* chore: remove unused variable, change committish var name to source
* testing functionality: make a new BE change without gen spec, pipeline should fail
* test functionality: does removing err msg cause step to fail properly
* test functionality: add back err msg and && after
* chore: remove debug statements from swagger gen step
* chore: remove debug lines from clone_pr_branch step
* test functionality: regen specs, swagger_gen step should pass
* test funcionality: regen specs again ????
* chore: update swagger-gen step err msg
* test functionality: make BE change dont regen spec, swagger gen should fail
* test functionality: regen the specs, swagger-gen should pass
* chore: revert test BE change, regen spec
* chore: remove unused clone step
* chore: regen drone.yml
---------
Co-authored-by: Timur Olzhabayev <timur.olzhabayev@grafana.com>
Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com>
* Implement RGM pipeline parity between editions
* Use grafana/grafana-build:dev-11c8a20
* Use grafana/grafana-build:dev-261c863
* Use grafana/grafana-build:dev-2db3b18
* Switch nightly trigger for testing purposes
* Use grafana-dev api key for testing
* Use grafana/grafana-build:dev-d4d2e26
* Use grafana-dev api key
* Use production variables
* Revert nightly trigger to cron
* Alerting: Use Mimir image to run integration tests for the remote Alertmanager
* skip integration test when running all tests
* skipping integration test when no Alertmanager URL is provided
* fix bad host for mimir_backend
* remove basic auth testing until we have an nginx image in our CI
Reduce flakiness of e2e tests caused by write contention in sqlite
Write contention in sqlite on startup intermittently causes failed tests because
of failed service runs. This can have various root causes, one example is
dashboard provisioning:
Dashboard provisioning's frequent commits can cause other read transaction
snapshots to invalidate and throw SQLITE_BUSY/SQLITE_BUSY_SNAPSHOT. If those
failing transactions have a long length but not long enough to ensure all of
the dashboards have finished provisioning it will run out of retries and fail
entirely.
This change helps indirectly reduce these write contentions by limiting the
connection pool for e2e tests.
As a bonus, having our e2e tests run using `max_open_conn = 2` means it acts
as a guard against regressions that would affect certain internal instances
that run with these settings.
* moved themecontext to data
* chore(grafana-ui): re-export ThemeContext from grafana/data for backwards compatibility
* Moved icon bundling to core.
* feat(plugins): share react-inlinesvg with plugins for grafana/ui bundling
* chore(codeowners): add generate-icon-bundle.js to file
* chore(storybook): update path to iconBundle file for theme
* feat(plugins): share i18n dependency via systemjs
* Make sure that icon bundle is initialized for tests.
* Removed comment.
* added tests for icon root.
* Removing the need of having an init variable.
* feat(grafana-ui): add icon svgs to bundle for projects that don't rely on grafana
---------
Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
* Use production gcom api for nightly builds
* Use production package repositories
* Remove unused confusing env variable
* Comment out previous gcom nightly pipeline
* Remove unused grafana-com-nightly pipeline
* Remove unused import from cron.star
* test mimir image drone
* add mimir service to services.star
* change name for mimir step
* change remote alertmanager step names, add commands for integration tests
* add tag to mimir image
* Add nightly prerelease builds
* Fix duplicated pipeline names
* Fix misnamed dependencies
* Fix misnamed dependencies
* Fix string formatting
* Add option to specify bucket to RGM pipeline
* Fix trigger?
* Comment out cron triggers
* Fix windows bucket for nightly
* Fix versioning for windows and verify pipelines
* Use grafana/grafana-build:dev-209553c
* Fix version on windows steps
* Fix version on windows steps
* Fix windows .zip path
* Fix windows .zip path
* Remove windows builds from nightly for now
* Remove verify release pipeline from nightly
* Add docstring to rgm_release
* Revert changes to get_windows_steps
* Simplify changes to rgm.star
* Use grafana/grafana-build:dev-f5a15d4
* Add rgm copy step
* Use grafana/grafana-build:dev-d88be0f
* Fix destination variable
* Escape copy destination environment variable
* Add -r flag to rgm copy command
* Add dependency to rgm-copy step
* Add dist volume
* Use absolute path for dist volume
* Move dist folder to drone workspace
* Delegate drone workspace path to grafana-build
* Use grafana/grafana-build:dev-66149b8
* Lower folder depth
* Use grafana/grafana-build:dev-7355791
* Add rgm-nightly-publish pipeline
* Merge imports on rgm.star
* Fix rgm_copy to allow copying to local destination
* Use grafana/grafana-build:dev-36ec1e2
* Use grafana/grafana-build:dev-634d8dc
* Use grafana/grafana-build:dev-7a93728
* Use grafana/grafana-build:dev-5e36725
* Use grafana/grafana-build:dev-f5ebe1f
* Fix copy source for nightly builds
* Fix drone build number on rgm-copy step
* Use grafana/grafana-build:dev-637583f
* Use grafana/grafana-build:dev-f2cc524
* Allow tag trigger on grafana/grafana for testing
* Use grafana/grafana-build:dev-c71d4b7
* Use grafana/grafana-build:dev-63beac8
* Use grafana/grafana-build:dev-224a0dd
* Add environment variables for package publishing
* Revert unintentional change to dataquery.cue
* Add package publish step to nightly pipeline
* Use GCS path for package publish
* Pre-evaluate drone workspace on packages path
* Use hardcoded drone workspace path
* Remove unused env from publish packages step
* Use grafana/grafana-build:dev-657ea6a
* Use grafana/grafana-build:dev-1a9beec
* Use grafana/grafana-build:dev-f0053c8
* Use grafana/grafana-build:main
* Use grafana/grafana-build:dev-ae5182f
* Use grafana/grafana-build:dev-ec3ec36
* Use grafana/grafana-build:dev-5e160d8
* Use grafana/grafana-build:dev-142d2dc
* Use grafana/grafana-build:dev-db6bff1
* Use grafana/grafana-build:main
* Change nightly trigger to cron
This is necessary to allow version inference in CI builds.
Shortcodes like `docs/reference` and `docs/shared` use version inference to avoid the writer having to hardcode specific versions or use relative paths within the documentation set.
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
* Add initial e2e tests for sandboxing
* Add tests for sandbox on
* Add additional sandbox tests
* Move sandbox into various suite
* Test drone setup
* Move variable
* Update drone
* Update plugins path for e2e
* Revert drone changes
* use drone from main
* Use lib.star from main
* Move sandbox test to its own suite
* Expand methods to inject iframes
* Restore e2e script
* Add back change to script
* Update tests for trusted types
* Integrate custom plugins into grafana-server
* Echo for deubging
* add debugging message
* Expand message
* Add extra for ci
* fix path
* Improve start-server logic
* Remove duplicated logic
* Restore file deleted by mistake
* Restore file to main
p
* restore file
* Restore start script
* Update e2e/panels-suite/frontend-sandbox-panel.spec.ts
Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
---------
Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>