feat: introduce per-sync configurations#448
feat: introduce per-sync configurations#448james-milligan merged 36 commits intoopen-feature:mainfrom james-milligan:sync-provider-2
Conversation
…lagd into sync-provider-2
Codecov Report
@@ Coverage Diff @@
## main open-feature/flagd#448 +/- ##
==========================================
- Coverage 68.47% 62.08% -6.40%
==========================================
Files 13 15 +2
Lines 1656 1891 +235
==========================================
+ Hits 1134 1174 +40
- Misses 461 654 +193
- Partials 61 63 +2
📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
Signed-off-by: James Milligan <james@omnant.co.uk>
…lagd into sync-provider-2
Co-authored-by: Skye Gill <gill.skye95@gmail.com> Signed-off-by: James Milligan <75740990+james-milligan@users.noreply.github.com>
Signed-off-by: James Milligan <james@omnant.co.uk>
beeme1mr
left a comment
There was a problem hiding this comment.
I wasn't able to get the examples working. I built flagd using your branch and confirmed the config example flags were in the expected location.
./flagd start --sync-providers=\[{\"uri\":\"config/samples/example_flags.json\"\,\"provider\":\"file\"}\]
______ __ ________ _______ ______
/_____/\ /_/\ /_______/\ /______/\ /_____/\
\::::_\/_\:\ \ \::: _ \ \\::::__\/__\:::_ \ \
\:\/___/\\:\ \ \::(_) \ \\:\ /____/\\:\ \ \ \
\:::._\/ \:\ \____\:: __ \ \\:\\_ _\/ \:\ \ \ \
\:\ \ \:\/___/\\:.\ \ \ \\:\_\ \ \ \:\/.:| |
\_\/ \_____\/ \__\/\__\/ \_____\/ \____/_/
2023-03-01T14:01:42.843-0500 info cmd/start.go:104 flagd version: dev (5ecdb19), built at: 2023-03-01T14:00:02Z {"component": "start"}
2023-03-01T14:01:42.843-0500 fatal cmd/start.go:144 no sync implementation set {"component": "start"}
github.com/open-feature/flagd/cmd.glob..func1
/home/beemer/code/openfeature/flagd/cmd/start.go:144
github.com/spf13/cobra.(*Command).execute
/home/beemer/go/pkg/mod/github.com/spf13/cobra@v1.6.1/command.go:920
github.com/spf13/cobra.(*Command).ExecuteC
/home/beemer/go/pkg/mod/github.com/spf13/cobra@v1.6.1/command.go:1044
github.com/spf13/cobra.(*Command).Execute
/home/beemer/go/pkg/mod/github.com/spf13/cobra@v1.6.1/command.go:968
github.com/open-feature/flagd/cmd.Execute
/home/beemer/code/openfeature/flagd/cmd/root.go:37
main.main
/home/beemer/code/openfeature/flagd/main.go:30
runtime.main
/home/beemer/sdk/go1.19.6/src/runtime/proc.go:250Signed-off-by: James Milligan <james@omnant.co.uk>
Signed-off-by: James Milligan <james@omnant.co.uk>
Signed-off-by: James Milligan <james@omnant.co.uk>
…lagd into sync-provider-2
Signed-off-by: James Milligan <james@omnant.co.uk>
Signed-off-by: James Milligan <james@omnant.co.uk>
Signed-off-by: James Milligan <james@omnant.co.uk>
|
Overal looks good 👍 Please check linting failures |
beeme1mr
left a comment
There was a problem hiding this comment.
It's probably unrelated to this change but I'm seeing two WRITE events in the logs every time a flag configuration changes using the file source. Could you please confirm that this change isn't the root cause. If it's not, please create a follow up issue to investigate.
Please can you provide more info - im not able to replicate this behaviour: I get repeated patterns of |
Signed-off-by: James Milligan <james@omnant.co.uk>
Signed-off-by: James Milligan <james@omnant.co.uk>
Signed-off-by: James Milligan <james@omnant.co.uk>
Signed-off-by: James Milligan <james@omnant.co.uk>
I think this is all old behavior, and not much can be done about it. It seems to be all about how particular editors and programs update files. Even in the most basic cases, programs actually remove/write the file. The only exception is if the file being watched is a symlink and that symlink is updated. That's the only thing that seems to be completely atomic. Even if I run something like: |
🤖 I have created a release *beep* *boop* --- ## [0.4.2](v0.4.1...v0.4.2) (2023-03-09) ### 🧹 Chore * Add targeted Flag to example config ([#467](#467)) ([6a039ce](6a039ce)) * **deps:** pin dependencies ([#473](#473)) ([679e860](679e860)) * **deps:** update google-github-actions/release-please-action digest to e0b9d18 ([#474](#474)) ([5b85b2a](5b85b2a)) * refactoring and improve coverage for K8s Sync ([#466](#466)) ([6dc441e](6dc441e)) ### 🐛 Bug Fixes * add registry login ([#476](#476)) ([99de755](99de755)) * **deps:** update module golang.org/x/crypto to v0.7.0 ([#472](#472)) ([f53f6c8](f53f6c8)) * **deps:** update module google.golang.org/protobuf to v1.29.0 ([#478](#478)) ([f9adc8e](f9adc8e)) ### ✨ New Features * grpc tls connectivity (grpcs) ([#477](#477)) ([228f430](228f430)) * introduce per-sync configurations ([#448](#448)) ([1d80039](1d80039)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
This PR
SyncProviderConfigobject and associated start flags to pass configuration to specific sync providersRelated Issues
#405
Notes
Follow-up Tasks
How to test