From c60e256bf3dc0878fd161cfa3feb3cfcb0e64eed Mon Sep 17 00:00:00 2001
From: Pascal Zarrad
Date: Mon, 5 Jul 2021 20:43:02 +0200
Subject: [PATCH 1/7] Add Grafana readme
---
software/grafana/README.md | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
create mode 100644 software/grafana/README.md
diff --git a/software/grafana/README.md b/software/grafana/README.md
new file mode 100644
index 00000000..57346598
--- /dev/null
+++ b/software/grafana/README.md
@@ -0,0 +1,25 @@
+# Grafama
+
+### From the [Grafana](https://github.com/grafana/grafana) GitHub
+The open and composable observability and data visualization platform.
+Visualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more.
+
+### Configuration recommendation
+If you do not manually setup SSL, restrict access to the exposed unencrypted webserver using a firewall.
+Use a reverse proxy (with SSL termination) to make Grafana accessible through ports 80 or 443 alongside
+other services on your local webserver.
+
+# Update support
+The egg _should_ keep the data and conf folder when reinstalling. Therefore a reinstallation with "latest" as the selected version
+can be used to update Grafana. During a reinstallation all plugins will be updated too. Newly added plugins will be installed during
+a reinstallation.
+
+If you want to reset the server completly, remove the `conf` and `data` directories manually before reinstalling.
+
+### Server Ports
+
+Ports required to run the server in a table format.
+
+| Port | default |
+| ------------ | ------- |
+| Webinterface | 3000 |
From 913ee571c2b809ed51ab27083ce25af9c3916162 Mon Sep 17 00:00:00 2001
From: Pascal Zarrad
Date: Tue, 6 Jul 2021 00:27:59 +0200
Subject: [PATCH 2/7] Add Grafana egg
---
software/grafana/egg-grafana.json | 50 +++++++++++++++++++++++++++++++
1 file changed, 50 insertions(+)
create mode 100644 software/grafana/egg-grafana.json
diff --git a/software/grafana/egg-grafana.json b/software/grafana/egg-grafana.json
new file mode 100644
index 00000000..7538141f
--- /dev/null
+++ b/software/grafana/egg-grafana.json
@@ -0,0 +1,50 @@
+{
+ "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
+ "meta": {
+ "version": "PTDL_v1",
+ "update_url": null
+ },
+ "exported_at": "2021-07-06T11:05:00+02:00",
+ "name": "Grafana",
+ "author": "p.zarrad@outlook.de",
+ "description": "The open and composable observability and data visualization platform.\r\nVisualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more.",
+ "features": null,
+ "images": [
+ "quay.io\/parkervcp\/pterodactyl-images:base_debian"
+ ],
+ "file_denylist": [],
+ "startup": ".\/bin\/grafana-server web",
+ "config": {
+ "files": "{\r\n \"conf\/defaults.ini\": {\r\n \"parser\": \"ini\",\r\n \"find\": {\r\n \"server.http_port\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}",
+ "startup": "{\r\n \"done\": \"HTTP Server Listen\"\r\n}",
+ "logs": "{}",
+ "stop": "^C"
+ },
+ "scripts": {
+ "installation": {
+ "script": "#!\/bin\/sh\r\nshopt -s extglob\r\n# Switch to mounted directory\r\ncd \/mnt\/server\r\n# Update installation system and install curl\r\napt-get update && apt-get upgrade -y\r\napt-get install -y curl\r\n# Cleanup previous install if available\r\nrm -rfv !(conf|data)\r\n# Download and extract Grafana\r\nversion=${GRAFANA_VERSION}\r\nif [ \"$version\" = \"latest\" ]; then version=$(curl --silent \"https:\/\/api.github.com\/repos\/grafana\/grafana\/releases\/latest\" | grep '\"tag_name\":' | sed -E 's\/.*\"([^\"]+)\".*\/\\1\/' | cut -c2-); fi\r\ncurl https:\/\/dl.grafana.com\/oss\/release\/grafana-${version}.linux-amd64.tar.gz --output grafana.tar.gz\r\ntar -zxvf grafana.tar.gz\r\nmv -n grafana-*\/* .\/\r\nrm -rf grafana.tar.gz grafana-*\/\r\n# Update existing plugins and install Grafana plugins\r\nif [ \"${GRAFANA_PLUGINS}\" != \"none\" ]; then\r\nfor v in $(tr ',' '\\n' <<< \"${GRAFANA_PLUGINS}\") ; do .\/bin\/grafana-cli --pluginsDir=\"\/mnt\/server\/data\/plugins\" plugins install \"$v\" ; done\r\nfi",
+ "container": "debian:buster-slim",
+ "entrypoint": "bash"
+ }
+ },
+ "variables": [
+ {
+ "name": "Grafana Version",
+ "description": "The version of Grafana to install. By default the latest version is being installed.",
+ "env_variable": "GRAFANA_VERSION",
+ "default_value": "latest",
+ "user_viewable": true,
+ "user_editable": true,
+ "rules": "required|string|max:20"
+ },
+ {
+ "name": "Grafana Plugins",
+ "description": "A list of Grafana plugins that should be installed. Enter the plugins comma separated (e. g. a,b,c).\r\nYou can enter none if you don't want to install any plugins.",
+ "env_variable": "grafana_plugins",
+ "default_value": "none",
+ "user_viewable": true,
+ "user_editable": true,
+ "rules": "required|string"
+ }
+ ]
+}
From df13c87964f7e52375c258a58e2e18a25c7f0022 Mon Sep 17 00:00:00 2001
From: Pascal Zarrad
Date: Tue, 6 Jul 2021 11:08:43 +0200
Subject: [PATCH 3/7] Update Grafana readme
---
software/grafana/README.md | 8 +-------
1 file changed, 1 insertion(+), 7 deletions(-)
diff --git a/software/grafana/README.md b/software/grafana/README.md
index 57346598..106a7ee9 100644
--- a/software/grafana/README.md
+++ b/software/grafana/README.md
@@ -4,15 +4,9 @@
The open and composable observability and data visualization platform.
Visualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more.
-### Configuration recommendation
-If you do not manually setup SSL, restrict access to the exposed unencrypted webserver using a firewall.
-Use a reverse proxy (with SSL termination) to make Grafana accessible through ports 80 or 443 alongside
-other services on your local webserver.
-
# Update support
The egg _should_ keep the data and conf folder when reinstalling. Therefore a reinstallation with "latest" as the selected version
-can be used to update Grafana. During a reinstallation all plugins will be updated too. Newly added plugins will be installed during
-a reinstallation.
+can be used to update Grafana.
If you want to reset the server completly, remove the `conf` and `data` directories manually before reinstalling.
From 4e0a87bb5286bfab865a435c8f91a55b3f29ad07 Mon Sep 17 00:00:00 2001
From: Pascal Zarrad
Date: Tue, 6 Jul 2021 11:16:45 +0200
Subject: [PATCH 4/7] Add Grafana
---
README.md | 2 ++
1 file changed, 2 insertions(+)
diff --git a/README.md b/README.md
index c1df35db..4ba4e9b3 100644
--- a/README.md
+++ b/README.md
@@ -238,3 +238,5 @@ If you are reading this it looks like you are looking to add an egg to your serv
* [Code-Server](/software/code-server)
### haste-server
* [haste-server](/software/haste-server)
+### Grafana
+* [Grafana](/software/grafana)
From 2cd23d3a73b20ab086191b101e3ea4e1124efc7e Mon Sep 17 00:00:00 2001
From: Pascal Zarrad
Date: Tue, 6 Jul 2021 11:24:49 +0200
Subject: [PATCH 5/7] Improve Grafana readme and add credentials
---
software/grafana/README.md | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/software/grafana/README.md b/software/grafana/README.md
index 106a7ee9..286de2ce 100644
--- a/software/grafana/README.md
+++ b/software/grafana/README.md
@@ -4,9 +4,13 @@
The open and composable observability and data visualization platform.
Visualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more.
-# Update support
-The egg _should_ keep the data and conf folder when reinstalling. Therefore a reinstallation with "latest" as the selected version
-can be used to update Grafana.
+### Initial credentials
+After the first start of Grafana, you can login using the following credentials:
+ - Username: admin
+ - Password: admin
+
+### Update support
+The egg _should_ keep the data and conf folder when reinstalling. Therefore a reinstallation with "latest" as the selected version can be used to update Grafana.
If you want to reset the server completly, remove the `conf` and `data` directories manually before reinstalling.
From 4c88dcc007811c5ac9baec822dee802e30080ea8 Mon Sep 17 00:00:00 2001
From: Pascal Zarrad
Date: Tue, 6 Jul 2021 20:17:31 +0200
Subject: [PATCH 6/7] Put Grafana at the right position
---
README.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/README.md b/README.md
index 4ba4e9b3..bab4ab94 100644
--- a/README.md
+++ b/README.md
@@ -236,7 +236,7 @@ If you are reading this it looks like you are looking to add an egg to your serv
## [Software](/software/)
### Code Server
* [Code-Server](/software/code-server)
-### haste-server
-* [haste-server](/software/haste-server)
### Grafana
* [Grafana](/software/grafana)
+### haste-server
+* [haste-server](/software/haste-server)
From f1027d6cc0c1f15d16c93b02102ea530cc7705eb Mon Sep 17 00:00:00 2001
From: Pascal Zarrad
Date: Tue, 6 Jul 2021 20:52:06 +0200
Subject: [PATCH 7/7] Improve Grafana installation script
---
software/grafana/egg-grafana.json | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/software/grafana/egg-grafana.json b/software/grafana/egg-grafana.json
index 7538141f..6b2312d4 100644
--- a/software/grafana/egg-grafana.json
+++ b/software/grafana/egg-grafana.json
@@ -4,7 +4,7 @@
"version": "PTDL_v1",
"update_url": null
},
- "exported_at": "2021-07-06T11:05:00+02:00",
+ "exported_at": "2021-07-06T23:52:45+02:00",
"name": "Grafana",
"author": "p.zarrad@outlook.de",
"description": "The open and composable observability and data visualization platform.\r\nVisualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more.",
@@ -22,7 +22,7 @@
},
"scripts": {
"installation": {
- "script": "#!\/bin\/sh\r\nshopt -s extglob\r\n# Switch to mounted directory\r\ncd \/mnt\/server\r\n# Update installation system and install curl\r\napt-get update && apt-get upgrade -y\r\napt-get install -y curl\r\n# Cleanup previous install if available\r\nrm -rfv !(conf|data)\r\n# Download and extract Grafana\r\nversion=${GRAFANA_VERSION}\r\nif [ \"$version\" = \"latest\" ]; then version=$(curl --silent \"https:\/\/api.github.com\/repos\/grafana\/grafana\/releases\/latest\" | grep '\"tag_name\":' | sed -E 's\/.*\"([^\"]+)\".*\/\\1\/' | cut -c2-); fi\r\ncurl https:\/\/dl.grafana.com\/oss\/release\/grafana-${version}.linux-amd64.tar.gz --output grafana.tar.gz\r\ntar -zxvf grafana.tar.gz\r\nmv -n grafana-*\/* .\/\r\nrm -rf grafana.tar.gz grafana-*\/\r\n# Update existing plugins and install Grafana plugins\r\nif [ \"${GRAFANA_PLUGINS}\" != \"none\" ]; then\r\nfor v in $(tr ',' '\\n' <<< \"${GRAFANA_PLUGINS}\") ; do .\/bin\/grafana-cli --pluginsDir=\"\/mnt\/server\/data\/plugins\" plugins install \"$v\" ; done\r\nfi",
+ "script": "#!\/bin\/sh\r\nshopt -s extglob\r\n# Switch to mounted directory\r\ncd \/mnt\/server\r\n# Update installation system and install curl\r\napt-get update\r\napt-get install -y curl\r\n# Cleanup previous install if available\r\nif [ -d \"conf\" ]; then mv conf conf.bak; fi\r\nrm -rfv !(conf.bak|data)\r\n# Download and extract Grafana\r\nversion=${GRAFANA_VERSION}\r\nif [ \"$version\" = \"latest\" ]; then version=$(curl --silent \"https:\/\/api.github.com\/repos\/grafana\/grafana\/releases\/latest\" | grep '\"tag_name\":' | sed -E 's\/.*\"([^\"]+)\".*\/\\1\/' | cut -c2-); fi\r\ncurl https:\/\/dl.grafana.com\/oss\/release\/grafana-${version}.linux-amd64.tar.gz --output grafana.tar.gz\r\ntar -zxvf grafana.tar.gz\r\nmv -n grafana-*\/* .\/\r\nrm -rf grafana.tar.gz grafana-*\/\r\n# Restore configuration if necessary\r\nif [ -d \"conf.bak\" ]; then rm -rf conf && mv conf.bak conf && rm -rf conf.bak; fi\r\n# Update existing plugins and install Grafana plugins\r\nif [ ! -z \"${GRAFANA_PLUGINS}\" ]; then\r\nfor v in $(tr ',' '\\n' <<< \"${GRAFANA_PLUGINS}\") ; do .\/bin\/grafana-cli --pluginsDir=\"\/mnt\/server\/data\/plugins\" plugins install \"$v\" ; done\r\nfi",
"container": "debian:buster-slim",
"entrypoint": "bash"
}
@@ -39,12 +39,12 @@
},
{
"name": "Grafana Plugins",
- "description": "A list of Grafana plugins that should be installed. Enter the plugins comma separated (e. g. a,b,c).\r\nYou can enter none if you don't want to install any plugins.",
+ "description": "A list of Grafana plugins that should be installed. Enter the plugins comma separated (e. g. a,b,c).",
"env_variable": "grafana_plugins",
- "default_value": "none",
+ "default_value": "",
"user_viewable": true,
"user_editable": true,
- "rules": "required|string"
+ "rules": "nullable|string"
}
]
}