Browse Source

upd docs

pull/17/head
rozetko 1 year ago
parent
commit
5952d799df
  1. 117
      README.md
  2. 2
      package.json
  3. 2
      src/plugin.json

117
README.md

@ -1,79 +1,82 @@
# Grafana app plugin template # Grafana Data Exporter App
This template is a starting point for building an app plugin for Grafana. Grafana plugin for exporting data from Grafana panels as CSV.
## What are Grafana app plugins? Supported datasources:
- MySQL
- PostgreSQL
App plugins can let you create a custom out-of-the-box monitoring experience by custom pages, nested datasources and panel plugins. ## Prerequisites
- [Grafana 9.0.0+](https://grafana.com/grafana/download)
- [Grafana Data Exporter](https://code.corpglory.net/corpglory/grafana-data-exporter)
- set Grafana `app_mode` as `development` (it won't be necessary after we sign the plugin):
- find the configuration file: [https://grafana.com/docs/grafana/latest/setup-grafana/configure-grafana/#configuration-file-location](https://grafana.com/docs/grafana/latest/setup-grafana/configure-grafana/#configuration-file-location)
- change `app_mode = production` to `app_mode = development`
## Getting started ## Plugin installation
### Frontend The easiest way to install plugins is by using the `grafana-cli` tool which is bundled with Grafana. See [Using grafana-cli](#using-grafana-cli) paragraph.
1. Install dependencies If there is no `grafana-cli` tool in your system, plugins can be installed [manually](#manual-installation).
```bash ### Table of contents
yarn install - [Using grafana-cli](#using-grafana-cli)
``` - [Install plugin](#install-update-plugin)
- [Manual installation](#manual-installation)
- [Docker installation](#docker-installation)
2. Build plugin in development mode or run in watch mode ### Using grafana-cli
```bash Grafana docs about plugin installation: [https://grafana.com/docs/plugins/installation/#installing-plugins](https://grafana.com/docs/plugins/installation/#installing-plugins).
yarn dev
# or #### Install / update plugin
```bash
grafana-cli --pluginUrl "https://code.corpglory.net/attachments/89ae5865-2ae7-474c-a6f0-f29d19e6b1dd" plugins install corpglory-dataexporter-app
sudo systemctl restart grafana-server
```
yarn watch ### Manual installation
```
3. Build plugin in production mode - Navigate to Grafana plugins directory:
- For Grafana installed from `.deb`/`.rpm` package:
- `/var/lib/grafana/plugins`
- For Grafana installed using Standalone Linux Binaries or source:
- `<GRAFANA_PATH>/data/plugins`
```bash - Download corpglory-dataexporter-app
yarn build ```bash
``` wget http://code.corpglory.net/attachments/5f1c5e28-544b-416a-a425-7cdf49fa60ac -O corpglory-dataexporter-app.tar.gz
```
4. Run the tests (using Jest) - Unpack downloaded files
```bash
tar -zxvf corpglory-dataexporter-app.tar.gz
```
```bash - Restart Grafana
# Runs the tests and watches for changes - For Grafana installed from `.deb`/`.rpm` package:
yarn test - `systemctl restart grafana-server`
- For Grafana installed using Standalone Linux Binaries or source:
# Exists after running all the tests - Stop any running instances of grafana-server
yarn lint:ci - Start grafana-server: `cd <GRAFANA_PATH> && ./bin/grafana-server`
```
5. Spin up a Grafana instance and run the plugin inside it (using Docker) ### Docker installation
```bash You can install Data Exporter App to Grafana in Docker passing it as the environment variable.
yarn server
```
6. Run the E2E tests (using Cypress) ```bash
docker run \
-p 3000:3000 \
-e "GF_INSTALL_PLUGINS=https://code.corpglory.net/attachments/89ae5865-2ae7-474c-a6f0-f29d19e6b1dd;corpglory-dataexporter-app" \
grafana/grafana
```
```bash #### Useful links
# Spin up a Grafana instance first that we tests against - Grafana docs about Docker installation: [https://docs.grafana.org/installation/docker/#installing-plugins-from-other-sources](https://docs.grafana.org/installation/docker/#installing-plugins-from-other-sources)
yarn server
# Start the tests
yarn e2e
```
7. Run the linter ## Support and Consulting
```bash Commercial support, professional services **or any help** — send us your inquiry at ping@corpglory.com
yarn lint
# or
yarn lint:fix ## About CorpGlory Inc.
``` Grafana Data Exporter is developed by [CorpGlory Inc.](https://corpglory.com/), a company which provides high quality software development, data visualization, Grafana and monitoring consulting.
## Learn more
Below you can find source code for existing app plugins and other related documentation.
- [Basic app plugin example](https://github.com/grafana/grafana-plugin-examples/tree/master/examples/app-basic#readme)
- [Plugin.json documentation](https://grafana.com/docs/grafana/latest/developers/plugins/metadata/)
- [How to sign a plugin?](https://grafana.com/docs/grafana/latest/developers/plugins/sign-a-plugin/)

2
package.json

@ -1,6 +1,6 @@
{ {
"name": "corpglory-dataexporter-app", "name": "corpglory-dataexporter-app",
"version": "1.0.5", "version": "1.0.6",
"description": "", "description": "",
"scripts": { "scripts": {
"lint": "eslint --cache --ext .js,.jsx,.ts,.tsx --max-warnings=0 ./src", "lint": "eslint --cache --ext .js,.jsx,.ts,.tsx --max-warnings=0 ./src",

2
src/plugin.json

@ -31,7 +31,7 @@
} }
], ],
"dependencies": { "dependencies": {
"grafanaDependency": ">=7.0.0", "grafanaDependency": ">=9.0.0",
"plugins": [] "plugins": []
} }
} }

Loading…
Cancel
Save