Commit Graph

17205 Commits

Author SHA1 Message Date
R.B. Boyer 642b75b60b
health: ensure /v1/health/service/:service endpoint returns the most recent results when a filter is used with streaming (#12640)
The primary bug here is in the streaming subsystem that makes the overall v1/health/service/:service request behave incorrectly when servicing a blocking request with a filter provided.

There is a secondary non-streaming bug being fixed here that is much less obvious related to when to update the `reply` variable in a `blockingQuery` evaluation. It is unlikely that it is triggerable in practical environments and I could not actually get the bug to manifest, but I fixed it anyway while investigating the original issue.

Simple reproduction (streaming):

1. Register a service with a tag.

        curl -sL --request PUT 'http://localhost:8500/v1/agent/service/register' \
            --header 'Content-Type: application/json' \
            --data-raw '{ "ID": "ID1", "Name": "test", "Tags":[ "a" ], "EnableTagOverride": true }'

2. Do an initial filter query that matches on the tag.

        curl -sLi --get 'http://localhost:8500/v1/health/service/test' --data-urlencode 'filter=a in Service.Tags'

3. Note you get one result. Use the `X-Consul-Index` header to establish
   a blocking query in another terminal, this should not return yet.

        curl -sLi --get 'http://localhost:8500/v1/health/service/test?index=$INDEX' --data-urlencode 'filter=a in Service.Tags'

4. Re-register that service with a different tag.

        curl -sL --request PUT 'http://localhost:8500/v1/agent/service/register' \
            --header 'Content-Type: application/json' \
            --data-raw '{ "ID": "ID1", "Name": "test", "Tags":[ "b" ], "EnableTagOverride": true }'

5. Your blocking query from (3) should return with a header
   `X-Consul-Query-Backend: streaming` and empty results if it works
   correctly `[]`.

Attempts to reproduce with non-streaming failed (where you add `&near=_agent` to the read queries and ensure `X-Consul-Query-Backend: blocking-query` shows up in the results).
2022-04-27 10:39:45 -05:00
R.B. Boyer c949de9f50
structs: ensure exported-services PeerName field can be addressed as peer_name (#12862) 2022-04-27 10:27:21 -05:00
Jeff Apple 238de66109
Merge pull request #12858 from hashicorp/japple-rel-notes-reorg
Reorganization of the Release Notes on Consul.io
2022-04-26 13:29:26 -07:00
Jeff Apple 59320d5f78
Apply suggestions from code review
Co-authored-by: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com>
2022-04-26 13:14:10 -07:00
Karl Cardenas 5c346e5c26
Merge pull request #12856 from hashicorp/docs-ent-modules
docs: updated connect docs and re-deploying missed changes
2022-04-26 13:13:19 -07:00
Karl Cardenas 20975a35f6
Apply suggestions from code review
Co-authored-by: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com>
2022-04-26 13:12:53 -07:00
Blake Covarrubias 035bd906f6 docs: Redirect /agent/config to /agent/config/config-files
Redirect /docs/agent/config to /docs/agent/config/config-files so that
external links to anchors for specific config parameters continue to
work.
2022-04-26 11:04:04 -07:00
Jeff Apple de90d4c7d3
Update website/content/docs/release-notes/consul/v1_9_x.mdx
Co-authored-by: Karl Cardenas <kcardenas@hashicorp.com>
2022-04-26 08:02:28 -07:00
Jeff Apple c12e4ada03
Update website/content/docs/release-notes/consul/v1_10_x.mdx
Co-authored-by: Karl Cardenas <kcardenas@hashicorp.com>
2022-04-26 08:02:22 -07:00
Jeff Apple 52956cc591
Update website/content/docs/release-notes/consul/v1_11_x.mdx
Co-authored-by: Karl Cardenas <kcardenas@hashicorp.com>
2022-04-26 08:02:12 -07:00
Jeff Apple f6efba4c83
Update website/content/docs/release-notes/consul-ecs/v0_2_x.mdx
Co-authored-by: Karl Cardenas <kcardenas@hashicorp.com>
2022-04-26 08:01:45 -07:00
Jeff Apple fc61a54e7e
Update website/content/docs/release-notes/consul-ecs/v0_3_x.mdx
Co-authored-by: Karl Cardenas <kcardenas@hashicorp.com>
2022-04-26 08:01:16 -07:00
Jeff Apple da0eb8a380
Update website/content/docs/release-notes/consul-ecs/v0_4_x.mdx
Co-authored-by: Karl Cardenas <kcardenas@hashicorp.com>
2022-04-26 08:01:07 -07:00
Jeff Apple 7f4e9c57cc
Merge branch 'main' into japple-rel-notes-reorg 2022-04-25 21:33:50 -07:00
Jeff-Apple a37615318d Docs: Release Notes reorg - adding ECS and NIA 2022-04-25 20:59:18 -07:00
claire labry d94859e384
Merge pull request #12857 from hashicorp/add-arm64-workflow
add notarize darwin arm64 workflow
2022-04-25 17:02:12 -04:00
Claire Labry 2aca99b2ea
add notarize darwin arm64 workflow 2022-04-25 16:48:34 -04:00
DanStough f5b5d0ccf9 changelog: snapshot-agent acl token fix for CLI and ENV 2022-04-25 16:46:55 -04:00
Luke Kysow 1062177ad8
Update annotations-and-labels.mdx (#12768) 2022-04-25 10:09:07 -07:00
Karl Cardenas 7ead9840b5
docs: updated connect docs and re-deploying missed changes 2022-04-25 10:04:06 -07:00
Dhia Ayachi e3eab78fb3
try to read license from env and mapped to container (#12854) 2022-04-25 11:58:29 -04:00
Dhia Ayachi fe22a002e1
Add versions compatibility tests between Consul (#12702)
* add a sample

* Consul cluster test

* add build dockerfile

* add tests to cover mixed versions tests

* use flag to pass docker image name

* remove default config and rely on flags to inject the right image to test

* add cluster abstraction

* fix imports and remove old files

* fix imports and remove old files

* fix dockerIgnore

* make a `Node interface` and encapsulate ConsulContainer

* fix a test bug where we only check the leader against a single node.

* add upgrade tests to CI

* fix yaml alignment

* fix alignment take 2

* fix flag naming

* fix image to build

* fix test run and go mod tidy

* add a debug command

* run without RYUK

* fix parallel run

* add skip reaper code

* make tempdir in local dir

* chmod the temp dir to 0777

* chmod the right dir name

* change executor to use machine instead of docker

* add docker layer caching

* remove setup docker

* add gotestsum

* install go version

* use variable for GO installed version

* add environment

* add environment in the right place

* do not disable RYUK in CI

* add service check to tests

* assertions outside routines

* add queryBackend to the api query meta.

* check if we are using the right backend  for those tests (streaming)

* change the tested endpoint to use one that have streaming.

* refactor to test multiple scenarios for streaming

* Fix dockerfile

Co-authored-by: FFMMM <FFMMM@users.noreply.github.com>

* rename Clients to clients

Co-authored-by: FFMMM <FFMMM@users.noreply.github.com>

* check if cluster have 0 node

* tidy code and add some doc strings

* use uuid instead of random string

* add doc strings to tests

* add queryBackend to the api query meta.

* add a changelog

* fix for api backend query

* add missing require

* fix q.QueryBackend

* Revert "fix q.QueryBackend"

This reverts commit cd0e5f7b1a1730e191673d624f8e89b591871c05.

* fix circle ci config

* tidy go mod after merging main

* rename package and fix test scenario

* update go download url

* address review comments

* rename flag in CI

* add readme to the upgrade tests

* fix golang download url

* fix golang arch downloaded

* fix AddNodes to handle an empty cluster case

* use `parseBool`

* rename circle job and add comment

* update testcontainer to 0.13

* fix circle ci config

* remove build docker file and use `make dev-docker` instead

* Apply suggestions from code review

Co-authored-by: Dan Upton <daniel@floppy.co>

* fix a typo

Co-authored-by: FFMMM <FFMMM@users.noreply.github.com>
Co-authored-by: Dan Upton <daniel@floppy.co>
2022-04-25 10:41:36 -04:00
Dhia Ayachi 9dc5200155
update raft to v1.3.8 (#12844)
* update raft to v1.3.7

* add changelog

* fix compilation error

* fix HeartbeatTimeout

* fix ElectionTimeout to reload only if value is valid

* fix default values for `ElectionTimeout` and `HeartbeatTimeout`

* fix test defaults

* bump raft to v1.3.8
2022-04-25 10:19:26 -04:00
Jeff Apple 154b2fb033
Update v0_4_x.mdx 2022-04-22 14:38:33 -07:00
FFMMM a0dcd53659
add a general pull request template (#12827)
Co-authored-by: Dan Upton <daniel@floppy.co>
2022-04-22 12:41:44 -07:00
Jeff-Apple d4a0fcc108 Adding Rel Notes for ECS and moved CTS one. 2022-04-22 12:15:09 -07:00
Jeff Boruszak e7f0a6f6d6
Merge pull request #12847 from hashicorp/boruszak-patch-1
Remove references to modules in consul/website/content/docs/enterprise
2022-04-22 13:22:30 -05:00
Jeff Boruszak e78e6758b7
Update to sentinel.mdx
Removed references to modules in callout box at the top of the page.

Edit requested by Neena Pemmaraju via Slack on 4/21/22
2022-04-22 13:20:08 -05:00
Jeff Boruszak ed40bdeec5
Update to redundancy.mdx
Removed references to modules in callout box at the top of the page.

Edit requested by Neena Pemmaraju via Slack on 4/21/22
2022-04-22 13:19:34 -05:00
Jeff Boruszak b0f67f46c6
Update to read-scale.mdx
Removed references to modules in callout box at the top of the page.

Edit requested by Neena Pemmaraju via Slack on 4/21/22
2022-04-22 13:19:06 -05:00
Jeff Boruszak 4d0491e6f1
Update to network-segments.mdx
Removed references to modules in callout box at the top of the page.

Edit requested by Neena Pemmaraju via Slack on 4/21/22
2022-04-22 13:18:35 -05:00
Jeff Boruszak c8c52a910e
Update to namespaces.mdx
Removed references to modules in callout box at the top of the page.

Edit requested by Neena Pemmaraju via Slack on 4/21/22
2022-04-22 13:17:47 -05:00
Jeff Boruszak 33258f44a3
Update to federation.mdx
Removed references to modules in callout box at the top of the page.

Edit requested by Neena Pemmaraju via Slack on 4/21/22
2022-04-22 13:17:05 -05:00
Jeff Boruszak 1d6c53f68e
Update to audit-logging.mdx
Removed references to modules in callout box at the top of the page.

Edit requested by Neena Pemmaraju via Slack on 4/21/22
2022-04-22 13:15:28 -05:00
claire labry 13f93bda63
Merge pull request #12846 from hashicorp/update-metadata-action
change action to pull v1 instead of main
2022-04-22 13:18:26 -04:00
Claire Labry bb4998216c
add changelog entry 2022-04-22 13:13:11 -04:00
Jeff Boruszak 1b19f5b42e
Update to admin-partitions.mdx
Removed references to modules in callout box at the top of the page. 

Edit requested by Neena Pemmaraju via Slack on 4/21/22
2022-04-22 12:01:48 -05:00
Claire Labry 94e911a3b4
change action to pull v1 instead of main 2022-04-22 12:26:12 -04:00
Andrew Stucki 1f3dfa6d40
Add doc for proposed annotation (#12716) 2022-04-22 09:13:18 -07:00
Jeff-Apple b4c6081170 Add template for consul-k8s release notes. 2022-04-21 16:49:01 -07:00
R.B. Boyer 809344a6f5
peering: initial sync (#12842)
- Add endpoints related to peering: read, list, generate token, initiate peering
- Update node/service/check table indexing to account for peers
- Foundational changes for pushing service updates to a peer
- Plumb peer name through Health.ServiceNodes path

see: ENT-1765, ENT-1280, ENT-1283, ENT-1283, ENT-1756, ENT-1739, ENT-1750, ENT-1679,
     ENT-1709, ENT-1704, ENT-1690, ENT-1689, ENT-1702, ENT-1701, ENT-1683, ENT-1663,
     ENT-1650, ENT-1678, ENT-1628, ENT-1658, ENT-1640, ENT-1637, ENT-1597, ENT-1634,
     ENT-1613, ENT-1616, ENT-1617, ENT-1591, ENT-1588, ENT-1596, ENT-1572, ENT-1555

Co-authored-by: R.B. Boyer <rb@hashicorp.com>
Co-authored-by: freddygv <freddy@hashicorp.com>
Co-authored-by: Chris S. Kim <ckim@hashicorp.com>
Co-authored-by: Evan Culver <eculver@hashicorp.com>
Co-authored-by: Nitya Dhanushkodi <nitya@hashicorp.com>
2022-04-21 17:34:40 -05:00
Will Jordan 45ffdc360e
Add timeout to Client RPC calls (#11500)
Adds a timeout (deadline) to client RPC calls, so that streams will no longer hang indefinitely in unstable network conditions.

Co-authored-by: kisunji <ckim@hashicorp.com>
2022-04-21 16:21:35 -04:00
David Yu 2970c619d2
docs: small spelling typo on consul k8s compat matrix (#12840) 2022-04-21 10:51:34 -07:00
Kyle Schochenmaier 16e8dea375
docs: update acl token generation with uuidgen (#12821)
* update acl token generation with uuidgen
2022-04-21 10:17:24 -07:00
David Yu 0ac00c75e4
docs: Update Consul K8s compatibility matrix (#12829)
* docs: Update Consul K8s compatibility matrix

Co-authored-by: Karl Cardenas <kcardenas@hashicorp.com>
2022-04-21 10:10:56 -07:00
John Murret 2b8f10feec
Adding documentation for WAN Federation with Vault as a secrets backend (#12802)
* Adding documentation for WAN Federation with Vault as a secrets backend

* Reformatting systems integration

* fixing spacing and typos

* Fixing link to createFederactionSecret helm chart value

* More revisions in the Systems Integration section

* Systems Integration - fixing brok shell-session and adding paragraph.

* More formatting in data integration section

* Formatting consul config sections

* Fixing verbiage near helm installations.

* Changing refence to dc1 and dc2 to be primary datacenter(dc1) and secondary dataceneter (dc2)

* Apply suggestions from code review

Co-authored-by: Karl Cardenas <kcardenas@hashicorp.com>
Co-authored-by: David Yu <dyu@hashicorp.com>

* fixing missing s in Kubernetes

* Providing reason in Usage section as to why someone would look at the Systems and Data Integration sections of the vault docs

* fixing highlighted linenumbers that got through off by deleting the comment line at the beginning.

* fixing indentation within order lists

* Add a validation step to the next steps section.

* making the data integration sections for dc1 and dc2 symmetrical

* PR Feedback

* Adding images

* Remove confusing references to Systems Integration and Data Integration pages.

* Updating images to be centered

* Removed confusing reference to federation secret.

Co-authored-by: Karl Cardenas <kcardenas@hashicorp.com>
Co-authored-by: David Yu <dyu@hashicorp.com>
2022-04-21 11:07:04 -06:00
Matt Keeler f49adfaaf0
Implement the ServerDiscovery.WatchServers gRPC endpoint (#12819)
* Implement the ServerDiscovery.WatchServers gRPC endpoint
* Fix the ConnectCA.Sign gRPC endpoints metadata forwarding.
* Unify public gRPC endpoints around the public.TraceID function for request_id logging
2022-04-21 12:56:18 -04:00
Karl Cardenas 793eceacb7
Merge pull request #12839 from hashicorp/ca-page-fix
docs: fixed broken url
2022-04-21 09:43:18 -07:00
Karl Cardenas 3d2b04684d
docs: fixed broken url 2022-04-21 09:37:36 -07:00
Blake Covarrubias 2beea7eb7c
acl: Clarify node/service identities must be lowercase (#12807)
Modify ACL error message for invalid node/service identities names to
clearly state only lowercase alphanumeric characters are supported.
2022-04-21 09:29:16 -07:00