Skip to content
This repository has been archived by the owner on May 14, 2019. It is now read-only.

Migrate to etcd clientv3 #52

Closed
colhom opened this issue Mar 13, 2017 · 5 comments
Closed

Migrate to etcd clientv3 #52

colhom opened this issue Mar 13, 2017 · 5 comments

Comments

@colhom
Copy link

colhom commented Mar 13, 2017

\cc @xiang90 @heyitsanthony

@colhom
Copy link
Author

colhom commented Mar 13, 2017

For context, etcd-operator does not support automated back-up for applications using v2 API. We wish to operate discovery.etcd.io with etcd-operator, and this path was mentioned by @xiang90 as being reasonable.

@brianredbeard
Copy link
Member

Is this going to be acceptable with how discovery works? IIRC discovery is basically just an HTTP proxy/router. In the past (in discussing the move to GRPC) this was deemed as both unnecessary for etcd v3 as well as impossible with how the service currently works.

@heyitsanthony
Copy link

Another migration path we've discussed is loosely emulating v2 over v3.

@gyuho gyuho mentioned this issue Jun 28, 2017
9 tasks
hexfusion pushed a commit that referenced this issue Sep 8, 2018
Preliminary work towards #52.

Goal is having good test coverage on current code base, so that we can safely migrate to etcd v3. This does not change any client-facing interface (etcd v2). Highlighted changes are:

- [X] Update vendors with latest etcd release, sync other upstream dependencies
- [X] Remove test files in `vendor`
- [X] Use Go 1.8.3 (required for integration tests with latest etcd)
  - Go 1.6<= won't build, Go 1.7<= will build but fail in CI
- [X] Change Go version to 1.8.3 in `Dockerfile`
- [X] Share states between handlers with context, **for integration testing** (avoids global vars)
- [X] Remove `pkg/lockstring`, instead have mutex inside shared states between handlers
- [X] Add handler integration tests with embedded etcd (available since v3.1)
- [X] Add e2e tests with actual etcd cluster and discovery.etcd.io builds
- [X] Set up CIs
philips pushed a commit to philips/etcd that referenced this issue Apr 10, 2019
Fixes a bug where the isRoot missed the "." case.

Add a bunch of tests on fundamental operation of Create/Set/Delete.

Context: I want to use this package to run the discovery service against
the v3 storage backend. The limited functionality already implemented
should be sufficient to do this.
coreos/discovery.etcd.io#52
philips pushed a commit to philips/etcd that referenced this issue Apr 10, 2019
Add a bunch of tests on fundamental operation of Create/Set/Delete.

Context: I want to use this package to run the discovery service against
the v3 storage backend. The limited functionality already implemented
should be sufficient to do this.
coreos/discovery.etcd.io#52
@philips
Copy link
Contributor

philips commented Apr 11, 2019

Moved to etcd-io/etcd#10627

@philips
Copy link
Contributor

philips commented May 13, 2019

done

@philips philips closed this as completed May 13, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants