Marek Siarkowicz
9aaa6d8e7c
Merge pull request #13708 from serathius/common
...
Create common framework for e2e and integration tests and migrate TestKVPut test
2022-02-24 11:21:49 +01:00
ahrtr
2f36e0c62b
Change discovery url to endpoints
...
Currently the discovery url is just one endpoint. But actually it
should be the same as the etcdctl, which means that it should be
a list of endpoints. When one endpoint is down, the clientv3 can
fail over to the next endpoint automatically.
2022-02-24 09:11:41 +08:00
Marek Siarkowicz
744dd077cd
tests: Create common framework for e2e and integration tests and migrate TestKVPut test
2022-02-23 16:47:02 +01:00
Marek Siarkowicz
6af760131e
Merge pull request #13687 from serathius/etcdctl
...
Add downgrade commands
2022-02-22 17:12:23 +01:00
ahrtr
5d3847577f
always print the raft_term in decimal even flag --hex is provided
2022-02-22 09:00:24 +08:00
Marek Siarkowicz
b5e224db7d
Merge pull request #13635 from ahrtr/v3_discovery
...
support v3 discovery to bootstrap a new etcd cluster
2022-02-21 21:50:40 +01:00
Piotr Tabor
f80f477073
Merge pull request #13644 from Juneezee/refactor/t.TempDir
...
*: use `T.TempDir` to create temporary test directory
2022-02-21 19:52:37 +01:00
Marek Siarkowicz
2a7766c8cd
tests: Switch downgradetests to use etcdctl
2022-02-21 17:58:19 +01:00
Marek Siarkowicz
2db4d35554
tests: Move etcdctl to e2e framework
2022-02-21 17:58:19 +01:00
ahrtr
ebc86d12c0
support v3 discovery to bootstrap a new etcd cluster
2022-02-21 23:22:49 +08:00
Marek Siarkowicz
a0f26ff4ea
server: Snapshot after cluster version downgrade
2022-02-21 15:48:00 +01:00
Sahdev Zala
2923960ecd
Merge pull request #13693 from chaochn47/fix_coverage
...
Fix coverage failures
2022-02-14 15:03:56 -05:00
Marek Siarkowicz
310de9bd8b
Merge pull request #13612 from serathius/write-only
...
server: Make --v2-deprecation=write-only the default and remove not-y…
2022-02-14 17:09:42 +01:00
Marek Siarkowicz
3de5e221a8
tests: Fix cluster version and downgrade request timeout
...
Returning nil means that raft.Trigger was not called, causing member to
wait infinitly for response for response on raft request.
2022-02-14 14:19:06 +01:00
sitchenchao
b683aa1254
fix ctl_v3_kv_no_quorum_test.go and coverage failures
2022-02-12 18:00:02 -08:00
Marek Siarkowicz
20c89df5e5
Merge pull request #13525 from ahrtr/do_not_wait_ReadyNotify_infinitely
...
Etcd server shouldn't wait for the ready notification infinitely on startup
2022-02-08 14:50:09 +01:00
Marek Siarkowicz
a1f3c2c7cc
server: Make --v2-deprecation=write-only the default and remove not-yet option
2022-02-02 13:55:52 +01:00
ahrtr
1713dc67b5
etcd server shouldn't wait for the ready notification infinitely on startup
2022-01-27 16:19:20 +08:00
Marek Siarkowicz
692b3c4cd7
server: Remove most of V2 API
2022-01-25 15:24:13 +01:00
Eng Zer Jun
e9edc5432c
*: use T.TempDir to create temporary test directory
...
The directory created by `T.TempDir()` and is automatically removed when
the test and all its subtests complete.
Reference: https://pkg.go.dev/testing#T.TempDir
Signed-off-by: Eng Zer Jun <engzerjun@gmail.com >
2022-01-25 00:00:46 +08:00
Marek Siarkowicz
a53074542b
test: Run v2 discovery tests on previous version binary
2022-01-20 14:10:09 +01:00
Piotr Tabor
19cb0a4252
Merge pull request #13519 from ahrtr/enhance_make_mirror_command
...
Add a new flag "--rev" to make-mirror command to support incremental mirror
2022-01-15 17:02:12 +01:00
Marek Siarkowicz
ee5ef42c5c
server: --enable-v2 and --enable-v2v3 is decomissioned
2022-01-14 13:19:30 +01:00
Yap Sok Ann
17fd2e7282
Disable auth gracefully without impacting existing watchers
...
This attempts to fix a special case of the problem described in #12385 ,
where trying to do `clientv3.Watch` with an expired token would result
in `ErrGRPCPermissionDenied`, due to the failing authorization check in
`isWatchPermitted`. Furthermore, the client can't auto recover, since
`shouldRefreshToken` rightly returns false for the permission denied
error.
In this case, we would like to have a runbook to dynamically disable
auth, without causing any disruption. Doing so would immediately expire
all existing tokens, which would then cause the behavior described
above. This means existing watchers would still work for a period of
time after disabling auth, until they have to reconnect, e.g. due to a
rolling restart of server nodes.
This commit adds a client-side fix and a server-side fix, either of
which is sufficient to get the added test case to pass. Note that it is
an e2e test case instead of an integration one, as the reconnect only
happens if the server node is stopped via SIGINT or SIGTERM.
A generic fix for the problem described in #12385 would be better, as
that shall also fix this special case. However, the fix would likely be
a lot more involved, as some untangling of authn/authz is required.
2021-12-31 14:39:46 +07:00
ahrtr
661e0a91ef
added a new flag --rev to make-mirror command to support incremental mirror
2021-12-22 16:59:44 +08:00
Piotr Tabor
6c2f5dc78a
Merge pull request #13405 from serathius/downgrade-b
...
Implement single node downgrades
2021-10-29 23:22:10 +02:00
Marek Siarkowicz
6c2be0822d
tests: Add e2e tests for downgrades
2021-10-29 12:47:19 +02:00
Marek Siarkowicz
431adc5878
server: Implement storage downgrades
...
By validating if WAL doesn't include any incompatible entries we can
implement storage downgrades.
2021-10-29 12:47:19 +02:00
Eng Zer Jun
2a151c8982
*: move from io/ioutil to io and os packages
...
The io/ioutil package has been deprecated as of Go 1.16, see
https://golang.org/doc/go1.16#ioutil . This commit replaces the existing
io/ioutil functions with their new definitions in io and os packages.
Signed-off-by: Eng Zer Jun <engzerjun@gmail.com >
2021-10-28 00:05:28 +08:00
Marek Siarkowicz
dcd0d3fc9c
tests: Extract e2e cluster setup to separate package
2021-10-19 13:06:40 +02:00
Marek Siarkowicz
4bcdee5c65
tests: Extract flag init from main_test.go
2021-10-08 22:01:11 +02:00
Marek Siarkowicz
c929a917b6
client: Use first endpoint as http2 authority header
2021-09-29 14:41:35 +02:00
Marek Siarkowicz
ec419f8613
tests: Add grpc authority e2e tests
2021-09-29 14:41:33 +02:00
Arda Güçlü
65686efa4a
Decouple prefixArgs from os.Env dependency
...
prefixArgs uses os.Setenv in e2e tests instead envMap.
This creates overwrites in some test cases and have an impact
on test quality and isolation between tests.
This PR uses ctlcontext envMap in each tests with high priority
and merges os environment variables with low priority.
2021-09-13 12:28:56 +03:00
Marek Siarkowicz
0d15ff57e6
server: Implement schema migrations
2021-09-10 10:16:48 +02:00
Manuel Rüger
c9b4c866ce
Cleanup remaining TODOs for/past 3.5 release
2021-08-06 13:29:25 +02:00
Marek Siarkowicz
b4b50f7852
etcdutl: Implement migrate --force command
...
Co-authored-by: nic-chen <33000667+nic-chen@users.noreply.github.com >
Co-authored-by: Heisenberg <yuzhiquanlong@gmail.com >
2021-08-04 17:58:18 +02:00
Marek Siarkowicz
44b8ae145b
etcdserver: Move datadir and wal to storage package
2021-08-03 12:47:37 +02:00
Sahdev Zala
0d0b6f06fa
Merge pull request #13142 from avorima/etcdutl-completion
...
etcdutl: add command to generate shell completion
2021-06-30 10:33:22 -04:00
Marek Siarkowicz
e2740b4afa
server,etcdutl: Preserve etcd version in backend allowing etcdutl to read it from snapshot
2021-06-25 14:06:56 +02:00
Piotr Tabor
8f9829cd2d
Merge pull request #13114 from lilic/fix-api-version
...
Bump etcd version to 3.5.0 and 3.6.0-pre
2021-06-24 14:26:17 +02:00
Mario Valderrama
3c6ace066a
etcdutl: add command to generate shell completion
...
Follow up of #13133 .
2021-06-24 12:22:40 +02:00
Mario Valderrama
96b8049d81
Write test for for bash completion
2021-06-23 23:16:47 +02:00
Lili Cosic
4e060dc127
tests/e2e/ctl_v3_snapshot_test.go: Adjust version to 3.6.0
2021-06-22 12:26:24 +02:00
Marek Siarkowicz
e1b1d93548
*: Snapshot returns local etcd version
...
Co-authored-by: Lili Cosic <cosiclili@gmail.com >
2021-06-14 16:36:50 +02:00
J. David Lowe
8552d8ec20
etcdserver: don't activate alarm w/missing AlarmType
...
Narrowly prevent etcd from crashing when given a bad ACTIVATE payload, e.g.:
$ curl -d "{\"action\":\"ACTIVATE\"}" ${ETCD}/v3/maintenance/alarm
curl: (52) Empty reply from server
2021-06-04 12:18:56 -07:00
Piotr Tabor
f15e0b8237
integration.BeforeTest can be run without leak-detection.
2021-05-27 20:55:11 +02:00
赵延
64b01a7a8d
Enhance the root permission, when root role exist, it always return rootPerm. ( #13006 )
...
etcdctl role grant-permission root readwrite foo.
see etcdctl role get root output.
Before:
Role root
KV Read:
foo
KV Write:
foo
After:
Role root
KV Read:
[, <open ended>
KV Write:
[, <open ended>
2021-05-24 14:58:00 -07:00
horizonzy
6ab56fc237
enhance GetRole output when role is 'root' and the response perm is nil.
...
Before output:
Role root
KV Read:
KV Write:
After output:
Role root
KV Read:
[, <open ended>
KV Write:
[, <open ended>
2021-05-19 17:35:13 +08:00
Piotr Tabor
d99d0df5a5
Adding etcdutl test coverage.
2021-05-17 11:54:03 +02:00