[Prior Submission Summer 2023](https://github.com/cncf/mentoring/tree/main/programs/lfx-mentorship/2023/02-Jun-Aug#konveyor)
### Konveyor
#### Extend use-case of detecting deprecated Kubernetes API usage
- Description: [Konveyor](https://www.konveyor.io/) provides a [unified experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) of tools to help organizations modernize their applications at scale to Kubernetes and cloud-native technologies. We are looking for help on extending a use-case of detecting usage of [deprecated and removed Kubernetes APIs](https://kubernetes.io/docs/reference/using-api/deprecation-guide/) in applications. This work will involve determining what API resources have been deprecated or removed in each version of Kubernetes and then building [Analyzer LSP Rules](https://github.com/konveyor/analyzer-lsp/blob/main/docs/rules.md) to be contributed to our [Rulesets repository](https://github.com/konveyor/rulesets), curation or development of sample applications in Golang, Java, and YAML to aid test scenarios, and documentation to help show a guided walkthrough of this capability. You can see the beginning of this use-case being addressed with this [sample rule]((https://github.com/konveyor/analyzer-lsp/blob/main/rule-example.yaml#L42-L45) ) in this [demo of analyzer-lsp](https://github.com/konveyor/analyzer-lsp/tree/main#quick-demo). The development environment is based on Golang and Kubernetes. A minikube instance will work well for local development on Linux or Mac systems.
- Expected Outcome:
- [Rules](https://github.com/konveyor/analyzer-lsp/blob/main/docs/rules.md) contributed to [konveyor/rulesets](https://github.com/konveyor/rulesets) to detect both deprecated and removed usage of Kubernetes APIs. Coverage for YAML, Golang, and Java source code, addition of this scenario into the project's automated test suite, and documentation of a guided scenario showing usage of these rules via a curated set of application source code examples.
- Recommended Skills:
- Go
- Basic understanding of interaction with Kubernetes via kubectl
- Basic software development skills (command line, git)
- Mentor(s):
- Emily McMullan (@eemcmullan, emcmulla@redhat.com)
- Jonah Sussman (@JonahSussman, jsussman@redhat.com)
- John Matthews (@jwmatthews, jmatthew@redhat.com)
- Upstream Issue:
- https://github.com/konveyor/operator/issues/251
- LFX URL: TBD