* refactor(plugins): use routes specific to the new plugins/admin * refactor(plugins): remove unused pages (PluginList, PluginItem) * refactor(plugins): remove PluginPage * refactor(plugins): remove UpdatePluginModal * refactor(plugins): move AppConfigWrapper under plugins/admin * refactor(plugins): move PluginDashboards under plugins/admin * refactor(plugins): rename the "specs" folder to "tests" * refactor(plugins): move test files to /tests folder * refactor(plugins): move AppRootPage into a /components folder * refactor(plugins): move PluginsErrorsInfo into a /plugins folder * refactor(plugins): move PluginSettingsCache into a /components folder * refactor(plugins): move PluginStateInfo into a /plugins folder * refactor(plugins): move AppRootPage.test.tsx next to the tested component * refactor(plugins): remove old snapshot tests * fix(plugins): fix tests * refactor(plugins/admin): move & rename PluginSettingsCache * fix(plugins): fix a few rebase issues * Plugins: remove deprecated code (state handling) (#41739) * refactor(plugins): use the plugins/admin reducer only * refactor(plugins): remove tests for the deprecated plugins reducer * refactor(plugins): remove tests for the deprecated plugins selectors * refactor(plugins/state): add a short comment note to selectors * feat(plugins/state): add a selector for selecting errors * feat(plugins/state): add a hook for getting plugin errors * refactor(plugins): udpate the PluginsErrorsInfo component to use the new state selectors * refactor(plugins/state): remove the old (deprecated) selectors * refactor(plugins/state): use the new actions under /admin * refactor(plugins/state): remove old (deprecated) reducers and actions * refactor(plugins): update component definition * fix(plugins): remove unnecessary {children} prop for PluginsErrorsInfo * Plugins: show / hide install controls based on the `pluginAdminEnabled` flag (#41749) * docs(plugins): update documentation for the `plugin_admin_enabled` flag * refactor(InstallControls): move the main component to a named module * feat(plugins): use the `pluginAdminEnable` flag to hide / show install controls in the UI * test(plugins): add tests for enabling/disabling install controls |
||
---|---|---|
.. | ||
sources | ||
.gitignore | ||
logo-horizontal.png | ||
Makefile | ||
README.md |
Building the docs locally
When you contribute to documentation, it is 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.
Requirements
Docker >= 2.1.0.3 Yarn >= 1.22.4
Build the doc site
- On the command line, first change to the docs folder:
cd docs
. - Run
make docs-quick
. This launches a preview of the website with the current grafana docs athttp://localhost:3002/docs/grafana/next/
which will refresh automatically when changes are made to content in thesources
directory.
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).
Content guidelines
Edit content in the sources
directory.
Contributing
Using relref
for internal links
Use the Hugo shortcode relref any time you are linking to other internal docs pages.
Syntax is:
{{< relref "example.md" >}}
You might need to add more context for the link (containing folders and so on, folder/example.md
) if Hugo says the relref is ambiguous.
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
Images are currently hosted in the grafana/website repo.
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
main
branch syncs to thecontent/docs/grafana/next
directory in thewebsite
repository, and publishes tohttps://grafana.com/docs/grafana/next/
. - A PR targeting the
latest/current
release branch syncs to thecontent/docs/grafana/latest
directory in thewebsite
repository, 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.