-
Notifications
You must be signed in to change notification settings - Fork 369
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add remote configuration client #2689
Conversation
260d792
to
b7e9ebd
Compare
Pending:
|
339af0f
to
414a626
Compare
e6e6425
to
6d0e56b
Compare
|
414a626
to
5371edf
Compare
6d0e56b
to
175e9bd
Compare
Rebased using |
92ee072
to
059817d
Compare
Barebones implementation, some questions remain to be solved.
Remote configuration spec says that an empty Hash in a response means NOOP, not "unset everything".
175e9bd
to
c83d50c
Compare
Rebased using |
c83d50c
to
c25301b
Compare
c25301b
to
db9c31e
Compare
db9c31e
to
5220533
Compare
Codecov Report
@@ Coverage Diff @@
## master #2689 +/- ##
========================================
Coverage 98.03% 98.03%
========================================
Files 1197 1200 +3
Lines 65714 65915 +201
Branches 2926 2934 +8
========================================
+ Hits 64420 64622 +202
+ Misses 1294 1293 -1
... and 5 files with indirect coverage changes 📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
|
||
private | ||
|
||
def payload: () -> ::Hash[Symbol, untyped] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I guess we could improve this untyped
given that we expect only a specific set of types here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sounds good. We can tackle that on a follow up PR
What does this PR do?
Implement the remote configuration client class.
Motivation
Remote configuration
Additional Notes
Barebones implementation, some questions remain to be solved:
There is an issue where the backend appears not to report any
client_configs
nortarget_files
, andtargets
may have targets but they may not correspond and/or include to the active client id.In such gases, calling
client.sync
multiple times ends up getting the configuration. At this stage it is unknown whether this is expected API endpoint behaviour (e.g a delay in creating entries for a new client id, a "data lag" inside the agent...)How to test the change?