| 
				
	
				Actionlint / Lint GitHub Actions files (push) Waiting to run
				
					Details
				
			 
				
	
				Backend Code Checks / Detect whether code changed (push) Waiting to run
				
					Details
				
			 
				
	
				Backend Code Checks / Validate Backend Configs (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Backend Unit Tests / Detect whether code changed (push) Waiting to run
				
					Details
				
			 
				
	
				Backend Unit Tests / Grafana (${{ matrix.shard }}) (1/8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Backend Unit Tests / Grafana (${{ matrix.shard }}) (2/8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Backend Unit Tests / Grafana (${{ matrix.shard }}) (3/8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Backend Unit Tests / Grafana (${{ matrix.shard }}) (4/8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Backend Unit Tests / Grafana (${{ matrix.shard }}) (5/8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Backend Unit Tests / Grafana (${{ matrix.shard }}) (6/8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Backend Unit Tests / Grafana (${{ matrix.shard }}) (7/8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Backend Unit Tests / Grafana (${{ matrix.shard }}) (8/8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Backend Unit Tests / Grafana Enterprise (${{ matrix.shard }}) (1/8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Backend Unit Tests / Grafana Enterprise (${{ matrix.shard }}) (2/8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Backend Unit Tests / Grafana Enterprise (${{ matrix.shard }}) (3/8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Backend Unit Tests / Grafana Enterprise (${{ matrix.shard }}) (4/8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Backend Unit Tests / Grafana Enterprise (${{ matrix.shard }}) (5/8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Backend Unit Tests / Grafana Enterprise (${{ matrix.shard }}) (6/8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Backend Unit Tests / Grafana Enterprise (${{ matrix.shard }}) (7/8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Backend Unit Tests / Grafana Enterprise (${{ matrix.shard }}) (8/8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Backend Unit Tests / All backend unit tests complete (push) Blocked by required conditions
				
					Details
				
			 
				
	
				CodeQL checks / Detect whether code changed (push) Waiting to run
				
					Details
				
			 
				
	
				CodeQL checks / Analyze (actions) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				CodeQL checks / Analyze (go) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				CodeQL checks / Analyze (javascript) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Lint Frontend / Detect whether code changed (push) Waiting to run
				
					Details
				
			 
				
	
				Lint Frontend / Lint (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Lint Frontend / Typecheck (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Lint Frontend / Verify API clients (push) Waiting to run
				
					Details
				
			 
				
	
				Lint Frontend / Verify API clients (enterprise) (push) Waiting to run
				
					Details
				
			 
				
	
				golangci-lint / Detect whether code changed (push) Waiting to run
				
					Details
				
			 
				
	
				golangci-lint / go-fmt (push) Blocked by required conditions
				
					Details
				
			 
				
	
				golangci-lint / lint-go (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Verify i18n / verify-i18n (push) Waiting to run
				
					Details
				
			 
				
	
				End-to-end tests / Detect whether code changed (push) Waiting to run
				
					Details
				
			 
				
	
				End-to-end tests / Build & Package Grafana (push) Blocked by required conditions
				
					Details
				
			 
				
	
				End-to-end tests / Build E2E test runner (push) Blocked by required conditions
				
					Details
				
			 
				
	
				End-to-end tests / push-docker-image (push) Blocked by required conditions
				
					Details
				
			 
				
	
				End-to-end tests / ${{ matrix.suite }} (--flags="--env dashboardScene=false", e2e/old-arch/dashboards-suite, dashboards-suite (old arch)) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				End-to-end tests / ${{ matrix.suite }} (--flags="--env dashboardScene=false", e2e/old-arch/panels-suite, panels-suite (old arch)) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				End-to-end tests / ${{ matrix.suite }} (--flags="--env dashboardScene=false", e2e/old-arch/smoke-tests-suite, smoke-tests-suite (old arch)) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				End-to-end tests / ${{ matrix.suite }} (--flags="--env dashboardScene=false", e2e/old-arch/various-suite, various-suite (old arch)) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				End-to-end tests / Verify Storybook (Playwright) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				End-to-end tests / Playwright E2E tests (${{ matrix.shard }}/${{ matrix.shardTotal }}) (1, 8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				End-to-end tests / Playwright E2E tests (${{ matrix.shard }}/${{ matrix.shardTotal }}) (2, 8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				End-to-end tests / Playwright E2E tests (${{ matrix.shard }}/${{ matrix.shardTotal }}) (3, 8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				End-to-end tests / Playwright E2E tests (${{ matrix.shard }}/${{ matrix.shardTotal }}) (4, 8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				End-to-end tests / Playwright E2E tests (${{ matrix.shard }}/${{ matrix.shardTotal }}) (5, 8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				End-to-end tests / Playwright E2E tests (${{ matrix.shard }}/${{ matrix.shardTotal }}) (6, 8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				End-to-end tests / Playwright E2E tests (${{ matrix.shard }}/${{ matrix.shardTotal }}) (7, 8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				End-to-end tests / Playwright E2E tests (${{ matrix.shard }}/${{ matrix.shardTotal }}) (8, 8) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				End-to-end tests / run-azure-monitor-e2e (push) Blocked by required conditions
				
					Details
				
			 
				
	
				End-to-end tests / All Playwright tests complete (push) Blocked by required conditions
				
					Details
				
			 
				
	
				End-to-end tests / A11y test (push) Blocked by required conditions
				
					Details
				
			 
				
	
				End-to-end tests / Publish metrics (push) Blocked by required conditions
				
					Details
				
			 
				
	
				End-to-end tests / All E2E tests complete (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Frontend tests / Detect whether code changed (push) Waiting to run
				
					Details
				
			 
				
	
				Frontend tests / Unit tests (${{ matrix.shard }} / ${{ matrix.total }}) (1, 16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Frontend tests / Unit tests (${{ matrix.shard }} / ${{ matrix.total }}) (10, 16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Frontend tests / Unit tests (${{ matrix.shard }} / ${{ matrix.total }}) (11, 16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Frontend tests / Unit tests (${{ matrix.shard }} / ${{ matrix.total }}) (12, 16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Frontend tests / Unit tests (${{ matrix.shard }} / ${{ matrix.total }}) (13, 16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Frontend tests / Unit tests (${{ matrix.shard }} / ${{ matrix.total }}) (14, 16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Frontend tests / Unit tests (${{ matrix.shard }} / ${{ matrix.total }}) (15, 16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Frontend tests / Unit tests (${{ matrix.shard }} / ${{ matrix.total }}) (16, 16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Frontend tests / Unit tests (${{ matrix.shard }} / ${{ matrix.total }}) (2, 16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Frontend tests / Unit tests (${{ matrix.shard }} / ${{ matrix.total }}) (3, 16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Frontend tests / Unit tests (${{ matrix.shard }} / ${{ matrix.total }}) (4, 16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Frontend tests / Unit tests (${{ matrix.shard }} / ${{ matrix.total }}) (5, 16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Frontend tests / Unit tests (${{ matrix.shard }} / ${{ matrix.total }}) (6, 16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Frontend tests / Unit tests (${{ matrix.shard }} / ${{ matrix.total }}) (7, 16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Frontend tests / Unit tests (${{ matrix.shard }} / ${{ matrix.total }}) (8, 16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Frontend tests / Unit tests (${{ matrix.shard }} / ${{ matrix.total }}) (9, 16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Frontend tests / Decoupled plugin tests (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Frontend tests / Packages unit tests (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Frontend tests / All frontend unit tests complete (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Detect whether code changed (push) Waiting to run
				
					Details
				
			 
				
	
				Integration Tests / Sqlite (${{ matrix.shard }}) (1/4) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Sqlite (${{ matrix.shard }}) (2/4) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Sqlite (${{ matrix.shard }}) (3/4) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Sqlite (${{ matrix.shard }}) (4/4) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Sqlite Without CGo (${{ matrix.shard }}) (1/4) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Sqlite Without CGo (${{ matrix.shard }}) (2/4) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Sqlite Without CGo (${{ matrix.shard }}) (3/4) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Sqlite Without CGo (${{ matrix.shard }}) (4/4) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / MySQL (${{ matrix.shard }}) (1/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / MySQL (${{ matrix.shard }}) (10/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / MySQL (${{ matrix.shard }}) (11/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / MySQL (${{ matrix.shard }}) (12/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / MySQL (${{ matrix.shard }}) (13/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / MySQL (${{ matrix.shard }}) (14/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / MySQL (${{ matrix.shard }}) (15/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / MySQL (${{ matrix.shard }}) (16/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / MySQL (${{ matrix.shard }}) (2/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / MySQL (${{ matrix.shard }}) (3/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / MySQL (${{ matrix.shard }}) (4/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / MySQL (${{ matrix.shard }}) (5/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / MySQL (${{ matrix.shard }}) (6/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / MySQL (${{ matrix.shard }}) (7/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / MySQL (${{ matrix.shard }}) (8/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / MySQL (${{ matrix.shard }}) (9/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Postgres (${{ matrix.shard }}) (1/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Postgres (${{ matrix.shard }}) (10/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Postgres (${{ matrix.shard }}) (11/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Postgres (${{ matrix.shard }}) (12/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Postgres (${{ matrix.shard }}) (13/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Postgres (${{ matrix.shard }}) (14/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Postgres (${{ matrix.shard }}) (15/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Postgres (${{ matrix.shard }}) (16/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Postgres (${{ matrix.shard }}) (2/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Postgres (${{ matrix.shard }}) (3/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Postgres (${{ matrix.shard }}) (4/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Postgres (${{ matrix.shard }}) (5/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Postgres (${{ matrix.shard }}) (6/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Postgres (${{ matrix.shard }}) (7/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Postgres (${{ matrix.shard }}) (8/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / Postgres (${{ matrix.shard }}) (9/16) (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Integration Tests / All backend integration tests complete (push) Blocked by required conditions
				
					Details
				
			 
				
	
				publish-kinds-next / main (push) Waiting to run
				
					Details
				
			 
				
	
				Reject GitHub secrets / reject-gh-secrets (push) Waiting to run
				
					Details
				
			 
				
	
				Run dashboard schema v2 e2e / dashboard-schema-v2-e2e (push) Waiting to run
				
					Details
				
			 
				
	
				Shellcheck / Shellcheck scripts (push) Waiting to run
				
					Details
				
			 
				
	
				Run Storybook a11y tests / Detect whether code changed (push) Waiting to run
				
					Details
				
			 
				
	
				Run Storybook a11y tests / Run Storybook a11y tests (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Swagger generated code / Detect whether code changed (push) Waiting to run
				
					Details
				
			 
				
	
				Swagger generated code / Verify committed API specs match (push) Blocked by required conditions
				
					Details
				
			 
				
	
				Dispatch sync to mirror / dispatch-job (push) Waiting to run
				
					Details
				
			 
				
	
				trigger-dashboard-search-e2e / trigger-search-e2e (push) Waiting to run
				
					Details
				
			 
				
	
				Trivy Scan / trivy-scan (push) Waiting to run
				
					Details
				
			 
				
	
				Crowdin Upload Action / upload-sources-to-crowdin (push) Has been cancelled
				
					Details
				
			 
				
	
				Documentation / Build & Verify Docs (push) Has been cancelled
				
					Details
				
			 
				
	
				publish-technical-documentation-next / sync (push) Has been cancelled
				
					Details
				
			 * alerting docs: new AI tools docs for alert history and template ai tools * Update docs/sources/alerting/alerting-rules/templates/_index.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * edit word * Update view-alert-state-history.md * Update docs/sources/alerting/alerting-rules/templates/_index.md Co-authored-by: Sonia Aguilar <33540275+soniaAguilarPeiron@users.noreply.github.com> * prettier --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Sonia Aguilar <33540275+soniaAguilarPeiron@users.noreply.github.com> | ||
|---|---|---|
| .. | ||
| sources | ||
| .gitignore | ||
| Makefile | ||
| README.md | ||
| docs.mk | ||
| logo-horizontal-dark.png | ||
| logo-horizontal.png | ||
| make-docs | ||
| variables.mk | ||
		
			
				
				README.md
			
		
		
			
			
		
	
	Building the docs locally
When you contribute to documentation, it's a good practice to build the docs on your local machine to make sure your changes appear as you expect. This README explains the process for doing that.
To build a local version, you need to run a process in a Docker container.
Grafana periodically updates the Docker image, docs-base, to update the styling of the Docs.
Requirements
- Docker >= 2.1.0.3
- Yarn >= 1.22.4
Build the doc site
First, make sure the Docker daemon is running on your machine. Then, follow these steps:
- On the command line, first change to the docs folder: cd docs.
- Run make docs. This launches a preview of the website with the current grafana docs athttp://localhost:3002/docs/grafana/latest/which will refresh automatically when changes are made to content in thesourcesdirectory.
If you have the grafana/website repo checked out in the same directory as the grafana repo, then you can run make docs-local-static to use local assets (such as images).
Deploy preview
When you open a PR that changes files in the docs/sources/ directory, CI builds a deploy preview.
After the deploy preview has been built, the Deploy pr preview workflow comments a link to the preview URL and adds a commit status check .
Content guidelines
Generally, one can edit content in the sources directory.
The following paths are built instead from a typescript file and are auto-generated. Please do not edit these files directly. Instead, navigate to the appropriate typescript source file and edit the content there, then follow the build instructions to generate the markdown files.
Transformations
Auto-generated markdown location:
- docs/sources/panels-visualizations/query-transform-data/transform-data/index.md
Typescript location for editing and instructions:
- scripts/docs/generate-transformations.ts - Includes all content not specific to a transformation.
- public/app/features/transformers/docs/content.ts - Transformation-specific content.
Only use reference style links in the content.ts file or else link text will be visible in the UI.
Contributing
Managing redirects
When moving content around or removing pages it's important that users following old links are properly redirected to the new location. We do this using the aliases feature in Hugo.
If you are moving a page, add an aliases entry in the front matter referencing the old location of the page which will redirect the old url to the new location.
If you are removing a page, add an aliases entry in the front matter of the most-applicable page referencing the location of the page being removed.
If you are copying an existing page as the basis for a new one, be sure to remove any aliases entries in the front matter in your copy to avoid conflicting redirects.
Edit the side menu
The side menu is automatically build from the file structure. Use the weight front matter parameter to order pages.
To specify different menu text from the page title, use the front matter parameter menuTitle.
Add images
Please see our help documentation on Image, diagram, and screenshot guidelines for comprehensive information.
Deploy changes to grafana.com
When a PR is merged with changes in the docs/sources directory, those changes are automatically synced by a GitHub action (.github/workflows/publish.yml) to the grafana/website repo.
- A PR that targets the mainbranch syncs to thecontent/docs/grafana/nextdirectory in thewebsiterepository, and publishes tohttps://grafana.com/docs/grafana/next/.
- A PR targeting the latest/currentrelease branch syncs to thecontent/docs/grafana/latestdirectory in thewebsiterepository, and publishes tohttps://grafana.com/docs/grafana/latest/.
Once the sync is complete, the website will automatically publish to production - no further action is needed.