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

Refactor and rewrite Python scripts in releng/ in Go #29390

Open
xmudrii opened this issue Apr 28, 2023 · 15 comments
Open

Refactor and rewrite Python scripts in releng/ in Go #29390

xmudrii opened this issue Apr 28, 2023 · 15 comments
Assignees
Labels
kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. sig/release Categorizes an issue or PR as relevant to SIG Release.

Comments

@xmudrii
Copy link
Member

xmudrii commented Apr 28, 2023

What should be cleaned up or changed:

We have a bunch of Python scripts in releng/ directory. These scripts are used to handle creating release branch jobs. These scripts also:

  • fetch values such as latest Kubernetes and Go version
  • handle updating auto-generated files
  • handle removing jobs for EOL release branches
  • wrap config-rotator and config-forker written in Go

These Python scripts have several problems:

  • We need to run them in a Docker container to ensure correct Python version and environment. There are some issues and challenges doing that on Mac M1 and M2
  • Kubernetes is a Go project and many of us are more experienced in Go. Having these scripts in Go would make it easier to run and test those scripts, but also refactor and debug when needed

That said, I think we should consider rewriting these scripts in Go. Additionally, we should consider wrapping everything (config-rotator, config-forker, and existing Python scripts) in a single binary.

Provide any links for context:

See #29387 for more details

/priority important-longterm
/sig release
cc @kubernetes/release-engineering

@xmudrii xmudrii added the kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. label Apr 28, 2023
@k8s-ci-robot k8s-ci-robot added priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. sig/release Categorizes an issue or PR as relevant to SIG Release. labels Apr 28, 2023
@jeremyrickard
Copy link
Contributor

I think this is a good idea.

@cpanato
Copy link
Member

cpanato commented May 2, 2023

+1

@wasup-yash
Copy link

wasup-yash commented May 15, 2023

hey, can I work on this? and can you provide the main references to what exactly is needed to get this issue resolved as I am not much experienced in go but willing to learn more about this and contribute to solving this issue.

@wasup-yash
Copy link

hey, can I work on this? and can you provide the main references to what exactly is needed to get this issue resolved as I am not much experienced in go but willing to learn more about this and contribute to solving this issue.

@xmudrii any updates on this how can i get started with this ?

@xmudrii
Copy link
Member Author

xmudrii commented Jun 6, 2023

@wasup-yash Sorry for delay. I'm on PTO for the next week or two, but I can follow up on this once I'm back.

@wasup-yash
Copy link

@wasup-yash Sorry for delay. I'm on PTO for the next week or two, but I can follow up on this once I'm back.

no worries xD

@sbdtu5498
Copy link

/assign

@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 Jan 22, 2024
@xmudrii
Copy link
Member Author

xmudrii commented Jan 22, 2024

/remove-lifecycle stale

@k8s-ci-robot k8s-ci-robot removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Jan 22, 2024
@dims
Copy link
Member

dims commented Apr 2, 2024

/milestone v1.31

@k8s-ci-robot
Copy link
Contributor

@dims: The provided milestone is not valid for this repository. Milestones in this repository: [someday, v1.24, v1.25]

Use /milestone clear to clear the milestone.

In response to this:

/milestone v1.31

Instructions 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/test-infra repository.

@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 Jul 1, 2024
@cpanato
Copy link
Member

cpanato commented Jul 1, 2024

/remove-lifecycle stale
/assign

@k8s-ci-robot k8s-ci-robot removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Jul 1, 2024
@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 Sep 29, 2024
@xmudrii
Copy link
Member Author

xmudrii commented Sep 30, 2024

/remove-lifecycle stale

Update: some of the Python scripts might be removed as we consider replacing them with already existing fork-per-release mechanism.

@k8s-ci-robot k8s-ci-robot removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Sep 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. sig/release Categorizes an issue or PR as relevant to SIG Release.
Projects
None yet
Development

No branches or pull requests

8 participants