-
Notifications
You must be signed in to change notification settings - Fork 1.4k
migrated all code to envoyproxy/envoy and keep e2e only here #6748
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
base: master
Are you sure you want to change the base?
Conversation
Signed-off-by: Mikhail Krinkin <[email protected]>
Signed-off-by: Mikhail Krinkin <[email protected]>
Signed-off-by: Mikhail Krinkin <[email protected]>
Signed-off-by: Mikhail Krinkin <[email protected]>
Signed-off-by: Mikhail Krinkin <[email protected]>
Signed-off-by: Mikhail Krinkin <[email protected]>
Signed-off-by: Mikhail Krinkin <[email protected]>
Signed-off-by: wbpcode <[email protected]>
|
🤔 🐛 You appear to be fixing a bug in Go code, yet your PR doesn't include updates to any test files. Did you forget to add a test? Courtesy of your friendly test nag. |
|
😊 Welcome @wbpcode! This is either your first contribution to the Istio proxy repo, or it's been You can learn more about the Istio working groups, Code of Conduct, and contribution guidelines Thanks for contributing! Courtesy of your friendly welcome wagon. |
|
Hi @wbpcode. Thanks for your PR. I'm waiting for a github.com member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
|
Waiting #6726 to be merged first because we need to ensure the CI works fine before this cleanup. |
|
cc @kyessenov cc @zirain |
|
/ok-to-test |
Signed-off-by: wbpcode <[email protected]>
Signed-off-by: wbpcode <[email protected]>
Signed-off-by: wbpcode <[email protected]>
|
Thanks for the PR. This is a pretty big change that I hadn’t been made aware of. We definitely will need some more discussion here |
Sure. This change comes from envoyproxy/envoy#29681 to free us/distributors out from constant merge and CI problems. And at envoyproxy/envoy#42785, we have migrated all proxy extensions to envoy repo, without change any logic or API. (We updated Envoy's tool to make sure it could accept istio's API style.) This PR try to build proxy with code in the Envoy repo and remove the code that have been migrated. Ideally, there should no any aware-able change for users. |
|
/retest |
| load("@llvm_toolchain//:toolchains.bzl", "llvm_register_toolchains") | ||
|
|
||
| envoy_toolchains() | ||
| llvm_register_toolchains() |
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.
is this making some build changes?
CC @krinkinmu
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'm probably overlooking something, but calling envoy_toolchains() + llvm_register_toolchains() should be enough here as far as I understand.
FWIW, I did the same in my PR migrating to hermetic toolchain, but I think it was just an artifact from my experiments that I didn't cleanup.
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.
SG, I think it would be good to add some other people to contrib/istio owners in Envoy (@keithmattix ?). I don't think the location of the code matters that much.
Sure. I will update the code owner list. |
howardjohn
left a comment
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.
What is the benefit then?
We really need a design doc showing:
- Goals
- How the end to end build/release process will work
- How private builds will work
- Discuss user facing impacts, if any
@kyessenov share a lot at envoyproxy/envoy#29681 The most benifit I could image is that we won't be broken when refactor happen on upstream envoy.
Same as today.
Same as today, target the private repo.
I think @wbpcode keep the api same as before as he can. |
Reduce the churn of coordinating changes between upstream and C++ code here. There's no stable ABI, so it keeps breaking all the time.
Same. This repo can be just a list of extensions used by Istio in the manifest, with no C++ code.
Same? Istio maintains an Envoy fork already.
None? This only impacts development. |
PSWG does not use/maintain an Envoy fork. We migrated to using the provided patches and define those in bazel for CVE fixes. IE: https://github.com/istio/proxy/blob/release-1.28.1-patch/WORKSPACE |
OK, I wasn't aware of it. IMO that is still fine, that continues to work as before. You could use a fork and patch extension manifest instead to make it go the other way, but there's not much a difference. |
|
@kyessenov Correct me if I'm wrong, but wouldn't moving to envoy repo mean that we'd now need an Envoy senior maintainer to approve every PR to the istio filters? |
No. Senior maintainer review is required for the core code only, not (most of) extension code. Contrib extensions only need extension owners for approval, so the bar is even lower, see https://github.com/envoyproxy/envoy/blob/main/EXTENSION_POLICY.md#contrib-extensions |
|
Thanks so much @kyessenov, @zirain. From data plane's perspective, this PR should change nothing except the location of source code. but make us easier to maintain the code. Will wait the #6726 to be merged first, then I will rebase the PR to resolve conflict. |
|
Need a rebase here and need to discuss again with stakeholders. We talked about it in last week's community call, and I think the biggest questions were around the implications of having istio code owned by those who aren't istio maintainers plus having different degrees of testing in different places (istio/proxy, envoy, and istio/istio) |
I think we already add all the guys from E&T WG into codeowners in envoy group.
I would say new feature and new test cases will be added in envoy repo, if there're some addtional e2e test case, it could be happen here. |
…v-remove-all-source-code
Signed-off-by: wbpcode <[email protected]>
|
/retest |
|
Please let's bring this up one last time in a community meeting before moving forward |
don't worry, there's a DNM, it won't be merged. |
Signed-off-by: wbpcode <[email protected]>
|
PR needs rebase. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
|
FYI, we discussed this in the latest WG meeting; I captured the high level points here: https://docs.google.com/document/d/1wsa06GGiq1LEGwhkiPP0FKIZJqdAiue-VeBonWAzAyk/edit?pli=1&tab=t.0#heading=h.gp28tf83n5tk |
cc @keithmattix Although I think even we never move the e2e, this still make sense to simplify our and distributors' life. But sure I completely agree it would make more sense to avoid all these e2e here. But I think we may needn't to do this in one punch? Rather than the migration, my plan is keep the e2e here, and at next 1-2 release cycle, we will add more unit/integration tests in the Envoy, to ensure all these filters in the Envoy could have similar test quality with other core filters (96.6% coverage). By this way, this whole process will be more smoothy and we can have more confidence to the change? |
But this doesn't really identify the problem, at least for me. What problem are we solving? From what John said, the original intent on this change was a step toward the effort to migrate to using a straight Envoy binary, but that is no longer the plan. |
This feels like the problem statement; can we get more details on how this makes things simpler? And are there other benefits? |
|
cc @dhawton Hello, @dhawton, But maybe there is too much context and I should put related information at the PR description. The are mainly two points I want to address:
There are only 3-4 extensions in this repo and migrating them to upstream's repo have no any effect to our users or our CI/release procedures because extensions's position doesn't affect the compiled result. This change could make the cooperation a little more smoothy and have no side effect. So, from my perspective, it's more like a |
What this PR does / why we need it:
Now, all source code will be hold by the envoyproxy/envoy.
The are mainly two points I want to address by this change:
There are only 3-4 extensions in this repo and migrating them to upstream's repo have no any effect to our users or our CI/release procedures because extensions's position doesn't affect the compiled result.
Which issue this PR fixes (optional, in
fixes #<issue number>(, fixes #<issue_number>, ...)format, will close that issue when PR gets merged): fixes #Special notes for your reviewer: