Commit graph

17106 commits

Author SHA1 Message Date
Daniel Nephin 2082bdc286 ca: make sure the test fails without the fix
Also change the path used for the secondary so that both primary and secondary do not overwrite each other.
2022-03-02 18:22:49 -05:00
R.B. Boyer 679cea7171
raft: upgrade to v1.3.6 (#12496)
Add additional protections on the Consul side to prevent NonVoters from bootstrapping raft.

This should un-flake TestServer_Expect_NonVoters
2022-03-02 17:00:02 -06:00
R.B. Boyer 5036b5e414
update changelog (#12495) 2022-03-02 16:44:13 -06:00
R.B. Boyer 7b569127f6
build: ensure 'make linux' puts the binary in the expected location (#12494)
Fixes regression from #10833

Fixes dev-docker and test-docker targets
2022-03-02 14:18:26 -06:00
Eddie Rowe 06e2cb4821
Merge pull request #12483 from hashicorp/consul-er-deprecate-proxy-tutorial
Remove deprecated built-in proxy tutorial reference
2022-03-02 10:58:18 -06:00
trujillo-adam 883ea2f0ce added some ACL example use cases to policy section 2022-03-01 16:48:35 -08:00
Eddie Rowe 56c2f00676 Remove deprecated built-in proxy tutorial reference 2022-03-01 14:35:28 -06:00
trujillo-adam d27895f068 renamed acl-overview to index, fixed formatting, reworded node/service ID intros 2022-03-01 10:03:22 -08:00
Daniel Nephin 849d86e7f5
Merge pull request #12467 from hashicorp/dnephin/ci-vault-test-safer
ca: require that tests that use Vault are named correctly
2022-03-01 12:54:02 -05:00
trujillo-adam 5578217d5c
Apply suggestions from code review
Co-authored-by: Blake Covarrubias <blake@covarrubi.as>
2022-03-01 09:25:21 -08:00
trujillo-adam b588620385 fixing merge conflicts 2022-03-01 09:08:20 -08:00
R.B. Boyer 033e0ed13f
test: parallelize more of TestLeader_ReapOrLeftMember_IgnoreSelf (#12468)
before:

    $ go test ./agent/consul -run TestLeader_ReapOrLeftMember_IgnoreSelf
    ok  	github.com/hashicorp/consul/agent/consul	21.147s

after:

    $ go test ./agent/consul -run TestLeader_ReapOrLeftMember_IgnoreSelf
    ok  	github.com/hashicorp/consul/agent/consul	5.402s
2022-03-01 10:30:06 -06:00
Jorge Marey aba9e724a8 Fix vault test with suggested changes 2022-03-01 10:20:00 +01:00
Jorge Marey 8b1b264b6f Add test case to verify #12298 2022-03-01 09:25:52 +01:00
Jorge Marey 820235235c Add changelog file 2022-03-01 09:25:52 +01:00
Jorge Marey 2ca00df0d8 Avoid raft change when no config is provided on CAmanager
- This avoids a change to the raft store when no roots or config
are provided to persistNewRootAndConfig
2022-03-01 09:25:52 +01:00
Evan Culver c60e04e086
Add changelog entries from latest releases (#12473) 2022-02-28 17:49:37 -08:00
Evan Culver 3ca2d48bc8
Update latest version on website to 1.11.4 (#12469) 2022-02-28 16:53:28 -08:00
Jared Kirschner 4a413c870e
Merge pull request #12455 from hashicorp/docs/enterprise-license-faq-improvements
Enterprise license FAQ improvements
2022-02-28 17:30:07 -05:00
Daniel Nephin dd565aa5e4 ca: fix a test
This test does not use Vault, so does not need ca.SkipIfVaultNotPresent
2022-02-28 16:26:18 -05:00
Daniel Nephin bb7f2f15b3 ca: require that tests that use Vault are named correctly
Previously we were using two different criteria to decide where to run a
test.  The main `go-test` job would skip Vault tests based on the
presence of the `vault` binary, but the `test-connect-ca-providers` job
would run tests based on the name.

This led to a scenario where a test may never run in CI.

To fix this problem I added a name check to the function we use to skip
the test. This should ensure that any test that requires vault is named
correctly to be run as part of the `test-connect-ca-providers` job.

At the same time I relaxed the regex we use. I verified this runs the
same tests using `go test --list Vault`.  I made this change because a
bunch of tests in `agent/connect/ca` used `Vault` in the name, without
the underscores. Instead of changing a bunch of test names, this seemed
easier.

With this approach, the worst case is that we run a few extra tests in
the `test-connect-ca-providers` job, which doesn't seem like a problem.
2022-02-28 16:13:53 -05:00
Jared Kirschner 5a084083a3 docs: clarify trial license FAQ
Also use consistent language throughout to refer to the non-production license
(just "trial" license, not both "trial" and "evaluation").
2022-02-28 13:06:26 -08:00
Kyle Schochenmaier 03a4605218
update helm docs for release 0.41.1 (#12465)
* update helm docs for release 0.41.1

* apply escape on <ip>:<port>

Co-authored-by: David Yu <dyu@hashicorp.com>
2022-02-28 13:03:50 -08:00
R.B. Boyer 3804677570
server: suppress spurious blocking query returns where multiple config entries are involved (#12362)
Starting from and extending the mechanism introduced in #12110 we can specially handle the 3 main special Consul RPC endpoints that react to many config entries in a single blocking query in Connect:

- `DiscoveryChain.Get`
- `ConfigEntry.ResolveServiceConfig`
- `Intentions.Match`

All of these will internally watch for many config entries, and at least one of those will likely be not found in any given query. Because these are blends of multiple reads the exact solution from #12110 isn't perfectly aligned, but we can tweak the approach slightly and regain the utility of that mechanism.

### No Config Entries Found

In this case, despite looking for many config entries none may be found at all. Unlike #12110 in this scenario we do not return an empty reply to the caller, but instead synthesize a struct from default values to return. This can be handled nearly identically to #12110 with the first 1-2 replies being non-empty payloads followed by the standard spurious wakeup suppression mechanism from #12110.

### No Change Since Last Wakeup

Once a blocking query loop on the server has completed and slept at least once, there is a further optimization we can make here to detect if any of the config entries that were present at specific versions for the prior execution of the loop are identical for the loop we just woke up for. In that scenario we can return a slightly different internal sentinel error and basically externally handle it similar to #12110.

This would mean that even if 20 discovery chain read RPC handling goroutines wakeup due to the creation of an unrelated config entry, the only ones that will terminate and reply with a blob of data are those that genuinely have new data to report.

### Extra Endpoints

Since this pattern is pretty reusable, other key config-entry-adjacent endpoints used by `agent/proxycfg` also were updated:

- `ConfigEntry.List`
- `Internal.IntentionUpstreams` (tproxy)
2022-02-25 15:46:34 -06:00
Chris S. Kim aea00f10ae
Merge pull request #12442 from danieleva/12422-keyring
Allows keyring operations on client agents
2022-02-25 16:28:56 -05:00
Chris S. Kim ef929629cf
Merge pull request #12449 from hashicorp/eculver/envoy-upgrades
connect: Update supported Envoy versions to include 1.19.3 and 1.18.6
2022-02-25 14:25:45 -05:00
Jared Kirschner 7fc1bf6ec1 docs: add FAQ for obtaining copy of license
For existing enterprise customers who need access to the license.
2022-02-25 09:52:07 -08:00
Jared Kirschner d6dcd478a4 docs: add license renewal FAQ 2022-02-25 09:43:38 -08:00
Jared Kirschner d21bde2a9d docs: clarify license expiration behavior
Also corrects the grace period between expiration and termination (10 years,
not 24 hours).
2022-02-25 09:31:51 -08:00
claire labry b3438c5d60
Merge pull request #12378 from hashicorp/add-post-publish-events
Adding post-publish events to ci.hcl.
2022-02-25 12:11:32 -05:00
Daniele Vazzola 2cb1017e13 Adds changelog 2022-02-25 15:43:06 +00:00
chinmaym07 e8f010a235 Added changelog
Signed-off-by: chinmaym07 <b418020@iiit-bh.ac.in>
2022-02-25 19:29:00 +05:30
John Cowen 3055c8918f
ui: PagedCollection component (#12404)
* ui: PagedCollection component

* ui: Use PagedCollection (#12436)

* ui: Integrate PagedCollection into DisclosureMenu

* Integrate PageCollection into DC, Nspace and Partition menus
2022-02-25 10:01:08 +00:00
John Cowen 9eddc48429
ui: Add new component blueprint (#12421)
This adds a new component blueprint for all our components. We've been
using README.mdx files for quite some time to document our components
for other engineers. This adds a default file to help new engineers get
started writing useful documentation. These README.mdx file are also
very useful for building out components in isolation from scratch and
and some point will be used to run automated component testing.
2022-02-25 09:47:20 +00:00
Evan Culver 49a6109d96
Add changelog entry 2022-02-24 17:05:55 -08:00
Evan Culver 7889071385
connect: Update supported Envoy versions to include 1.19.3 and 1.18.6 2022-02-24 16:59:33 -08:00
Evan Culver 9f4d9f3f74
connect: Upgrade Envoy 1.20 to 1.20.2 (#12443) 2022-02-24 16:19:39 -08:00
R.B. Boyer 4b0f657b31
fix flaky test panic (#12446) 2022-02-24 17:35:46 -06:00
R.B. Boyer a97d20cf63
catalog: compare node names case insensitively in more places (#12444)
Many places in consul already treated node names case insensitively.
The state store indexes already do it, but there are a few places that
did a direct byte comparison which have now been corrected.

One place of particular consideration is ensureCheckIfNodeMatches
which is executed during snapshot restore (among other places). If a
node check used a slightly different casing than the casing of the node
during register then the snapshot restore here would deterministically
fail. This has been fixed.

Primary approach:

    git grep -i "node.*[!=]=.*node" -- ':!*_test.go' ':!docs'
    git grep -i '\[[^]]*member[^]]*\]
    git grep -i '\[[^]]*\(member\|name\|node\)[^]]*\]' -- ':!*_test.go' ':!website' ':!ui' ':!agent/proxycfg/testing.go:' ':!*.md'
2022-02-24 16:54:47 -06:00
Jeff-Apple 333789355c
Merge pull request #12416 from hashicorp/api-gateway-ga-docs
website: update API Gateway docs for v0.1.0 GA release
2022-02-24 12:36:34 -08:00
Michele Degges 544585370b
Remove setup-qemu step from Docker build job (#12387) 2022-02-24 12:35:47 -08:00
Jeff-Apple 7f2d35a15b
Update website/content/docs/api-gateway/index.mdx
Co-authored-by: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com>
2022-02-24 12:27:17 -08:00
Jeff-Apple 605b0ebc73
Update website/content/docs/api-gateway/api-gateway-usage.mdx
Co-authored-by: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com>
2022-02-24 12:23:51 -08:00
Jeff-Apple bf13b0504f
Update website/content/docs/api-gateway/api-gateway-usage.mdx
Co-authored-by: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com>
2022-02-24 12:21:04 -08:00
Jeff-Apple 46a9ee9f47
Update website/content/docs/api-gateway/index.mdx
Co-authored-by: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com>
2022-02-24 12:20:32 -08:00
Jeff-Apple 815599b06c
Update website/content/docs/api-gateway/api-gateway-usage.mdx
Co-authored-by: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com>
2022-02-24 12:16:47 -08:00
Jeff-Apple 0095046c69
Update website/content/docs/api-gateway/api-gateway-usage.mdx
Co-authored-by: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com>
2022-02-24 12:14:06 -08:00
mrspanishviking 836a4a6d2e
Merge pull request #12441 from hashicorp/retry-docs
docs: added example for service-router retry
2022-02-24 11:39:21 -07:00
Jeff-Apple 6920f8ac7b Merge branch 'api-gateway-ga-docs' of https://github.com/hashicorp/consul into api-gateway-ga-docs 2022-02-24 10:00:43 -08:00
Jeff-Apple e8788c528d Updated helm chart version number and a minor edit 2022-02-24 09:56:55 -08:00