Commit Graph

17950 Commits

Author SHA1 Message Date
Will Jordan 25f4c44268
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 aaf3c051f2
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 dc19b9f46f
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 272c878559
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 e8f7a1f2c1
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 07cd838e77
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 760df49741
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 11fb9f6e37
[docs] update doc headers (#13527)
* update helm docs to have correct headers
2022-06-22 15:56:25 -05:00
Kyle Havlovitz 6f31bf85ee
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 aeb943fb0d docs: Clarify section on partitioned node DNS lookups 2022-06-22 10:41:13 -07:00
trujillo-adam e8b1ac2060 applied feedback from review 2022-06-22 10:18:56 -07:00
Tu Nguyen 2041b5f0a9
Merge pull request #13550 from hashicorp/docs/peering-upstream-annotation
Docs/peering upstream annotation
2022-06-22 01:02:23 -07:00
David Yu ac14ef53b2 slight update to retrigger tests 2022-06-22 00:34:49 -07:00
Tu Nguyen a9efa089ad
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 a35d37c574
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 a6865de076
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 efc30989f8
Merge pull request #13501 from hashicorp/peering-helm-value
docs: add peering helm value
2022-06-22 00:03:33 -07:00
Jeff Apple 4895c5f8b9
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 3dde875368
Apply suggestions from code review 2022-06-21 22:23:26 -07:00
Jeff Apple 1d69e37272
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 e4f243c402 removed most of 'ECS service' information 2022-06-21 17:02:18 -07:00
trujillo-adam 88dc4de903
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 563c11baa5
Update website/content/docs/connect/cluster-peering/k8s.mdx 2022-06-21 16:34:45 -07:00
Tu Nguyen 5596f6fc4b
Apply suggestions from code review 2022-06-21 16:31:49 -07:00
David Yu 32eb9a70a9 adding fixes 2022-06-21 16:27:06 -07:00
Jeff-Apple 79645237da fix formatting on upgrade and release note pages. 2022-06-21 16:24:19 -07:00
Tu Nguyen 32ecc216f6
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 5df3af9778
Update website/content/docs/connect/cluster-peering/create-manage-peering.mdx 2022-06-21 16:15:34 -07:00
Tu Nguyen 60f6948b0a
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 bb53f55eeb
Add changelog for 1.13.0-alpha2 2022-06-21 15:07:13 -07:00
Evan Culver d829bdddef
Add changelog for 1.13.0-alpha1 2022-06-21 15:06:10 -07:00
Sarah Alsmiller 98a314803c merged 2022-06-21 16:49:49 -05:00
Sarah Alsmiller fa204fc0e0 removed references to the word breaking 2022-06-21 16:48:49 -05:00
Nathan Coleman 1709de307a
Update website/content/docs/api-gateway/upgrade-specific-versions.mdx 2022-06-21 17:47:45 -04:00
David Yu 4c0b4d026c
docs: move k8s compat matrix top level (#13534) 2022-06-21 14:43:10 -07:00
Sarah Alsmiller bbcad1a230 clarified wording 2022-06-21 16:33:11 -05:00
Sarah Alsmiller 83ef4a260e typo 2022-06-21 16:26:46 -05:00
Sarah Alsmiller 5d123e02ba render issue 2022-06-21 16:21:29 -05:00
Sarah Alsmiller acbbfac8c2 edit secret to certificateRef 2022-06-21 15:56:57 -05:00
trujillo-adam 393505a7be 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 be6fe11784 applied suggestions from review, udpates to TF secure configuration 2022-06-21 13:20:14 -07:00
Nathan Coleman f9d80e768a
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 2422c8bf37
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 c150662a44
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 1382cfacdc
Update website/content/docs/api-gateway/consul-api-gateway-install.mdx 2022-06-21 14:08:42 -04:00
Nathan Coleman 3135513c41
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 7d5b541e52 Use new release version in examples 2022-06-21 14:07:23 -04:00
Nathan Coleman 7ec371e898 Fix whitespace inconsistencies 2022-06-21 14:07:07 -04:00
Nathan Coleman d22986ad0d Update version of consul Helm chart 2022-06-21 14:06:53 -04:00
R.B. Boyer e7a7232a6b
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