diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index a60d72c72..9b55be796 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -105,10 +105,10 @@ If a dependency is added or change, run `go mod tidy` to update `go.mod` and `go ## Developer Documentation -Documentation about the Consul code base is under [./contributing], +Documentation about the Consul code base is under [./docs], and godoc package document can be read at [pkg.go.dev/github.com/hashicorp/consul]. -[./contributing]: ../contributing/README.md +[./docs]: ../docs/README.md [pkg.go.dev/github.com/hashicorp/consul]: https://pkg.go.dev/github.com/hashicorp/consul ### Checklists @@ -116,5 +116,5 @@ and godoc package document can be read at [pkg.go.dev/github.com/hashicorp/consu Some common changes that many PRs require such as adding config fields, are documented through checklists. -Please check in `contributing/` for any `checklist-*.md` files that might help +Please check in [docs/](../docs/) for any `checklist-*.md` files that might help with your change. diff --git a/INTERNALS.md b/INTERNALS.md index d5043a16a..efa95dab3 100644 --- a/INTERNALS.md +++ b/INTERNALS.md @@ -1 +1 @@ -Moved to [contributing/README.md](./contributing/README.md). +Moved to [docs/README.md](./docs/README.md). diff --git a/contributing/INTERNALS.md b/contributing/INTERNALS.md index 2a0114d3d..0deb6675c 100644 --- a/contributing/INTERNALS.md +++ b/contributing/INTERNALS.md @@ -1 +1 @@ -Moved to [README.md](./README.md). +Moved to [docs/README.md](../docs/README.md). diff --git a/contributing/README.md b/contributing/README.md index 2f0f63dff..5ab5e80d3 100644 --- a/contributing/README.md +++ b/contributing/README.md @@ -1,81 +1 @@ -# Contributing to Consul - -See [our contributing guide](../.github/CONTRIBUTING.md) to get started. - -This directory contains documentation intended for anyone interested in -understanding, and contributing changes to, the Consul codebase. - -## Overview - -This documentation is organized into the following categories. Each category is -either a significant architectural layer, or major functional area of Consul. -These documents assume a basic understanding of Consul's feature set, which can -found in the public [user documentation]. - -[user documentation]: https://www.consul.io/docs - -![Overview](./overview.svg) - -[source](./overview.mmd) - -## Contents - -1. [Command-Line Interface (CLI)](./cli) -1. [HTTP API](./http-api) -1. [Agent Configuration](./config) -1. [RPC](./rpc) -1. [Cluster Persistence](./persistence) -1. [Client Agent](./client-agent) -1. [Service Discovery](./service-discovery) -1. [Service Mesh (Connect)](./service-mesh) -1. [Cluster Membership](./cluster-membership) -1. [Key/Value Store](./kv) -1. [ACL](./acl) -1. [Multi-Cluster Federation](./cluster-federation) - -Also see the [FAQ](./faq.md). - -## Important Directories - -Most top level directories contain Go source code. The directories listed below -contain other important source related to Consul. - -* [ui] contains the source code for the Consul UI. -* [website] contains the source for [consul.io](https://www.consul.io/). A pull requests - can update the source code and Consul's documentation at the same time. -* [.circleci] and [.github] contain the source for our CI and GitHub repository - automation. -* [.changelog] contains markdown files that are used by [hashicorp/go-changelog] to produce the - [CHANGELOG.md]. -* [build-support] contains bash functions and scripts used to automate. - development tasks. Generally these scripts are called from the [GNUmakefile]. -* [grafana] contains the source for a [Grafana dashboard] that can be used to - monitor Consul. - -[ui]: https://github.com/hashicorp/consul/tree/main/ui -[website]: https://github.com/hashicorp/consul/tree/main/website -[.circleci]: https://github.com/hashicorp/consul/tree/main/.circleci -[.github]: https://github.com/hashicorp/consul/tree/main/.github -[.changelog]: https://github.com/hashicorp/consul/tree/main/.changelog -[hashicorp/go-changelog]: https://github.com/hashicorp/go-changelog -[CHANGELOG.md]: https://github.com/hashicorp/consul/blob/main/CHANGELOG.md -[build-support]: https://github.com/hashicorp/consul/tree/main/build-support -[GNUmakefile]: https://github.com/hashicorp/consul/tree/main/GNUmakefile -[Grafana dashboard]: https://grafana.com/grafana/dashboards -[grafana]: https://github.com/hashicorp/consul/tree/main/grafana - - -## Contributing to these docs - -This section is meta documentation about contributing to these docs. - -### Diagrams - -The diagrams in these documents are created using the [mermaid-js live editor]. -The [mermaid-js docs] provide a complete reference for how to create and edit -the diagrams. Use the [consul-mermaid-theme.json] (paste it into the Config tab -in the editor) to maintain a consistent Consul style for the diagrams. - -[mermaid-js live editor]: https://mermaid-js.github.io/mermaid-live-editor/edit/ -[mermaid-js docs]: https://mermaid-js.github.io/mermaid/ -[consul-mermaid-theme.json]: ./consul-mermaid-theme.json +Moved to [docs](../docs/README.md). diff --git a/docs/README.md b/docs/README.md new file mode 100644 index 000000000..8c1148ec2 --- /dev/null +++ b/docs/README.md @@ -0,0 +1,81 @@ +# Consul Developer Documentation + +See [our contributing guide](../.github/CONTRIBUTING.md) to get started. + +This directory contains documentation intended for anyone interested in +understanding, and contributing changes to, the Consul codebase. + +## Overview + +This documentation is organized into the following categories. Each category is +either a significant architectural layer, or major functional area of Consul. +These documents assume a basic understanding of Consul's feature set, which can +be found in the public [user documentation]. + +[user documentation]: https://www.consul.io/docs + +![Overview](./overview.svg) + +[source](./overview.mmd) + +## Contents + +1. [Command-Line Interface (CLI)](./cli) +1. [HTTP API](./http-api) +1. [Agent Configuration](./config) +1. [RPC](./rpc) +1. [Cluster Persistence](./persistence) +1. [Client Agent](./client-agent) +1. [Service Discovery](./service-discovery) +1. [Service Mesh (Connect)](./service-mesh) +1. [Cluster Membership](./cluster-membership) +1. [Key/Value Store](./kv) +1. [ACL](./acl) +1. [Multi-Cluster Federation](./cluster-federation) + +Also see the [FAQ](./faq.md). + +## Important Directories + +Most top level directories contain Go source code. The directories listed below +contain other important source related to Consul. + +* [ui] contains the source code for the Consul UI. +* [website] contains the source for [consul.io](https://www.consul.io/). A pull requests + can update the source code and Consul's documentation at the same time. +* [.circleci] and [.github] contain the source for our CI and GitHub repository + automation. +* [.changelog] contains markdown files that are used by [hashicorp/go-changelog] to produce the + [CHANGELOG.md]. +* [build-support] contains bash functions and scripts used to automate. + development tasks. Generally these scripts are called from the [GNUmakefile]. +* [grafana] contains the source for a [Grafana dashboard] that can be used to + monitor Consul. + +[ui]: https://github.com/hashicorp/consul/tree/main/ui +[website]: https://github.com/hashicorp/consul/tree/main/website +[.circleci]: https://github.com/hashicorp/consul/tree/main/.circleci +[.github]: https://github.com/hashicorp/consul/tree/main/.github +[.changelog]: https://github.com/hashicorp/consul/tree/main/.changelog +[hashicorp/go-changelog]: https://github.com/hashicorp/go-changelog +[CHANGELOG.md]: https://github.com/hashicorp/consul/blob/main/CHANGELOG.md +[build-support]: https://github.com/hashicorp/consul/tree/main/build-support +[GNUmakefile]: https://github.com/hashicorp/consul/tree/main/GNUmakefile +[Grafana dashboard]: https://grafana.com/grafana/dashboards +[grafana]: https://github.com/hashicorp/consul/tree/main/grafana + + +## Contributing to these docs + +This section is meta documentation about contributing to these docs. + +### Diagrams + +The diagrams in these documents are created using the [mermaid-js live editor]. +The [mermaid-js docs] provide a complete reference for how to create and edit +the diagrams. Use the [consul-mermaid-theme.json] (paste it into the Config tab +in the editor) to maintain a consistent Consul style for the diagrams. + +[mermaid-js live editor]: https://mermaid-js.github.io/mermaid-live-editor/edit/ +[mermaid-js docs]: https://mermaid-js.github.io/mermaid/ +[consul-mermaid-theme.json]: ./consul-mermaid-theme.json diff --git a/contributing/acl/README.md b/docs/acl/README.md similarity index 100% rename from contributing/acl/README.md rename to docs/acl/README.md diff --git a/contributing/acl/erd.mmd b/docs/acl/erd.mmd similarity index 100% rename from contributing/acl/erd.mmd rename to docs/acl/erd.mmd diff --git a/contributing/acl/erd.svg b/docs/acl/erd.svg similarity index 100% rename from contributing/acl/erd.svg rename to docs/acl/erd.svg diff --git a/contributing/cli/README.md b/docs/cli/README.md similarity index 100% rename from contributing/cli/README.md rename to docs/cli/README.md diff --git a/contributing/client-agent/README.md b/docs/client-agent/README.md similarity index 100% rename from contributing/client-agent/README.md rename to docs/client-agent/README.md diff --git a/contributing/cluster-federation/README.md b/docs/cluster-federation/README.md similarity index 100% rename from contributing/cluster-federation/README.md rename to docs/cluster-federation/README.md diff --git a/contributing/cluster-federation/network-areas/README.md b/docs/cluster-federation/network-areas/README.md similarity index 100% rename from contributing/cluster-federation/network-areas/README.md rename to docs/cluster-federation/network-areas/README.md diff --git a/contributing/cluster-membership/README.md b/docs/cluster-membership/README.md similarity index 100% rename from contributing/cluster-membership/README.md rename to docs/cluster-membership/README.md diff --git a/contributing/config/README.md b/docs/config/README.md similarity index 100% rename from contributing/config/README.md rename to docs/config/README.md diff --git a/contributing/config/checklist-adding-config-fields.md b/docs/config/checklist-adding-config-fields.md similarity index 100% rename from contributing/config/checklist-adding-config-fields.md rename to docs/config/checklist-adding-config-fields.md diff --git a/contributing/consul-mermaid-theme.json b/docs/consul-mermaid-theme.json similarity index 100% rename from contributing/consul-mermaid-theme.json rename to docs/consul-mermaid-theme.json diff --git a/contributing/faq.md b/docs/faq.md similarity index 100% rename from contributing/faq.md rename to docs/faq.md diff --git a/contributing/http-api/README.md b/docs/http-api/README.md similarity index 100% rename from contributing/http-api/README.md rename to docs/http-api/README.md diff --git a/contributing/overview.mmd b/docs/overview.mmd similarity index 100% rename from contributing/overview.mmd rename to docs/overview.mmd diff --git a/contributing/overview.svg b/docs/overview.svg similarity index 100% rename from contributing/overview.svg rename to docs/overview.svg diff --git a/contributing/persistence/README.md b/docs/persistence/README.md similarity index 100% rename from contributing/persistence/README.md rename to docs/persistence/README.md diff --git a/contributing/persistence/overview.mmd b/docs/persistence/overview.mmd similarity index 100% rename from contributing/persistence/overview.mmd rename to docs/persistence/overview.mmd diff --git a/contributing/persistence/overview.svg b/docs/persistence/overview.svg similarity index 100% rename from contributing/persistence/overview.svg rename to docs/persistence/overview.svg diff --git a/contributing/rpc/README.md b/docs/rpc/README.md similarity index 100% rename from contributing/rpc/README.md rename to docs/rpc/README.md diff --git a/contributing/rpc/routing.mmd b/docs/rpc/routing.mmd similarity index 100% rename from contributing/rpc/routing.mmd rename to docs/rpc/routing.mmd diff --git a/contributing/rpc/routing.svg b/docs/rpc/routing.svg similarity index 100% rename from contributing/rpc/routing.svg rename to docs/rpc/routing.svg diff --git a/contributing/rpc/streaming/README.md b/docs/rpc/streaming/README.md similarity index 100% rename from contributing/rpc/streaming/README.md rename to docs/rpc/streaming/README.md diff --git a/contributing/rpc/streaming/adding-a-topic.md b/docs/rpc/streaming/adding-a-topic.md similarity index 100% rename from contributing/rpc/streaming/adding-a-topic.md rename to docs/rpc/streaming/adding-a-topic.md diff --git a/contributing/rpc/streaming/event-filtering.mmd b/docs/rpc/streaming/event-filtering.mmd similarity index 100% rename from contributing/rpc/streaming/event-filtering.mmd rename to docs/rpc/streaming/event-filtering.mmd diff --git a/contributing/rpc/streaming/event-filtering.svg b/docs/rpc/streaming/event-filtering.svg similarity index 100% rename from contributing/rpc/streaming/event-filtering.svg rename to docs/rpc/streaming/event-filtering.svg diff --git a/contributing/rpc/streaming/event-publisher-layout.mmd b/docs/rpc/streaming/event-publisher-layout.mmd similarity index 100% rename from contributing/rpc/streaming/event-publisher-layout.mmd rename to docs/rpc/streaming/event-publisher-layout.mmd diff --git a/contributing/rpc/streaming/event-publisher-layout.svg b/docs/rpc/streaming/event-publisher-layout.svg similarity index 100% rename from contributing/rpc/streaming/event-publisher-layout.svg rename to docs/rpc/streaming/event-publisher-layout.svg diff --git a/contributing/rpc/streaming/framing-events.mmd b/docs/rpc/streaming/framing-events.mmd similarity index 100% rename from contributing/rpc/streaming/framing-events.mmd rename to docs/rpc/streaming/framing-events.mmd diff --git a/contributing/rpc/streaming/framing-events.svg b/docs/rpc/streaming/framing-events.svg similarity index 100% rename from contributing/rpc/streaming/framing-events.svg rename to docs/rpc/streaming/framing-events.svg diff --git a/contributing/rpc/streaming/overview.mmd b/docs/rpc/streaming/overview.mmd similarity index 100% rename from contributing/rpc/streaming/overview.mmd rename to docs/rpc/streaming/overview.mmd diff --git a/contributing/rpc/streaming/overview.svg b/docs/rpc/streaming/overview.svg similarity index 100% rename from contributing/rpc/streaming/overview.svg rename to docs/rpc/streaming/overview.svg diff --git a/contributing/service-discovery/README.md b/docs/service-discovery/README.md similarity index 100% rename from contributing/service-discovery/README.md rename to docs/service-discovery/README.md diff --git a/contributing/service-discovery/catalog-2.mmd b/docs/service-discovery/catalog-2.mmd similarity index 100% rename from contributing/service-discovery/catalog-2.mmd rename to docs/service-discovery/catalog-2.mmd diff --git a/contributing/service-discovery/catalog.md b/docs/service-discovery/catalog.md similarity index 100% rename from contributing/service-discovery/catalog.md rename to docs/service-discovery/catalog.md diff --git a/contributing/service-discovery/catalog.mmd b/docs/service-discovery/catalog.mmd similarity index 100% rename from contributing/service-discovery/catalog.mmd rename to docs/service-discovery/catalog.mmd diff --git a/contributing/service-discovery/dns.md b/docs/service-discovery/dns.md similarity index 100% rename from contributing/service-discovery/dns.md rename to docs/service-discovery/dns.md diff --git a/contributing/service-discovery/health-checks.md b/docs/service-discovery/health-checks.md similarity index 100% rename from contributing/service-discovery/health-checks.md rename to docs/service-discovery/health-checks.md diff --git a/contributing/service-mesh/README.md b/docs/service-mesh/README.md similarity index 100% rename from contributing/service-mesh/README.md rename to docs/service-mesh/README.md diff --git a/contributing/service-mesh/xds.md b/docs/service-mesh/xds.md similarity index 100% rename from contributing/service-mesh/xds.md rename to docs/service-mesh/xds.md