Commit Graph

17846 Commits

Author SHA1 Message Date
Will Jordan 34ecbc1d71
Add per-node max indexes (#12399)
Adds fine-grained node.[node] entries to the index table, allowing blocking queries to return fine-grained indexes that prevent them from returning immediately when unrelated nodes/services are updated.

Co-authored-by: kisunji <ckim@hashicorp.com>
2022-06-23 11:13:25 -04:00
Chris S. Kim ba89a7d9b0
Make memdb indexers generic (#13558)
We have many indexer functions in Consul which take interface{} and type assert before building the index. We can use generics to get rid of the initial plumbing and pass around functions with better defined signatures. This has two benefits: 1) Less verbosity; 2) Developers can parse the argument types to memdb schemas without having to introspect the function for the type assertion.
2022-06-23 11:07:19 -04:00
Matt Keeler 7a4d13b0b2
Port over the index 0 -> 1 code that lived in the old rpc setQueryMeta function. (#13561) 2022-06-23 09:34:47 -04:00
Michael Klein 5de75550d3
ui: feature-flagged peering mvp (#13425)
* add peers route

* add peers to nav

* use regular app ui patterns peers template

* use empty state in peers UI

* mock `v1/peerings` request

* implement custom adapter/serializer for `peers`-model

* index request for peerings on peers route

* update peers list to show as proper list

* Use tailwind for easier styling

* Unique ids in peerings response mock-api

* Add styling peerings list

* Allow creating empty tooltip

To make it easier to iterate over a set of items where some items
should not display a tooltip and others should.

* Add tooltip Peerings:Badge

* Add undefined peering state badge

* Remove imported/exported services count peering

This won't be included in the initial version of the API response

* Implement Peerings::Search

* Make it possible to filter peerings by name

* Install ember-keyboard

For idiomatic handling of key-presses.

* Clear peering search input when pressing `Escape`

* use peers.index instead of peers for peerings listing

* Allow to include peered services in services-query

* update services mock to add peerName

* add Consul::Peer component

To surface peering information on a resource

* add PeerName as attribute to service model

* surface peering information in service list

* Add tooltip to Consul::Peer

* Make services searchable by peer-name

* Allow passing optional query-params to href-to

* Add peer query-param to dc.services.show

* Pass peer as query-param services listing

* support option peer route-param

* set peer-name undefined in services serializer when empty

* update peer route-param when navigating to peered service

* request sercice with peer-name if need be

* make sure to reset peer route-param when leaving service.show

* componentize services.peer-info

* surface peer info services.show

* make sure to reset peer route-param in main nav

* fix services breadcrumb services.intentions

we need to reset peer route-param here to not break the app

* surface peer when querying for it on service api call

* query for peer info service-instance api calls

* surface peer info service-instance.show

* Camelize peer attributes to match rest of app

* Refactor peers.index to reflect camelized attributes for peer

* Remove unused query-params services.show

* make logo href reset peer route-param

* Cleanup optional peer param query service-instance

* Use replace decorator instead of serializer for empty peerName

* make sure to only send peer info when correct qp is passed

* Always send qp for querying peers services request

* rename with-imports to with-peers

* Use css for peer-icon

* Refactor bucket-list component to surface peer-info

* Remove Consul::Peer component

This info is now displayed via the bucket-list component

* Fix bucket-list component to surface service again

* Update bucket-list docs to reflect peer-info addition

* Remove tailwind related styles

* Remove consul-tailwind package

We won't be using tailwind for now

* Fix typo badge scss

* Add with-import handling mock-api nodes

* Add peerName to node attributes

* include peers when querying nodes

* reflect api updates node list mock

* Create consul::node::peer-info component

* Surface peer-info in nodes list

* Mock peer response for node request

* Make it possible to add peer-name to node request

* Update peer route-param when linking to node

* Reset peers route-param when leaving nodes.show

We need to reset the route-param to not introduce a bug - otherwise
subsequent node show request would request with the old peer query-param

* Add sourcePeer intentions api mock

* add SourcePeer attr to intentions model

* Surface peering info on intentions list

* Request peered intentions differently intentions.edit

* Handle peer info in intentions/exact mock

* Surface peering info intention view

* Add randomized peer data topology mock

* Surface peer info topology view

* fix service/peer-info styling

We aren't using tailwind anymore - we need to create a custom scss file

* Update peerings api mocks

* Update peerings::badge with updated styling

* cleanup intentions/exact mock

* Create watcher component to declaratively register polling

* Poll peers in background when on peers route

* use existing colors for peering-badge

* Add test for requesting service with `with-peers`-query

* add imported/exported count to peers model

* update mock-api to surface exported/imported count on peers

* Show exported/imported peers count on peers list

* Use translations for service import/export UI peers

* Make sure to ask for nodes with peers

* Add match-url step for easier url testing of service urls

* Add test for peer-name on peered services

* Add test for service navigation peered service

* Implement feature-flag handling

* Enable peering feature in test and development

* Redirect peers to services.index when feature-flag is disabled

* Only query for peers when feature is enabled

* Only show peers in nav when feature is enabled

* Componentize peering service count detail

* Handle non-state Peerings::Badge

* Use Peerings::ServiceCount in peerings list

* Only send peer query for peered service-instances.

* Add step to visit url directly

* add test for accessing peered service directly

* Remove unused service import peers.index

* Only query for peer when peer provided node-adapter

* fix tests
2022-06-23 14:16:26 +01:00
David Yu a0b94d9a3a
docs: add Core requirements to cluster peering k8s docs (#13569)
* docs: add Core requirements to cluster peering k8s docs

Co-authored-by: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com>
2022-06-22 19:12:08 -07:00
acpana 99c2e11328
oss: peering, http: get peer service intentions (#2098)
Signed-off-by: acpana <8968914+acpana@users.noreply.github.com>
2022-06-22 16:25:09 -07:00
trujillo-adam e00ebbb87d
Merge pull request #13492 from hashicorp/docs-ecs-mesh-gw
Docs for ECS Mesh Gateway
2022-06-22 15:55:31 -07:00
Kyle Schochenmaier f961c8610b
[docs] update doc headers (#13527)
* update helm docs to have correct headers
2022-06-22 15:56:25 -05:00
Kyle Havlovitz 6c85770ff8
Merge pull request #13526 from hashicorp/dns-parititon-docs
docs: Clarify section on partitioned node DNS lookups
2022-06-22 10:59:04 -07:00
Kyle Havlovitz 0cfe43f594 docs: Clarify section on partitioned node DNS lookups 2022-06-22 10:41:13 -07:00
trujillo-adam c100e4cdb1 applied feedback from review 2022-06-22 10:18:56 -07:00
Tu Nguyen 878d19c3d0
Merge pull request #13550 from hashicorp/docs/peering-upstream-annotation
Docs/peering upstream annotation
2022-06-22 01:02:23 -07:00
David Yu 768b440fcf slight update to retrigger tests 2022-06-22 00:34:49 -07:00
Tu Nguyen 9e313fe6e8
Merge pull request #13538 from hashicorp/eculver/1.13.0-changelog
Add changelog entries for 1.13.0-alpha1 and 1.13.0-alpha2
2022-06-22 00:10:34 -07:00
Tu Nguyen 81c1092531
Merge pull request #13433 from hashicorp/docs-cluster-peering-technical-preview
docs: Cluster Peering for OSS Technical Preview
2022-06-22 00:10:11 -07:00
Tu Nguyen 1a53738949
Apply suggestions from code review
Co-authored-by: Jeff Boruszak <104028618+boruszak@users.noreply.github.com>
2022-06-22 00:05:32 -07:00
Tu Nguyen 1e3f6f9c92
Merge pull request #13501 from hashicorp/peering-helm-value
docs: add peering helm value
2022-06-22 00:03:33 -07:00
Jeff Apple adfdfa7d83
Merge pull request #13427 from hashicorp/docs/capigw-0.3
docs: Update docs for release of Consul API Gateway v0.3.0
2022-06-22 00:00:42 -07:00
Jeff Apple 54a9cc5e0e
Apply suggestions from code review 2022-06-21 22:23:26 -07:00
Jeff Apple 1506b485f6
Apply suggestions from tech writer review
Co-authored-by: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com>
2022-06-21 22:14:34 -07:00
trujillo-adam e86cbce7c5 removed most of 'ECS service' information 2022-06-21 17:02:18 -07:00
trujillo-adam 9b55772552
Apply suggestions from code review
Co-authored-by: Chris Thain <32781396+cthain@users.noreply.github.com>
2022-06-21 16:53:10 -07:00
David Yu 5469fa6d3f
Update website/content/docs/connect/cluster-peering/k8s.mdx 2022-06-21 16:34:45 -07:00
Tu Nguyen 3c6a20f436
Apply suggestions from code review 2022-06-21 16:31:49 -07:00
David Yu 3124a9245b adding fixes 2022-06-21 16:27:06 -07:00
Jeff-Apple 24e3a3b3be fix formatting on upgrade and release note pages. 2022-06-21 16:24:19 -07:00
Tu Nguyen 63d5f90832
Update website/content/docs/connect/cluster-peering/k8s.mdx
Co-authored-by: David Yu <dyu@hashicorp.com>
2022-06-21 16:21:29 -07:00
Tu Nguyen 5936a61de4
Update website/content/docs/connect/cluster-peering/create-manage-peering.mdx 2022-06-21 16:15:34 -07:00
Tu Nguyen 58c7197e58
Apply suggestions from code review
Co-authored-by: David Yu <dyu@hashicorp.com>
Co-authored-by: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com>
2022-06-21 16:13:39 -07:00
Evan Culver 8c63f6d92f
Add changelog for 1.13.0-alpha2 2022-06-21 15:07:13 -07:00
Evan Culver 3df475b841
Add changelog for 1.13.0-alpha1 2022-06-21 15:06:10 -07:00
Sarah Alsmiller ee96f47d22 merged 2022-06-21 16:49:49 -05:00
Sarah Alsmiller 400efab3f4 removed references to the word breaking 2022-06-21 16:48:49 -05:00
Nathan Coleman 445d5d1c10
Update website/content/docs/api-gateway/upgrade-specific-versions.mdx 2022-06-21 17:47:45 -04:00
David Yu a45650f04b
docs: move k8s compat matrix top level (#13534) 2022-06-21 14:43:10 -07:00
Sarah Alsmiller 1e87f485ea clarified wording 2022-06-21 16:33:11 -05:00
Sarah Alsmiller 26e4db4cf5 typo 2022-06-21 16:26:46 -05:00
Sarah Alsmiller 8c757dd0d3 render issue 2022-06-21 16:21:29 -05:00
Sarah Alsmiller 1540b3c5a1 edit secret to certificateRef 2022-06-21 15:56:57 -05:00
trujillo-adam 42123bec1f Merge branch 'main' of github.com:hashicorp/consul into docs-ecs-mesh-gw
pulling merged changes into this branch
2022-06-21 13:20:22 -07:00
trujillo-adam 6aabc2cebe applied suggestions from review, udpates to TF secure configuration 2022-06-21 13:20:14 -07:00
Nathan Coleman 29c83c0eb4
Apply suggestions from code review
Co-authored-by: Tu Nguyen <im2nguyen@users.noreply.github.com>
2022-06-21 15:37:26 -04:00
David Yu 02e71fb2a4
docs: Consul K8s compat matrix update for 0.45.0+ to include Consul 1.11 compatibility (#13528) 2022-06-21 12:10:43 -07:00
Nathan Coleman 2eeabeba71
Apply suggestions from code review
Co-authored-by: Tu Nguyen <im2nguyen@users.noreply.github.com>
2022-06-21 14:59:40 -04:00
Nathan Coleman d5eed9dff3
Update website/content/docs/api-gateway/consul-api-gateway-install.mdx 2022-06-21 14:08:42 -04:00
Nathan Coleman be5ff8095f
Update website/content/docs/api-gateway/consul-api-gateway-install.mdx
Co-authored-by: Tu Nguyen <im2nguyen@users.noreply.github.com>
2022-06-21 14:08:18 -04:00
Nathan Coleman afb9949934 Use new release version in examples 2022-06-21 14:07:23 -04:00
Nathan Coleman ac205ff255 Fix whitespace inconsistencies 2022-06-21 14:07:07 -04:00
Nathan Coleman 2b5b6a1159 Update version of consul Helm chart 2022-06-21 14:06:53 -04:00
R.B. Boyer e8ea3d7c3b
state: peering ID assignment cannot happen inside of the state store (#13525)
Move peering ID assignment outisde of the FSM, so that the ID is written
to the raft log and the same ID is used by all voters, and after
restarts.
2022-06-21 13:04:08 -05:00