consul/docs
Matt Keeler 53fcc5d9a5
Add protoc generator to emit resource type variables (#18957)
The annotations include a little more data than is strictly necessary because we will also have a protoc generator for openapi output.
2023-09-21 17:18:47 -04:00
..
acl Move contributing to docs 2021-08-30 16:17:09 -04:00
cli Move contributing to docs 2021-08-30 16:17:09 -04:00
client-agent Move contributing to docs 2021-08-30 16:17:09 -04:00
cluster-federation docs: simplify agent docs slugs 2022-04-11 17:38:47 -07:00
cluster-membership Move contributing to docs 2021-08-30 16:17:09 -04:00
config OSS -> CE (community edition) changes (#18517) 2023-08-22 09:46:03 -05:00
contributing Add changelog creation to contributor docs 2022-02-02 10:58:27 -08:00
debug Add some docs on pprof usage (#12551) 2022-05-09 14:15:21 -06:00
http-api Move contributing to docs 2021-08-30 16:17:09 -04:00
persistence OSS -> CE (community edition) changes (#18517) 2023-08-22 09:46:03 -05:00
resources Add protoc generator to emit resource type variables (#18957) 2023-09-21 17:18:47 -04:00
rpc grpc: rename public/private directories to external/internal (#13721) 2022-07-13 16:33:48 +01:00
service-discovery fix: missing UDP field in checkType (#14885) 2022-10-05 15:57:21 -04:00
service-mesh docs: add envoy to the proxycfg diagram (#16834) 2023-04-04 09:42:42 -04:00
README.md update readme.md (#18191) 2023-07-19 18:24:55 -04:00
consul-mermaid-theme.json Move contributing to docs 2021-08-30 16:17:09 -04:00
faq.md Move contributing to docs 2021-08-30 16:17:09 -04:00
overview.mmd Move contributing to docs 2021-08-30 16:17:09 -04:00
overview.svg Move contributing to docs 2021-08-30 16:17:09 -04:00

README.md

Consul Developer Documentation

See our contributing guide 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.

Overview

source

Contents

  1. Command-Line Interface (CLI)
  2. HTTP API
  3. Agent Configuration
  4. RPC
  5. Cluster Persistence
  6. Resources and Controllers
  7. Client Agent
  8. Service Discovery
  9. Service Mesh (Connect)
  10. Cluster Membership
  11. Key/Value Store
  12. ACL
  13. Multi-Cluster Federation

Also see the FAQ.

Other Docs

  1. Integration Tests
  2. Upgrade Tests
  3. Remote Debugging Integration Tests
  4. Peering Common Topology Tests

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. A pull requests can update the source code and Consul's documentation at the same time.
  • .github contains 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 Makefile.
  • grafana contains the source for a Grafana dashboard that can be used to monitor Consul.

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.