From 1411892ddc196673761d97ddad01e85b621d8fe5 Mon Sep 17 00:00:00 2001 From: Adam Gardner <26523841+agardnerIT@users.noreply.github.com> Date: Sat, 14 Sep 2024 17:43:13 +1000 Subject: [PATCH 1/7] update Signed-off-by: Adam Gardner <26523841+agardnerIT@users.noreply.github.com> --- css/style.css | 3 ++ docs/index.md | 43 +++++++++++++++++++ mkdocs.yml | 106 +++++++++++++++++++++++++++++++++++++++++++++++ requirements.txt | 3 ++ 4 files changed, 155 insertions(+) create mode 100644 css/style.css create mode 100644 docs/index.md create mode 100644 mkdocs.yml create mode 100644 requirements.txt diff --git a/css/style.css b/css/style.css new file mode 100644 index 0000000..b0c664c --- /dev/null +++ b/css/style.css @@ -0,0 +1,3 @@ +h1, h2, h3 { + color: #ffffff !important; +} \ No newline at end of file diff --git a/docs/index.md b/docs/index.md new file mode 100644 index 0000000..1f1bd48 --- /dev/null +++ b/docs/index.md @@ -0,0 +1,43 @@ +--- +hide: + - navigation + - toc + - search + - path +--- + +
+![perses logo](https://perses.dev/images/perses_logo_cropped.png) + +# Open-source Apache-2.0 Licensed + +## An open specification for dashboards. The open dashboard tool for Prometheus and other data sources. +
+ +
+ +- ## GitOps Native + + --- + + Facilitates a seamless "dashboards as code" workflow by introducing an innovative and precisely defined dashboard definition model. + + [:octicons-arrow-right-24: Link here](#) + +- ## Extensible + + --- + + Perses, with its plugin-based architecture, offers effortless extension and reuse of plugins across different projects. + + [:octicons-arrow-right-24: Link here](#) + +- ## Static Validation + + --- + + Perses supports hassle-free dashboard-as-code usage with built-in static validation. Validate your dashboard in CI/CD using the Perses CLI (percli). + + [:octicons-arrow-right-24: Link here](#) + +
\ No newline at end of file diff --git a/mkdocs.yml b/mkdocs.yml new file mode 100644 index 0000000..738d44d --- /dev/null +++ b/mkdocs.yml @@ -0,0 +1,106 @@ +site_name: Perses +site_url: "https://perses.dev" +repo_name: "Perses on GitHub" +repo_url: "https://github.com/perses/perses" +theme: + name: material + palette: + # Palette toggle for automatic mode + - media: "(prefers-color-scheme)" + primary: black + toggle: + icon: material/brightness-auto + name: Switch to light mode + + # Palette toggle for light mode + - media: "(prefers-color-scheme: light)" + primary: black + scheme: default + toggle: + icon: material/brightness-7 + name: Switch to dark mode + + # Palette toggle for dark mode + - media: "(prefers-color-scheme: dark)" + primary: black + scheme: slate + toggle: + icon: material/brightness-4 + name: Switch to system preference + features: + - navigation.tabs + - content.code.copy +markdown_extensions: + - attr_list + - md_in_html + - pymdownx.emoji: + emoji_index: !!python/name:material.extensions.emoji.twemoji + emoji_generator: !!python/name:material.extensions.emoji.to_svg + - pymdownx.highlight: + anchor_linenums: true + line_spans: __span + pygments_lang_class: true + - pymdownx.inlinehilite + - pymdownx.superfences: + custom_fences: + - name: mermaid + class: mermaid + format: !!python/name:pymdownx.superfences.fence_code_format + - toc: + permalink: "#" + - admonition +extra_css: + - 'css/style.css' +# extra_javascript: +# - 'js/main.js' + +# Enable versioning +extra: + version: + provider: mike + + +# Multi repo support +plugins: + - multirepo: + # (optional) tells multirepo to cleanup the temporary directory after site is built. + cleanup: true + # if set the docs directory will not be removed when importing docs. + # When using this with a nav section in an imported repo you must keep the + # docs directory in the path (e.g., docs/path/to/file.md). + keep_docs_dir: true + nav_repos: + - name: perses + import_url: https://github.com/perses/perses?branch=main + # forward slash is needed in '/README.md' so that only the README.md in the root + # directory is imported and not all README.md files. + imports: [docs/*] +nav: + - 'Home': 'index.md' + - 'Docs': + - 'Introduction': 'perses/docs/prologue/introduction.md' + - 'API': 'perses/docs/api/README.md' + - 'Dashboard as Code': + - 'CUE': 'perses/docs/dac/cue' + - 'Go': 'perses/docs/dac/go' + - 'Design Docs': + - 'Authentication': 'perses/docs/design-docs/authentication.md' + - 'Authorization': 'perses/docs/design-docs/authorization.md' + - 'Perses on Kubernetes': 'perses/docs/design-docs/kubernetes.md' + - 'Plugins': + - 'Introduction': 'perses/docs/plugins/introduction.md' + - 'CUE in Perses': 'perses/docs/plugins/cue.md' + - 'Panel Plugin': 'perses/docs/plugins/panels.md' + - 'Prometheus Plugins': 'perses/docs/plugins/prometheus.md' + - 'Tooling': + - 'Perses CLI (percli)': 'perses/docs/tooling/cli.md' + - 'User Guides': + - 'Configuration': 'perses/docs/user-guides/configuration.md' + - 'Dashboards as Code': 'perses/docs/user-guides/dashboard-as-code.md' + - 'Embedding Perses Panels': 'perses/docs/user-guides/embedding-panels.md' + - 'Installation': + - 'Installing Perses from Source': 'perses/docs/user-guides/installing-perses-from-source.md' + - 'Installing Perses in a Container': 'perses/docs/user-guides/installing-perses-in-a-container.md' + - 'OAuth Helper': 'perses/docs/user-guides/oauth-configuration-helpers.md' + - 'Provisioning': 'perses/docs/user-guides/provisioning.md' + - Demo: 'https://demo.perses.dev' \ No newline at end of file diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..7910c23 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,3 @@ +mkdocs-multirepo-plugin +mkdocs-material == 9.5.34 +mike == 2.1.3 \ No newline at end of file From 8074f698a23d74521df51e8ea6dfde2ca008aca3 Mon Sep 17 00:00:00 2001 From: Adam Gardner <26523841+agardnerIT@users.noreply.github.com> Date: Sat, 14 Sep 2024 17:47:31 +1000 Subject: [PATCH 2/7] yaml lint more hassle than it's worth Signed-off-by: Adam Gardner <26523841+agardnerIT@users.noreply.github.com> --- mkdocs.yml | 50 +++++++++++++++++++++++++------------------------- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/mkdocs.yml b/mkdocs.yml index 738d44d..54c89af 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -78,29 +78,29 @@ plugins: nav: - 'Home': 'index.md' - 'Docs': - - 'Introduction': 'perses/docs/prologue/introduction.md' - - 'API': 'perses/docs/api/README.md' - - 'Dashboard as Code': - - 'CUE': 'perses/docs/dac/cue' - - 'Go': 'perses/docs/dac/go' - - 'Design Docs': - - 'Authentication': 'perses/docs/design-docs/authentication.md' - - 'Authorization': 'perses/docs/design-docs/authorization.md' - - 'Perses on Kubernetes': 'perses/docs/design-docs/kubernetes.md' - - 'Plugins': - - 'Introduction': 'perses/docs/plugins/introduction.md' - - 'CUE in Perses': 'perses/docs/plugins/cue.md' - - 'Panel Plugin': 'perses/docs/plugins/panels.md' - - 'Prometheus Plugins': 'perses/docs/plugins/prometheus.md' - - 'Tooling': - - 'Perses CLI (percli)': 'perses/docs/tooling/cli.md' - - 'User Guides': - - 'Configuration': 'perses/docs/user-guides/configuration.md' - - 'Dashboards as Code': 'perses/docs/user-guides/dashboard-as-code.md' - - 'Embedding Perses Panels': 'perses/docs/user-guides/embedding-panels.md' - - 'Installation': - - 'Installing Perses from Source': 'perses/docs/user-guides/installing-perses-from-source.md' - - 'Installing Perses in a Container': 'perses/docs/user-guides/installing-perses-in-a-container.md' - - 'OAuth Helper': 'perses/docs/user-guides/oauth-configuration-helpers.md' - - 'Provisioning': 'perses/docs/user-guides/provisioning.md' + - 'Introduction': 'perses/docs/prologue/introduction.md' + - 'API': 'perses/docs/api/README.md' + - 'Dashboard as Code': + - 'CUE': 'perses/docs/dac/cue' + - 'Go': 'perses/docs/dac/go' + - 'Design Docs': + - 'Authentication': 'perses/docs/design-docs/authentication.md' + - 'Authorization': 'perses/docs/design-docs/authorization.md' + - 'Perses on Kubernetes': 'perses/docs/design-docs/kubernetes.md' + - 'Plugins': + - 'Introduction': 'perses/docs/plugins/introduction.md' + - 'CUE in Perses': 'perses/docs/plugins/cue.md' + - 'Panel Plugin': 'perses/docs/plugins/panels.md' + - 'Prometheus Plugins': 'perses/docs/plugins/prometheus.md' + - 'Tooling': + - 'Perses CLI (percli)': 'perses/docs/tooling/cli.md' + - 'User Guides': + - 'Configuration': 'perses/docs/user-guides/configuration.md' + - 'Dashboards as Code': 'perses/docs/user-guides/dashboard-as-code.md' + - 'Embedding Perses Panels': 'perses/docs/user-guides/embedding-panels.md' + - 'Installation': + - 'Installing Perses from Source': 'perses/docs/user-guides/installing-perses-from-source.md' + - 'Installing Perses in a Container': 'perses/docs/user-guides/installing-perses-in-a-container.md' + - 'OAuth Helper': 'perses/docs/user-guides/oauth-configuration-helpers.md' + - 'Provisioning': 'perses/docs/user-guides/provisioning.md' - Demo: 'https://demo.perses.dev' \ No newline at end of file From 0d682b8d354ab8636e4f5660c9c19044a6e0b5c0 Mon Sep 17 00:00:00 2001 From: Adam Gardner <26523841+agardnerIT@users.noreply.github.com> Date: Sat, 14 Sep 2024 17:48:08 +1000 Subject: [PATCH 3/7] grrr Signed-off-by: Adam Gardner <26523841+agardnerIT@users.noreply.github.com> --- mkdocs.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mkdocs.yml b/mkdocs.yml index 54c89af..7b7f67b 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -103,4 +103,5 @@ nav: - 'Installing Perses in a Container': 'perses/docs/user-guides/installing-perses-in-a-container.md' - 'OAuth Helper': 'perses/docs/user-guides/oauth-configuration-helpers.md' - 'Provisioning': 'perses/docs/user-guides/provisioning.md' - - Demo: 'https://demo.perses.dev' \ No newline at end of file + - Demo: 'https://demo.perses.dev' + \ No newline at end of file From 4bc51448c9fb1e6ab2ebf26e039aa53177d7e5a3 Mon Sep 17 00:00:00 2001 From: Adam Gardner <26523841+agardnerIT@users.noreply.github.com> Date: Sat, 14 Sep 2024 17:48:56 +1000 Subject: [PATCH 4/7] yaml linting Signed-off-by: Adam Gardner <26523841+agardnerIT@users.noreply.github.com> --- mkdocs.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/mkdocs.yml b/mkdocs.yml index 7b7f67b..a4400c0 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -104,4 +104,3 @@ nav: - 'OAuth Helper': 'perses/docs/user-guides/oauth-configuration-helpers.md' - 'Provisioning': 'perses/docs/user-guides/provisioning.md' - Demo: 'https://demo.perses.dev' - \ No newline at end of file From 75f8ddf5f954130c4d400b3bf570b12d1c0197bb Mon Sep 17 00:00:00 2001 From: Adam Gardner <26523841+agardnerIT@users.noreply.github.com> Date: Sat, 14 Sep 2024 17:50:07 +1000 Subject: [PATCH 5/7] YAML lint errors Signed-off-by: Adam Gardner <26523841+agardnerIT@users.noreply.github.com> --- perses.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/perses.yaml b/perses.yaml index 378d6cf..7c55b10 100644 --- a/perses.yaml +++ b/perses.yaml @@ -40,7 +40,7 @@ frontend: information: |- # Welcome to the Demo instance of Perses! - + This public demo instance is here to show you what Perses looks like and what's possible to do with it. You can have a look at the example dashboards, or create your own ones! From a62dcbd0ea3c10749991cc25b7dfdae7c6a108c6 Mon Sep 17 00:00:00 2001 From: Adam Gardner <26523841+agardnerIT@users.noreply.github.com> Date: Mon, 16 Sep 2024 20:37:37 +1000 Subject: [PATCH 6/7] more menu links Signed-off-by: Adam Gardner <26523841+agardnerIT@users.noreply.github.com> --- mkdocs.yml | 30 +++++++++++++++++++++++++++--- 1 file changed, 27 insertions(+), 3 deletions(-) diff --git a/mkdocs.yml b/mkdocs.yml index a4400c0..cbfd387 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -79,10 +79,34 @@ nav: - 'Home': 'index.md' - 'Docs': - 'Introduction': 'perses/docs/prologue/introduction.md' - - 'API': 'perses/docs/api/README.md' + - 'API': + - 'Introduction': 'perses/docs/api/README.md' + - 'Dashboard': 'perses/docs/api/dashboard.md' + - 'Datasource': 'perses/docs/api/datasource.md' + - 'Ephemeral Dashboard': 'perses/docs/api/ephemeral-dashboard.md' + - 'Project': 'perses/docs/api/project.md' + - 'Role': 'perses/docs/api/role.md' + - 'Role Binding': 'perses/docs/api/rolebinding.md' + - 'Secret': 'perses/docs/api/secret.md' + - 'User': 'perses/docs/api/user.md' + - 'Variable': 'perses/docs/api/variable.md' - 'Dashboard as Code': - - 'CUE': 'perses/docs/dac/cue' - - 'Go': 'perses/docs/dac/go' + - 'CUE': + - 'CUE SDK for Dashboards as Code': "perses/docs/dac/cue/README.md" + - 'Dashboard': 'perses/docs/dac/cue/dashboard.md' + - 'Panel Groups': 'perses/docs/dac/cue/panelgroups.md' + - 'Variable Group': 'perses/docs/dac/cue/variable/group.md' + - 'Static List Variable': 'perses/docs/dac/cue/variable/staticlist.md' + - 'Text Variable': 'perses/docs/dac/cue/variable/text.md' + - 'Prometheus': + - 'Filter': 'perses/docs/dac/cue/prometheus/filter.md' + - 'Panel': 'perses/docs/dac/cue/prometheus/panel.md' + - 'Label Names': 'perses/docs/dac/cue/prometheus/variable/labelnames.md' + - 'Label Values': 'perses/docs/dac/cue/prometheus/variable/labelvalues.md' + - 'PromQL Variable': 'perses/docs/dac/cue/prometheus/variable/promql.md' + - 'Go': + - 'Dashboard': 'perses/docs/dac/go/dashboard.md' + - 'Bar Panel Builder': 'perses/docs/dac/go/panel/bar.md' - 'Design Docs': - 'Authentication': 'perses/docs/design-docs/authentication.md' - 'Authorization': 'perses/docs/design-docs/authorization.md' From b6b7cc3c7ca590991499b1d859ce5ebf4bfedd98 Mon Sep 17 00:00:00 2001 From: Adam Gardner <26523841+agardnerIT@users.noreply.github.com> Date: Tue, 17 Sep 2024 09:19:29 +1000 Subject: [PATCH 7/7] links Signed-off-by: Adam Gardner <26523841+agardnerIT@users.noreply.github.com> --- mkdocs.yml | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/mkdocs.yml b/mkdocs.yml index cbfd387..1603a12 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -105,8 +105,30 @@ nav: - 'Label Values': 'perses/docs/dac/cue/prometheus/variable/labelvalues.md' - 'PromQL Variable': 'perses/docs/dac/cue/prometheus/variable/promql.md' - 'Go': + - 'Go SDK for Dashboards as Code': 'perses/docs/dac/go/README.md' - 'Dashboard': 'perses/docs/dac/go/dashboard.md' + - 'Datasource': 'perses/docs/dac/go/datasource.md' - 'Bar Panel Builder': 'perses/docs/dac/go/panel/bar.md' + - 'Panel Builder': 'perses/docs/dac/go/panel.md' + - 'Panel Group Builder': 'perses/docs/dac/go/panel-group.md' + - 'Query Builder': 'perses/docs/dac/go/query.md' + - 'Variable Builder': 'perses/docs/dac/go/variable.md' + - 'Variable Group Builder': 'perses/docs/dac/go/variable-group.md' + - 'HTTP Proxy Builder': 'perses/docs/dac/go/helper/http-proxy.md' + - 'Panels': + - 'Guage': 'perses/docs/dac/go/panel/gauge.md' + - 'Markdown': 'perses/docs/dac/go/panel/markdown.md' + - 'Stat': 'perses/docs/dac/go/panel/stat.md' + - 'Timeseries': 'perses/docs/dac/go/panel/time-series.md' + - 'Prometheus': + - 'Datasource': 'perses/docs/dac/go/prometheus/datasource.md' + - 'Query': 'perses/docs/dac/go/prometheus/query.md' + - 'Label Names': 'perses/docs/dac/go/prometheus/variable/label-names.md' + - 'Label Values': 'perses/docs/dac/go/prometheus/variable/label-values.md' + - 'PromQL': 'perses/docs/dac/go/prometheus/variable/promql.md' + - 'TLS and HTTP Datasource': 'perses/docs/troubleshooting/tls-plain-http-datasource.md' + + - 'Design Docs': - 'Authentication': 'perses/docs/design-docs/authentication.md' - 'Authorization': 'perses/docs/design-docs/authorization.md'