Skip to content
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

Port the Gateway reconciler to Rust #176

Open
aryan9600 opened this issue Jan 25, 2024 · 7 comments · May be fixed by #184
Open

Port the Gateway reconciler to Rust #176

aryan9600 opened this issue Jan 25, 2024 · 7 comments · May be fixed by #184

Comments

@aryan9600
Copy link
Member

With #150, we decided to rewrite the controlplane in Rust. The best way to go about it would be to do it in phases since there exist multiple reconcilers. Beginning with the Gateway reconciler makes the most sense since the other two reconcilers are similar and thus could be tackled at the same time. The main goal here is to make sure we do a safe port and don't break any existing functionality, barring the odd low hanging fruit.

@shaneutt
Copy link
Member

Something we didn't discuss in our recent zoom: we should eventually be writing all the integration tests in Rust as well. I think for the initial stages, adding a hook into the current integration test suite to spin up the Rust based control-plane and then run the Go tests will be a good way to validate things, and then eventually once all functionality is accounted for we can pivot and rewrite the tests (which I honestly think might be a bit of an undertaking unto itself).

@aryan9600 aryan9600 linked a pull request Feb 11, 2024 that will close this issue
3 tasks
@k8s-triage-robot
Copy link

The Kubernetes project currently lacks enough contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue as fresh with /remove-lifecycle stale
  • Close this issue with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Apr 24, 2024
@shaneutt
Copy link
Member

This is active

/lifecycle frozen

@k8s-ci-robot k8s-ci-robot added lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Apr 24, 2024
aryan9600 added a commit to aryan9600/blixt that referenced this issue May 23, 2024
Introduce a new folder `controlplane` meant for the new controlplane
that's to be written in Rust (kubernetes-sigs#176).
Add a new reconciler for Gateway objects that behaves pretty similarly
to the reconciler written in Golang.

Signed-off-by: Sanskar Jaiswal <jaiswalsanskar078@gmail.com>
aryan9600 added a commit to aryan9600/blixt that referenced this issue May 23, 2024
Introduce a new folder `controlplane` meant for the new controlplane
that's to be written in Rust (kubernetes-sigs#176).
Add a new reconciler for Gateway objects that behaves pretty similarly
to the reconciler written in Golang.

Signed-off-by: Sanskar Jaiswal <jaiswalsanskar078@gmail.com>
aryan9600 added a commit to aryan9600/blixt that referenced this issue May 23, 2024
Introduce a new folder `controlplane` meant for the new controlplane
that's to be written in Rust (kubernetes-sigs#176).
Add a new reconciler for Gateway objects that behaves pretty similarly
to the reconciler written in Golang.

Signed-off-by: Sanskar Jaiswal <jaiswalsanskar078@gmail.com>
aryan9600 added a commit to aryan9600/blixt that referenced this issue May 23, 2024
Introduce a new folder `controlplane` meant for the new controlplane
that's to be written in Rust (kubernetes-sigs#176).
Add a new reconciler for Gateway objects that behaves pretty similarly
to the reconciler written in Golang.

Signed-off-by: Sanskar Jaiswal <jaiswalsanskar078@gmail.com>
@aryan9600
Copy link
Member Author

/remove-lifecycle frozen

@k8s-ci-robot k8s-ci-robot removed the lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. label May 23, 2024
@EandrewJones
Copy link
Contributor

@aryan9600 On our last call, you mentioned helping migrate the controlplane over to rust. Do you still want help, and, if so, is it this PR?

@shaneutt
Copy link
Member

@aryan9600 On our last call, you mentioned helping migrate the controlplane over to rust. Do you still want help, and, if so, is it this PR?

#184 is at the foundation of the whole effort, but it's not the entire picture. We probably need to take a few cycles to re-organize our issues so we can break things up into smaller chunks people can grab to build on top of this foundation. Would recommend reviewing the PR if you feel so inclined: if nothing else to see what that foundation looks like if you're interested in working on the next chunks.

@EandrewJones
Copy link
Contributor

EandrewJones commented May 31, 2024

We probably need to take a few cycles to re-organize our issues so we can break things up into smaller chunks people can grab to build on top of this foundation.

Makes sense to me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: In Progress
Development

Successfully merging a pull request may close this issue.

5 participants