Commit Graph

813 Commits

Author SHA1 Message Date
Carl Bergquist
c979b5d868
Upgrade the build pipeline to 2.4.5 (#39080)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
2021-09-10 13:21:44 +02:00
Dimitris Sotirakis
5f10843203
Chore: Rename scripts/star dir to scripts/drone (#38910)
* Rename scripts/star dir to scripts/drone

* Update CODEOWNERS after paths change
2021-09-07 12:15:04 +03:00
Dimitris Sotirakis
2316c3942b
Chore: Tidy up starlark files into folders (#38874)
* Tidy up starlark files into folders

* Rename steps

* Make sure lib.star only contain steps - added services.star and utils.star
2021-09-07 10:21:49 +03:00
Ivana Huckova
d5956ce4b7
Loki: Fix error handling, remove legacy condition (#38633)
* Fix error handling, remove legacy condition

* Fix strict errors in Loki and lower error count

* Update
2021-09-06 15:28:54 +02:00
Giordano Ricci
7f1327d1ed
Elasticsearch: Prevent pipeline aggregations to show up in terms order by options (#38448)
* Elasticsearch: Prevent pipeline aggregations to show up in terms order by options

* fix optional props

* Refactor & add tests

* Fix & lower strict ts count

* Update public/app/plugins/datasource/elasticsearch/components/QueryEditor/BucketAggregationsEditor/SettingsEditor/TermsSettingsEditor.test.tsx

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>

* Update public/app/plugins/datasource/elasticsearch/components/QueryEditor/BucketAggregationsEditor/SettingsEditor/TermsSettingsEditor.test.tsx

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>

Co-authored-by: Piotr Jamróz <pm.jamroz@gmail.com>
2021-09-02 16:00:40 +02:00
Zoltán Bedi
7e6cf14c84
Fix: Include Buffer in webpack build (#38819) 2021-09-02 14:18:07 +02:00
malcolmholmes
b22c2543d0
Build: Upgrade grabpl to 2.4.2 (#38820) 2021-09-02 13:03:32 +01:00
Dimitris Sotirakis
a5ce61b539
Chore: Update to alpine:3.14.2 (#38813)
* Update apline to 3.14.2

* Remove libcrypto1.1 libssl1.1 version dependencies

* Update grabpl version
2021-09-02 12:57:11 +03:00
Ole Kristian (Zee)
92934af741
Monaco: Add javascript and typescript support (#38703) 2021-09-01 08:55:01 -07:00
Dimitris Sotirakis
89716f2806
Remove ci-build-windows folder (#38778) 2021-09-01 10:44:08 +02:00
Jack Westbrook
8d3b31ff23
Build: Upgrade Webpack 5 (#36444)
* build(webpack): bump to v5 and successful yarn start compilation

* build(webpack): update postcss dependencies

* build(webpack): silence warnings about hash renamed to fullhash

* build(webpack): enable persistent cache to store generated webpack modules / chunks

* build(webpack): prefer eslintWebpackPlugin over tschecker so eslint doesn't block typechecking

* chore(yarn): run yarn-deduplicate to clean up dependencies

* chore(yarn): refresh lock file after clean install

* build(webpack): prefer output.clean over CleanWebpackPlugin

* build(webpack): prefer esbuild over babel-loader for dev config

* build(babel): turn off cache compression to improve build performance

* build(webpack): get production builds working

* build(webpack): remove phantomJS (removed from grafana in v7) specific loader

* build(webpack): put back babel for dev builds no performance gain in using esbuild in webpack

* build(webpack): prefer terser and optimise css plugins for prod. slower but smaller bundles

* build(webpack): clean up redundant code. inform postcss about node_modules

* build(webpack): remove deprecation warnings flag

* build(webpack): bump packages, dev performance optimisations, attempt to get hot working

* chore(storybook): use webpack 5 for dev and production builds

* build(storybook): speed up dev build

* chore(yarn): refresh lock file

* chore(webpack): bump webpack and related deps to latest

* refactor(webpack): put back inline-source-map, move start scripts out of grafana toolkit

* feat(webpack): prefer react-refresh over react-hot-loader

* build(webpack): update webpack.hot to use react-refresh

* chore: remove react-hot-loader from codebase

* refactor(queryeditorrow): fix circular dependency causing react-fast-refresh errors

* revert(webpack): remove stats.errorDetails from common config

* build(webpack): bump to v5 and successful yarn start compilation

* build(webpack): update postcss dependencies

* build(webpack): silence warnings about hash renamed to fullhash

* build(webpack): enable persistent cache to store generated webpack modules / chunks

* build(webpack): prefer eslintWebpackPlugin over tschecker so eslint doesn't block typechecking

* chore(yarn): run yarn-deduplicate to clean up dependencies

* chore(yarn): refresh lock file after clean install

* build(webpack): prefer output.clean over CleanWebpackPlugin

* build(webpack): prefer esbuild over babel-loader for dev config

* build(babel): turn off cache compression to improve build performance

* build(webpack): get production builds working

* build(webpack): remove phantomJS (removed from grafana in v7) specific loader

* build(webpack): put back babel for dev builds no performance gain in using esbuild in webpack

* build(webpack): prefer terser and optimise css plugins for prod. slower but smaller bundles

* build(webpack): clean up redundant code. inform postcss about node_modules

* build(webpack): remove deprecation warnings flag

* build(webpack): bump packages, dev performance optimisations, attempt to get hot working

* chore(storybook): use webpack 5 for dev and production builds

* build(storybook): speed up dev build

* chore(yarn): refresh lock file

* chore(webpack): bump webpack and related deps to latest

* refactor(webpack): put back inline-source-map, move start scripts out of grafana toolkit

* feat(webpack): prefer react-refresh over react-hot-loader

* build(webpack): update webpack.hot to use react-refresh

* chore: remove react-hot-loader from codebase

* refactor(queryeditorrow): fix circular dependency causing react-fast-refresh errors

* revert(webpack): remove stats.errorDetails from common config

* revert(webpack): remove include from babel-loader so symlinks (enterprise) work as before

* refactor(webpack): fix deprecation warnings in prod builds

* fix(storybook): fix failing builds due to replacing css-optimise webpack plugin

* fix(storybook): use raw-loader for svg icons

* build(webpack): fix dev script colors error

* chore(webpack): bump css-loader and react-refresh-webpack-plugin to latest versions

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2021-08-31 12:55:05 +02:00
Dimitris Sotirakis
3fb5afb9e3
Update Dockerfile (#38744) 2021-08-31 12:53:17 +03:00
Dimitris Sotirakis
8e2ee0a1c8
Chore: Update to Golang 1.17 (#38608)
* Update to golang 1.17

* Further updates

* Run go mod tidy on go 1.17

* Apply suggestions from code review

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Use build-container:1.4.2

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
2021-08-31 09:19:26 +03:00
Dimitris Sotirakis
8a04af412e
Build pipeline: Cleanup build-main pipeline steps (#38484)
* Refactor dependencies

* Regenerate drone.yml

* Reorder steps in starlark files

* Make build depend on test

* Make test steps depend on lint

* Make gen-version step depend on build steps

* Refactor step dependencies

* Move e2e-tests step before upload_cdn

* Sync with main
2021-08-26 10:11:22 +03:00
Arve Knudsen
78596a6756
Migrate to Wire for dependency injection (#32289)
Fixes #30144

Co-authored-by: dsotirakis <sotirakis.dim@gmail.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Ida Furjesova <ida.furjesova@grafana.com>
Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
Co-authored-by: spinillos <selenepinillos@gmail.com>
Co-authored-by: Karl Persson <kalle.persson@grafana.com>
Co-authored-by: Leonard Gram <leo@xlson.com>
2021-08-25 15:11:22 +02:00
sam boyer
e61bc33163
Move dashboard scuemata to grafana-schema (#38470)
* Relocate dashboard scuemata to grafana-schema

* Update assorted tests, vars with dashboard path

* Remove crufty commented var

* Not sure...why that failed

* Remove prefix from base dashboard path var

* Move cue/ui remnants into grafana-schema

* Update import paths in plugin models

* Remove mudball, add package statements

* Remove cuegen.sh

Wooooo we ain't got no codegen

* Revert "Remove mudball, add package statements"

This reverts commit 9bed3098f1.

* Tidy up all the cue files

* Move dashboard scuemata into scuemata/ subdir

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-08-25 06:55:04 -04:00
Dimitris Sotirakis
29d0a1536c
Chore: Update grabpl version to 2.3.3 (#38516)
* Update grabpl version to 2.3.1

* Update grabpl version to 2.3.2

* Update grabpl version
2021-08-25 08:50:41 +03:00
Dimitris Sotirakis
e8faa2c900
Build pipeline: Cleanup PR pipeline steps (#38447)
* Refactor dependencies

* Regenerate drone.yml

* Reorder steps in starlark files

* Make build depend on test

* Make test steps depend on lint

* Make gen-version step depend on build steps
2021-08-24 17:07:06 +02:00
Maria Alexandra
856cb1d80f
Pipeline: Fix pa11y ci when server is not available and fix publish frontend metrics step (#38485) 2021-08-24 13:44:52 +02:00
Maria Alexandra
ef8e95ac7f
Pipeline: Revert a11y changes to fix publish frontend metrics step (#38452) 2021-08-23 16:45:59 +02:00
Maria Alexandra
6396f05320
Pa11y: add logs to a11y step in terminal to provide more info of status (#38445) 2021-08-23 14:54:33 +02:00
Dimitris Sotirakis
64cb000d37
Chore: Add e2e-tests-server as dependencies on steps that publish packages (#38059)
* Add e2e-tests-server as dependencies on steps that publish packages

* Sign drone yaml
2021-08-23 13:39:16 +03:00
Uchechukwu Obasi
ab74bb78b2
A11y metrics: fixes frontend script that pushes to CI Stat dashboard (#38435) 2021-08-23 11:36:39 +02:00
Maria Alexandra
b579a707e3
A11y - Add Pa11y CI in main pipeline to collect a11y issues (#37741)
Co-authored-by: 
Hugo Häggmark <hugo.haggmark@gmail.com>
thisisobate <obasiuche62@gmail.com>
2021-08-23 10:08:01 +02:00
Kevin Minehart
b3c4b20953
Docker: Update base alpine version (fix CVE-2021-36159) (#38088)
* update base alpine version and update apk packages in Dockerfile

* update base alpine version

* don't need to apk update

* remove space

* Update to alpine 3.14.1

Co-authored-by: Malcolm Holmes <mdh@odoko.co.uk>
2021-08-20 12:54:03 +01:00
Dimitris Sotirakis
16c518582f
Chore: Prevent branches beginning with "v*" from being considered as versioned branches (#38016)
* Add v8* and v9* "regex" to only build versioned branches

* Add glob pattern matching

* Sign drone yaml
2021-08-20 09:22:53 +03:00
Hugo Häggmark
dba15190af
Chore: Upgrades rxjs to 7.3.0 (#37913)
* Chore: upgrades rxjs to 7.3.0

* Chore: replaces toPromise with lastValueFrom

* Chore: removes unused mock that caused test error

* Chore: fixes build error in PieChartPanel

* Chore: fixed build error in requestAllIndices

* Chore: fixes comment

* Chore: trying to reduce docs errors

* Chore: searches for explicit api extractor warnings

* Chore: updates rxjs-spy to 8.0.0

* Chore: reverts to main

* Chore: upgrade rxjs and rxjs-spy
2021-08-19 06:38:31 +02:00
sam boyer
6aba592741
Schema: get all devenv dashboards passing validation (#37857)
* Strip nulls (again)

* Add stripnulls script

* Add transformations field

* Close FieldConfig struct; proper plugin validating

* s/graph/viz/ field in histogram dashboard

* Use ui.GraphFieldConfig in histogram model

* Add models for stat, gauge, barguage panel plugins

Also toss necessary shared types into cue/ui/gen.cue, with TODOs to move
them appropriately later.

* Add required license headers

* Heap of updates to cue UI components

* Fix barchart types and one old devenv input

* Use the GraphFieldConfig directly for timeseries

* Add models.cue for a few panel plugins

Barchart, state-timeline, and status-history

* Enable the test validating all devenv dashboards!!

* Fix effects of not checking after making comments

* Update packages/grafana-ui/src/options/models.gen.ts

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>

* Realign and unalign cue with ts types

* Update devenv test to sniff for null errors

Best option we have right now for helping people to know they need to
strip nulls from devenv dashboards.

* Add speculative default for barchart stacking

* Fixup some dated devenv dashboards

timeline-modes needed to be regenerated with the appropriate tooltip
values included, per typing requirements, and timeline-demo needed to
have the `mode` field removed, as it is not intended to be persisted.

* Add necessary missing options for various panels

* Regenerate devenv dashboards

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-08-17 07:11:57 -04:00
Dimitris Sotirakis
37b0c20984
Chore: Update channel to where failed Docker nightly builds are posted (#37927)
* Update channel

* Sign drone.yml
2021-08-16 14:54:52 +02:00
Ashley Harrison
181d6a78ed
Chore: Fix some more typescript strict errors (#37750) 2021-08-11 09:10:41 +01:00
Julien Duchesne
7e63118ea9
Run builds on single-build agents (#37702)
This is an effort to reduce cache errors when multiple agents try to build the yarn cache at the same time
https://github.com/grafana/deployment_tools/issues/13329
2021-08-10 09:16:09 +03:00
Giordano Ricci
2f21bf5cfd
Chore: Reduce Elasticsearch data source plugin strict errors (#37399) 2021-08-05 16:03:38 +01:00
Ashley Harrison
e7d4b175b7
Update ci-check-strict.sh (#37449) 2021-08-02 13:38:36 +02:00
Dimitris Sotirakis
c189851339
Chore: Update grabpl version (#37253)
* Update grabpl version to 2.3.1

* Update grabpl version to 2.3.2
2021-07-27 13:18:06 +02:00
Dimitris Sotirakis
0c804df763
Update grabpl version to 2.3.1 (#37208) 2021-07-27 12:52:01 +03:00
Connor Lindsey
b644ea9e6e
Loki: Add fuzzy search to label browser (#36864) 2021-07-26 08:04:03 -06:00
Ashley Harrison
26abec2287
Chore: Update slate types to fix more strict TypeScript errors (#37159) 2021-07-23 15:33:53 +01:00
Ashley Harrison
75ff031789
Chore: Fix TypeScript strict errors with components using connect (#37109)
* Chore: Fix TypeScript strict errors with components using connect

* Chore: More TypeScript fixes

* Chore: Update strict check values

* Still need to export these types...

* Declare connector at the top of the file

* Careful with find and replace...
2021-07-23 11:33:26 +02:00
Ashley Harrison
3004a650b5
Chore: Fix more TypeScript strict errors (#37066)
* Chore: Fix more TypeScript strict errors

* whoops
2021-07-22 08:09:55 +01:00
Ashley Harrison
e22ff342e0
Update ci-check-strict.sh (#36943) 2021-07-20 12:21:20 +02:00
Ashley Harrison
220b964de5
Chore: Fix more TypeScript errors (#36918)
* TypeScript: Fix some strict typescript errors

* Fix more strict typescript errors

* Few more fixes

* Better string conversion

* update check script to 195
2021-07-20 09:57:03 +01:00
sam boyer
cae47b3c1c
Make validate-schema CLI command work vs. disk (#36863)
* Make validate-schema CLI command work vs. disk

Previously, `grafana-cli cue validate-schema` would only validate the
CUE files that had been included at compile time. Now, the command
requires passing a grafana checkout root path, and will actually check
against live files on disk.

* Exempt validateScuemata from sec linter

* Nit: validateScuemata is a simpler, better name

* Try to fix validate-scuemata build step
2021-07-16 19:53:19 -04:00
Dimitris Sotirakis
2e0dc835cf
Scuemata: Add test to validate devenv resources (#35810)
* Add test for devenv resources

* Refactor validation tests for grokkability

* Devenv dashboards error-tracking script

* Refactor to use cueerrors.Details()

* Further test refinement

* Close major elements of dashboard schema

* Centralize dashboard validation tests

General dashboard validation testing belongs in the load package.

* Better names for error context on glue CUE code

* Fixup validate-resource

Do only one of base or dist, and fix copied docs.

* Skip the devenv test

* Remove test for validateResources

* Fix shellcheck

* Backend linter

Co-authored-by: sam boyer <sdboyer@grafana.com>
2021-07-15 20:08:03 -04:00
Julien Duchesne
96ff257e96
Remove verify-drone for Windows (#36759)
This step checks that there's no drift between star files and yml
It's currently broken for windows: https://raintank-corp.slack.com/archives/C010WU9Q5TJ/p1626270627462700
But it's only needed for PRs really
2021-07-14 17:03:21 +02:00
Julien Duchesne
f41f00dec4
Sign Drone's configuration YAML file (#36528)
* Sign Drone's configuration YAML file
This is needed to protect the repository

* Update grabpl to 2.2.8

* Add comment about generating the drone.yml file
2021-07-14 14:40:28 +02:00
Jack Westbrook
d1da97b176
Bump babel to 7.14.x for typescript 4.3 support (#36465)
* chore(babel): bump packages to 7.14.x

* chore(babel): remove plugin-proposal-class-properties and plugin-proposal-private-methods

these plugins are now enabled by default in preset-env
2021-07-07 10:43:17 +02:00
Jack Westbrook
90894a3474
CI: Depend on frontend build before triggering frontend metrics (#36253)
* ci(frontend-metrics): depend on build-frontend step to pass before publishing metrics

* ci(frontend-metrics): move frontend-metrics step so build-frontend occurs first
2021-06-29 10:29:34 +02:00
Jack Westbrook
24aaeb58dc
CI: Add dependency metrics (#35722)
* ci(frontend-metrics): introduce outdated and vulnerable dependency commands

* ci(frontend-metrics): get total built bundle size in kb

* ci(frontend-metrics): print total bundle folder size

* chore: fix spelling

* ci(frontend-metrics): easily count the total for vulnerabilities

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>

* chore(frontend-metrics): fix for shellcheck to pass

* fix(frontend-metrics): capture each line of vulnerability audit output

* ci(frontend-metrics): fix commas in metrics output

* ci(frontend-metrics): call node modules directly as yarn returns exit code 2 in linux

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
2021-06-29 09:29:26 +02:00
Josh Hunt
fcb4e5a211
Grafana-UI: Remove references to old monaco libraries (#35557) 2021-06-22 11:52:08 +01:00
Hugo Häggmark
45a5510978
Chore: Update strict error threshold (#35979) 2021-06-21 09:35:04 +02:00