From e459ca557d3cddd70dc3be86303ad3400eb7e36a Mon Sep 17 00:00:00 2001
From: Piotr Gwizdala <17101802+thampiotr@users.noreply.github.com>
Date: Mon, 27 Nov 2023 11:56:30 +0000
Subject: [PATCH] sort namespaces

---
 docs/generator/compatible_components_page.go  |  9 +-
 .../flow/reference/compatibility/_index.md    | 96 +++++++++----------
 2 files changed, 55 insertions(+), 50 deletions(-)

diff --git a/docs/generator/compatible_components_page.go b/docs/generator/compatible_components_page.go
index a3bf59ada2b6..0e1a95b8f5af 100644
--- a/docs/generator/compatible_components_page.go
+++ b/docs/generator/compatible_components_page.go
@@ -2,6 +2,8 @@ package generator
 
 import (
 	"fmt"
+	"golang.org/x/exp/maps"
+	"sort"
 	"strings"
 
 	"github.com/grafana/agent/component/metadata"
@@ -83,9 +85,12 @@ func listOfLinksToComponents(components []string) string {
 		groups[namespace] = append(groups[namespace], component)
 	}
 
-	for namespace, components := range groups {
+	sortedNamespaces := maps.Keys(groups)
+	sort.Strings(sortedNamespaces)
+
+	for _, namespace := range sortedNamespaces {
 		str += fmt.Sprintf("\n{{< collapse title=%q >}}\n", namespace)
-		for _, component := range components {
+		for _, component := range groups[namespace] {
 			str += fmt.Sprintf("- [%[1]s]({{< relref \"../components/%[1]s.md\" >}})\n", component)
 		}
 		str += fmt.Sprintf("{{< /collapse >}}\n")
diff --git a/docs/sources/flow/reference/compatibility/_index.md b/docs/sources/flow/reference/compatibility/_index.md
index ef02225c5a4b..6251b1561a5d 100644
--- a/docs/sources/flow/reference/compatibility/_index.md
+++ b/docs/sources/flow/reference/compatibility/_index.md
@@ -36,10 +36,6 @@ on the namespace to expand and see more detail.
 
 <!-- START GENERATED SECTION: EXPORTERS OF Loki `LogsReceiver` -->
 
-{{< collapse title="otelcol" >}}
-- [otelcol.receiver.loki]({{< relref "../components/otelcol.receiver.loki.md" >}})
-{{< /collapse >}}
-
 {{< collapse title="loki" >}}
 - [loki.echo]({{< relref "../components/loki.echo.md" >}})
 - [loki.process]({{< relref "../components/loki.process.md" >}})
@@ -47,6 +43,10 @@ on the namespace to expand and see more detail.
 - [loki.write]({{< relref "../components/loki.write.md" >}})
 {{< /collapse >}}
 
+{{< collapse title="otelcol" >}}
+- [otelcol.receiver.loki]({{< relref "../components/otelcol.receiver.loki.md" >}})
+{{< /collapse >}}
+
 <!-- END GENERATED SECTION: EXPORTERS OF Loki `LogsReceiver` -->
 
 <!-- NOTE: this title is used as an anchor in links. Do not change. -->
@@ -104,6 +104,38 @@ on the namespace to expand and see more detail.
 
 <!-- START GENERATED SECTION: EXPORTERS OF Targets -->
 
+{{< collapse title="discovery" >}}
+- [discovery.azure]({{< relref "../components/discovery.azure.md" >}})
+- [discovery.consul]({{< relref "../components/discovery.consul.md" >}})
+- [discovery.consulagent]({{< relref "../components/discovery.consulagent.md" >}})
+- [discovery.digitalocean]({{< relref "../components/discovery.digitalocean.md" >}})
+- [discovery.dns]({{< relref "../components/discovery.dns.md" >}})
+- [discovery.docker]({{< relref "../components/discovery.docker.md" >}})
+- [discovery.dockerswarm]({{< relref "../components/discovery.dockerswarm.md" >}})
+- [discovery.ec2]({{< relref "../components/discovery.ec2.md" >}})
+- [discovery.eureka]({{< relref "../components/discovery.eureka.md" >}})
+- [discovery.file]({{< relref "../components/discovery.file.md" >}})
+- [discovery.gce]({{< relref "../components/discovery.gce.md" >}})
+- [discovery.hetzner]({{< relref "../components/discovery.hetzner.md" >}})
+- [discovery.http]({{< relref "../components/discovery.http.md" >}})
+- [discovery.ionos]({{< relref "../components/discovery.ionos.md" >}})
+- [discovery.kubelet]({{< relref "../components/discovery.kubelet.md" >}})
+- [discovery.kubernetes]({{< relref "../components/discovery.kubernetes.md" >}})
+- [discovery.kuma]({{< relref "../components/discovery.kuma.md" >}})
+- [discovery.lightsail]({{< relref "../components/discovery.lightsail.md" >}})
+- [discovery.linode]({{< relref "../components/discovery.linode.md" >}})
+- [discovery.marathon]({{< relref "../components/discovery.marathon.md" >}})
+- [discovery.nerve]({{< relref "../components/discovery.nerve.md" >}})
+- [discovery.nomad]({{< relref "../components/discovery.nomad.md" >}})
+- [discovery.openstack]({{< relref "../components/discovery.openstack.md" >}})
+- [discovery.puppetdb]({{< relref "../components/discovery.puppetdb.md" >}})
+- [discovery.relabel]({{< relref "../components/discovery.relabel.md" >}})
+- [discovery.scaleway]({{< relref "../components/discovery.scaleway.md" >}})
+- [discovery.serverset]({{< relref "../components/discovery.serverset.md" >}})
+- [discovery.triton]({{< relref "../components/discovery.triton.md" >}})
+- [discovery.uyuni]({{< relref "../components/discovery.uyuni.md" >}})
+{{< /collapse >}}
+
 {{< collapse title="local" >}}
 - [local.file_match]({{< relref "../components/local.file_match.md" >}})
 {{< /collapse >}}
@@ -138,38 +170,6 @@ on the namespace to expand and see more detail.
 - [prometheus.exporter.windows]({{< relref "../components/prometheus.exporter.windows.md" >}})
 {{< /collapse >}}
 
-{{< collapse title="discovery" >}}
-- [discovery.azure]({{< relref "../components/discovery.azure.md" >}})
-- [discovery.consul]({{< relref "../components/discovery.consul.md" >}})
-- [discovery.consulagent]({{< relref "../components/discovery.consulagent.md" >}})
-- [discovery.digitalocean]({{< relref "../components/discovery.digitalocean.md" >}})
-- [discovery.dns]({{< relref "../components/discovery.dns.md" >}})
-- [discovery.docker]({{< relref "../components/discovery.docker.md" >}})
-- [discovery.dockerswarm]({{< relref "../components/discovery.dockerswarm.md" >}})
-- [discovery.ec2]({{< relref "../components/discovery.ec2.md" >}})
-- [discovery.eureka]({{< relref "../components/discovery.eureka.md" >}})
-- [discovery.file]({{< relref "../components/discovery.file.md" >}})
-- [discovery.gce]({{< relref "../components/discovery.gce.md" >}})
-- [discovery.hetzner]({{< relref "../components/discovery.hetzner.md" >}})
-- [discovery.http]({{< relref "../components/discovery.http.md" >}})
-- [discovery.ionos]({{< relref "../components/discovery.ionos.md" >}})
-- [discovery.kubelet]({{< relref "../components/discovery.kubelet.md" >}})
-- [discovery.kubernetes]({{< relref "../components/discovery.kubernetes.md" >}})
-- [discovery.kuma]({{< relref "../components/discovery.kuma.md" >}})
-- [discovery.lightsail]({{< relref "../components/discovery.lightsail.md" >}})
-- [discovery.linode]({{< relref "../components/discovery.linode.md" >}})
-- [discovery.marathon]({{< relref "../components/discovery.marathon.md" >}})
-- [discovery.nerve]({{< relref "../components/discovery.nerve.md" >}})
-- [discovery.nomad]({{< relref "../components/discovery.nomad.md" >}})
-- [discovery.openstack]({{< relref "../components/discovery.openstack.md" >}})
-- [discovery.puppetdb]({{< relref "../components/discovery.puppetdb.md" >}})
-- [discovery.relabel]({{< relref "../components/discovery.relabel.md" >}})
-- [discovery.scaleway]({{< relref "../components/discovery.scaleway.md" >}})
-- [discovery.serverset]({{< relref "../components/discovery.serverset.md" >}})
-- [discovery.triton]({{< relref "../components/discovery.triton.md" >}})
-- [discovery.uyuni]({{< relref "../components/discovery.uyuni.md" >}})
-{{< /collapse >}}
-
 <!-- END GENERATED SECTION: EXPORTERS OF Targets -->
 
 
@@ -180,18 +180,6 @@ on the namespace to expand and see more detail.
 
 <!-- START GENERATED SECTION: CONSUMERS OF Targets -->
 
-{{< collapse title="otelcol" >}}
-- [otelcol.processor.discovery]({{< relref "../components/otelcol.processor.discovery.md" >}})
-{{< /collapse >}}
-
-{{< collapse title="prometheus" >}}
-- [prometheus.scrape]({{< relref "../components/prometheus.scrape.md" >}})
-{{< /collapse >}}
-
-{{< collapse title="pyroscope" >}}
-- [pyroscope.scrape]({{< relref "../components/pyroscope.scrape.md" >}})
-{{< /collapse >}}
-
 {{< collapse title="discovery" >}}
 - [discovery.relabel]({{< relref "../components/discovery.relabel.md" >}})
 {{< /collapse >}}
@@ -206,4 +194,16 @@ on the namespace to expand and see more detail.
 - [loki.source.kubernetes]({{< relref "../components/loki.source.kubernetes.md" >}})
 {{< /collapse >}}
 
+{{< collapse title="otelcol" >}}
+- [otelcol.processor.discovery]({{< relref "../components/otelcol.processor.discovery.md" >}})
+{{< /collapse >}}
+
+{{< collapse title="prometheus" >}}
+- [prometheus.scrape]({{< relref "../components/prometheus.scrape.md" >}})
+{{< /collapse >}}
+
+{{< collapse title="pyroscope" >}}
+- [pyroscope.scrape]({{< relref "../components/pyroscope.scrape.md" >}})
+{{< /collapse >}}
+
 <!-- END GENERATED SECTION: CONSUMERS OF Targets -->