Consul is a distributed, highly available, and data center aware solution to connect and configure applications across dynamic, distributed infrastructure. https://www.consul.io
Go to file
John Murret a3973a82ae
Github Actions Migration - move go-tests workflows to GHA (#16761)
* go-tests workflow

* add test splitting to go-tests

* fix re-reun fails report path

* fix re-reun fails report path another place

* fixing tests for32bit and race

* use script file to generate runners

* fixing run path

* add checkout

* Apply suggestions from code review

Co-authored-by: Dan Bond <danbond@protonmail.com>

* Apply suggestions from code review

Co-authored-by: Dan Bond <danbond@protonmail.com>

* Apply suggestions from code review

Co-authored-by: Dan Bond <danbond@protonmail.com>

* passing runs-on

* setting up runs-on as a parameter to check-go-mod

* making on pull_request

* Update .github/scripts/rerun_fails_report.sh

Co-authored-by: Dan Bond <danbond@protonmail.com>

* Apply suggestions from code review

Co-authored-by: Dan Bond <danbond@protonmail.com>

* make runs-on required

* removing go-version param that is not used.

* removing go-version param that is not used.

* Modify build-distros to use medium runners (#16773)

* go-tests workflow

* add test splitting to go-tests

* fix re-reun fails report path

* fix re-reun fails report path another place

* fixing tests for32bit and race

* use script file to generate runners

* fixing run path

* add checkout

* Apply suggestions from code review

Co-authored-by: Dan Bond <danbond@protonmail.com>

* Apply suggestions from code review

Co-authored-by: Dan Bond <danbond@protonmail.com>

* Apply suggestions from code review

Co-authored-by: Dan Bond <danbond@protonmail.com>

* passing runs-on

* setting up runs-on as a parameter to check-go-mod

* trying mediums

* adding in script

* fixing runs-on to be parameter

* fixing merge conflict

* changing to on push

* removing whitespace

* go-tests workflow

* add test splitting to go-tests

* fix re-reun fails report path

* fix re-reun fails report path another place

* fixing tests for32bit and race

* use script file to generate runners

* fixing run path

* add checkout

* Apply suggestions from code review

Co-authored-by: Dan Bond <danbond@protonmail.com>

* Apply suggestions from code review

Co-authored-by: Dan Bond <danbond@protonmail.com>

* Apply suggestions from code review

Co-authored-by: Dan Bond <danbond@protonmail.com>

* passing runs-on

* setting up runs-on as a parameter to check-go-mod

* changing back to on pull_request

---------

Co-authored-by: Dan Bond <danbond@protonmail.com>

* Github Actions Migration - move verify-ci workflows to GHA (#16777)

* add verify-ci workflow

* adding comment and changing to on pull request.

* changing to pull_requests

* changing to pull_request

* Apply suggestions from code review

Co-authored-by: Dan Bond <danbond@protonmail.com>

* [NET-3029] Migrate frontend to GHA (#16731)

* changing set up to a small

* using consuls own custom runner pool.

---------

Co-authored-by: Dan Bond <danbond@protonmail.com>
2023-03-28 15:29:27 -06:00
.changelog Update normalization of route refs (#16789) 2023-03-28 11:23:49 -04:00
.circleci RELENG-471: Remove obsolete load-test workflow (#16737) 2023-03-24 11:27:10 -06:00
.github Github Actions Migration - move go-tests workflows to GHA (#16761) 2023-03-28 15:29:27 -06:00
.release Remove version bump from CRT workflow (#16728) 2023-03-23 11:21:27 -05:00
acl Add copyright headers for acl, api and bench folders (#16706) 2023-03-28 16:12:41 -04:00
agent copyright headers for agent folder (#16704) 2023-03-28 14:39:22 -04:00
api Add copyright headers for acl, api and bench folders (#16706) 2023-03-28 16:12:41 -04:00
bench Gets benchmarks running again and does a rough pass for 0.7.1. 2016-11-29 13:02:26 -08:00
build-support UI: update Ember to 3.28.6 (#16616) 2023-03-20 15:41:47 -07:00
command Copyright headers for command folder (#16705) 2023-03-28 15:12:30 -04:00
connect Protobuf Refactoring for Multi-Module Cleanliness (#16302) 2023-02-17 16:14:46 -05:00
contributing Move contributing to docs 2021-08-30 16:17:09 -04:00
docs NET-2397: Add readme.md to upgrade test subdirectory (#16610) 2023-03-20 14:26:43 -04:00
envoyextensions Bump submodules from latest 1.15.1 patch release (#16578) 2023-03-08 14:37:50 -06:00
grafana add readme outlining how to edit and publish 2021-01-12 14:47:11 -08:00
internal Add storage backend interface and in-memory implementation (#16538) 2023-03-27 10:30:53 +01:00
ipaddr Ensure Consul is IPv6 compliant (#5468) 2019-06-04 10:02:38 -04:00
lib Suppress AlreadyRegisteredError to fix test retries (#16501) 2023-03-02 12:08:03 -05:00
logging Run config entry controller routines on leader (#16054) 2023-01-25 12:21:46 -06:00
proto add ip rate limiter controller OSS parts (#16790) 2023-03-27 17:00:25 -04:00
proto-public WatchList(..) endpoint for the resource service (#16726) 2023-03-27 14:37:54 -05:00
sdk allow setting locality on services and nodes (#16581) 2023-03-10 09:36:15 -05:00
sentinel re-run gofmt on 1.17 (#11579) 2021-11-16 12:04:01 -06:00
service_os re-run gofmt on 1.17 (#11579) 2021-11-16 12:04:01 -06:00
snapshot removes ioutil usage everywhere which was deprecated in go1.16 (#15297) 2022-11-10 10:26:01 -06:00
test Expand route flattening test for multiple namespaces (#16745) 2023-03-27 19:17:12 +00:00
testrpc Pass remote addr of incoming HTTP requests through to RPC(..) calls (#15700) 2022-12-14 09:24:22 -06:00
tlsutil Protobuf Refactoring for Multi-Module Cleanliness (#16302) 2023-02-17 16:14:46 -05:00
tools/internal-grpc-proxy grpc: rename public/private directories to external/internal (#13721) 2022-07-13 16:33:48 +01:00
troubleshoot Bump submodules from latest 1.15.1 patch release (#16578) 2023-03-08 14:37:50 -06:00
types agent: convert listener config to TLS types (#12522) 2022-03-24 15:32:25 -04:00
ui add scripts for testing locally consul-ui-toolkit (#16794) 2023-03-27 17:00:59 -07:00
version cli: remove stray whitespace when loading the consul version from the VERSION file (#16467) 2023-02-28 14:37:52 -06:00
website changes to support new PQ enterprise fields (#16793) 2023-03-27 15:40:49 -07:00
.copywrite.hcl copyright headers for agent folder (#16704) 2023-03-28 14:39:22 -04:00
.dockerignore Update the scripting 2018-06-14 21:42:47 -04:00
.gitignore grpc: `protoc` plugin for generating gRPC rate limit specifications (#15564) 2023-01-04 16:07:02 +00:00
.golangci.yml Add copyright headers for acl, api and bench folders (#16706) 2023-03-28 16:12:41 -04:00
CHANGELOG.md Update changelog with patch releases (#16576) 2023-03-08 19:32:22 +00:00
Dockerfile Upgrade Alpine image to 3.17 (#16358) 2023-02-22 10:09:41 -06:00
GNUmakefile Protobuf Refactoring for Multi-Module Cleanliness (#16302) 2023-02-17 16:14:46 -05:00
LICENSE [COMPLIANCE] Update MPL-2.0 LICENSE (#14964) 2022-11-09 12:24:14 -06:00
NOTICE.md add copyright notice file 2018-07-09 10:58:26 -07:00
README.md Fixed broken links referring to tutorials running as local agent (#14954) 2022-10-11 13:01:29 -07:00
buf.work.yaml Protobuf Refactoring for Multi-Module Cleanliness (#16302) 2023-02-17 16:14:46 -05:00
fixup_acl_move.sh Fixup script 2 2022-04-05 14:52:43 -07:00
go.mod Snapshot restore tests (#16647) 2023-03-18 14:43:22 -06:00
go.sum Snapshot restore tests (#16647) 2023-03-18 14:43:22 -06:00
main.go [OSS] security: update go to 1.20.1 (#16263) 2023-02-17 15:04:12 -05:00

README.md

Consul logo Consul

Docker Pulls Go Report Card

Consul is a distributed, highly available, and data center aware solution to connect and configure applications across dynamic, distributed infrastructure.

Consul provides several key features:

  • Multi-Datacenter - Consul is built to be datacenter aware, and can support any number of regions without complex configuration.

  • Service Mesh - Consul Service Mesh enables secure service-to-service communication with automatic TLS encryption and identity-based authorization. Applications can use sidecar proxies in a service mesh configuration to establish TLS connections for inbound and outbound connections with Transparent Proxy.

  • Service Discovery - Consul makes it simple for services to register themselves and to discover other services via a DNS or HTTP interface. External services such as SaaS providers can be registered as well.

  • Health Checking - Health Checking enables Consul to quickly alert operators about any issues in a cluster. The integration with service discovery prevents routing traffic to unhealthy hosts and enables service level circuit breakers.

  • Key/Value Storage - A flexible key/value store enables storing dynamic configuration, feature flagging, coordination, leader election and more. The simple HTTP API makes it easy to use anywhere.

Consul runs on Linux, macOS, FreeBSD, Solaris, and Windows and includes an optional browser based UI. A commercial version called Consul Enterprise is also available.

Please note: We take Consul's security and our users' trust very seriously. If you believe you have found a security issue in Consul, please responsibly disclose by contacting us at security@hashicorp.com.

Quick Start

A few quick start guides are available on the Consul website:

Documentation

Full, comprehensive documentation is available on the Consul website: https://consul.io/docs

Contributing

Thank you for your interest in contributing! Please refer to CONTRIBUTING.md for guidance. For contributions specifically to the browser based UI, please refer to the UI's README.md for guidance.