
Konveyor
Open Source Migration Tools for Kubernetes
- 14
- Projects
- 2
- Years active
- 2
- In 2024 T3
- Go
- git)
- Basic software development skills (command line
- Kubernetes
- +16
Projects
142024
5 projectsTerm 3 · Sep-Nov · 2 projects
Enhancing Kai with Data Querying for Fine-Tuning and Potential InstructLab Integration
LFX Mentorship · Listed in the official cohort
Kai is a tool designed to leverage AI for application modernization by analyzing code, identifying issues, and suggesting fixes. We aim to enhance Kai by developing a robust data querying mechanism to facilitate fine-tuning processes. This enhancement will lay the groundwork for potential future integration with InstructLab, an open-source AI project enabling community contributions to Large Language Models (LLMs) by adding new skills or knowledge. The primary focus will be on creating mechanisms to query and utilize data effectively, with a stretch goal of integrating static analysis tools and implementing an agent-based workflow. This project will significantly enhance Kai’s backend, making it more scalable and capable of providing deeper code insights while also contributing to the enrichment of LLMs through InstructLab. It will offer a rich learning experience for participating students, covering backend development, workflow management, and contributing to open-source AI projects.
- Python
- Podman / Docker
- Basic Software Development skills (command line
- git)
Intelli-j IDE plugin integration of analyzer-lsp for real time updates with Konveyor AI
LFX Mentorship · Listed in the official cohort
Konveyor provides a unified experience of tools to help organizations modernize their applications at scale, transitioning them to Kubernetes and cloud-native technologies. Recently the Konveyor community began the development of a Generative AI approach for application modernization called Konveyor-AI. Konveyor AI accelerates application migration by discovering migration incidents in the source code and providing LLM-generated fixes in a diff view presentation. When proposed changes are accepted, it provides real-time updates on the number of incidents. The presentation side for this work is currently serviced via an IDE extension for VSCode. We aim to expand Konveyor AI by developing an IntelliJ plugin. Our first step involves integrating the static code analysis tool, analyzer-lsp, into the IntelliJ plugin. We plan to create a common module for interaction with analyzer-lsp, which can be used in multiple IDE plugins, starting with VSCode and IntelliJ. Currently, the IntelliJ IDE uses the Konveyor CLI tool, Kantra, for analysis and transformation, but we need to replace Kantra with analyzer-lsp to optimize real-time updates.
- Typescript
- Java
- Basic software development skills (command line
- git)
Term 1 · Mar-May · 3 projects
Move2Kube: Advanced Resources support and enhance other Move2Kube components
LFX Mentorship · Listed in the official cohort
Move2Kube is a command-line tool for automating creation of Infrastructure as code (IaC) artifacts. It has built-in support for creating IaC artifacts for replatforming to Kubernetes/OpenShift. Currently we have support for resources such as ArgoCD, Tekton, etc. There is still a gap to be covered in the support Move2Kube provides. Example - enhance support for external transformers (GRPC, file/folder permissions, etc.).
- Go
- Kubernetes
- ArgoCD
- Tekton
Move2Kube: Exploratory approaches to artifact manipulation.
LFX Mentorship · Listed in the official cohort
Move2Kube is a command-line tool for automating creation of Infrastructure as code (IaC) artifacts. It has built-in support for creating IaC artifacts for replatforming to Kubernetes/OpenShift. As part of replatforming, we want to allow artifact manipulation at various levels to handle complex cases of replatforming flows. Example - while re-platforming from Netflix OSS spring boot feign client + eureka setup to Kubernetes (kubedns, kube-dns, services, ingress etc.) could need some artifact changes at different levels (code, architecture etc.).
- Go
- program analysis
Move2Kube: Simplify plugin architecture of m2k
LFX Mentorship · Listed in the official cohort
Move2Kube is a command-line tool for automating creation of Infrastructure as code (IaC) artifacts. The tool has a powerful plugin based transformer architecture where developers can write their own custom transformer plugins to fulfil their re-platforming needs. However, concepts like path mappings etc could be simplified for better adoption. Example - writing a Move2Kube custom transformer needs developers to understand various concepts such as path mappings etc, can we reduce this learning overhead by simplifying the Move2Kube architecture?
- Go
- Kubernetes
2023
9 projectsTerm 3 · Sep-Nov · 4 projects
Extend use-case of detecting deprecated Kubernetes API usage
LFX Mentorship · Listed in the official cohort
Konveyor provides a 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 in applications. This work will involve determining what API resources have been deprecated or removed in each version of Kubernetes and then building Analyzer Rules to be contributed to our Rulesets repository, 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 a sample rule in this demo of analyzer-lsp. The development environment is based on Golang and Kubernetes. A minikube instance will work well for local development on Linux or Mac systems.
- Go
- Basic understanding of interaction with Kubernetes via kubectl
- Basic software development skills (command line
- git)
Move2Kube: Advanced Resources support - ArgoCD, Tekton, Stateful Set, etc.
LFX Mentorship · Listed in the official cohort
Move2Kube is a command-line tool for automating creation of Infrastructure as code (IaC) artifacts. It has inbuilt support for creating IaC artifacts for replatforming to Kubernetes/OpenShift. Currently we have rudimentary support for resources such as ArgoCD, Tekton, etc. We need to enhance this to make it useful. Example:
- Go
- Kubernetes
- ArgoCD
- Tekton
Move2Kube: Compile Move2Kube to WASM/WASI and run it in the browser
LFX Mentorship · Listed in the official cohort
Move2Kube is a command-line tool for automating creation of Infrastructure as code (IaC) artifacts. It has inbuilt support for creating IaC artifacts for replatforming to Kubernetes/OpenShift. We want to compile targetting WASM/WASI and run the resulting WASM module in the browser. This will help up showcase Move2Kube for demos and allow users to quickly try out Move2Kube without having to install it or any of its dependencies.
- Go
- WASM
Move2Kube: WASM Transformers
LFX Mentorship · Listed in the official cohort
Move2Kube is a command-line tool for automating creation of Infrastructure as code (IaC) artifacts. It has inbuilt support for creating IaC artifacts for replatforming to Kubernetes/OpenShift. Move2Kube has a very plugin friendly architecture, users can write custom logic in the form of "Transformers" that Move2Kube can integrate seamlessly into its transformation pipeline. So far we have support for both Starlark and container image based transformers. We would like to support writing transformers as WASM modules that Move2Kube can run. WASM provides extensive sandboxing for security, it allows writing transformers in different language stacks like Rust, C/C++, etc. other than Golang, and WASM is just as lightweight and fast as Starlark.
- Go
- WASM
Term 2 · Jun-Aug · 1 project
Add Integration test suite and components testing to Konveyor
LFX Mentorship · Listed in the official cohort
The Konveyor project helps modernize applications by providing open source tools to rehost, replatform, and refactor applications to Kubernetes and cloud-native technologies.We’re looking for help on building integration tests on application level as well as work on missing parts of Konveyor component tests.There is open testing work to better applications analysis, tasks coverage, more detailed Hub API tests and Hub integration with addons. All of those use the Hub API that is covered with basic tests already. Based on existing Hub API tests, it is expected to continue work to cover more Konveyor functionality with tests. The development environment is based on golang and Kubernetes. A minikube instance will work well for local development on Linux or Mac systems.
- Go
- Basic software development skills (command line
- git)
Term 1 · Mar-May · 4 projects
Move2Kube: Allow customizations be added as remote git repo path
LFX Mentorship · Listed in the official cohort
Move2Kube is a command-line tool for automating creation of Infrastructure as code (IaC) artifacts. It has inbuilt support for creating IaC artifacts for replatforming to Kubernetes/OpenShift. Currently, in the CLI we can use the -c flag to point to the folder containing customizations and in UI we could upload a zip file containing the customizatoins. It would be better to consume customizations when specified as a git repo path. The use case can also be extended to take source code input taken directory from a remote git repository.
- Go
Move2Kube: Consume Move2Kube through a plugin on Eclipse
LFX Mentorship · Listed in the official cohort
Move2Kube is a command-line tool for automating creation of Infrastructure as code (IaC) artifacts. It has inbuilt support for creating IaC artifacts for replatforming to Kubernetes/OpenShift. Users currently have to use move2kube command line tool or UI to access move2kube and use it in their replatforming workflows. Allow Move2Kube to be accessible from Eclipse as a plugin. It can start with simple functionality like right clicking on a docker-compose file, and generating all Kubernetes artifacts. An eclipse plugin for Move2kube will promote fast integration in replatforming workflows.
- Eclipse
- Java
- Golang.
Move2Kube: Consume Move2Kube through a plugin on VSCode
LFX Mentorship · Listed in the official cohort
Move2Kube is a command-line tool for automating creation of Infrastructure as code (IaC) artifacts. It has inbuilt support for creating IaC artifacts for replatforming to Kubernetes/OpenShift. Users currently have to use move2kube command line tool or UI to access move2kube. Allow Move2Kube to be accessible from VSCode as a plugin. It can start with simple functionality like right clicking on a docker-compose file, and generating all Kubernetes artifacts. A VSCode plugin for Move2kube will promote fast integration in replatforming workflows.
- VSCode plugins
- TypeScript
- Golang.
Move2Kube: Implement a test suite
LFX Mentorship · Listed in the official cohort
Move2Kube is a command-line tool for automating creation of Infrastructure as code (IaC) artifacts. It has inbuilt support for creating IaC artifacts for replatforming to Kubernetes/OpenShift. The project is actively developed with new features and bug fixes being added and it is being actively used by many users. There is a need for a concrete test suite to test various components of Move2Kube and integrate it to the existing CI/CD pipeline.
- Go
- testing package
- jest and/ react testing library.
Mentors
12
Jonah Sussman@JonahSussman
Fabian von Feilitzsch@fabianvf
Hiteshwari Patel@hhpatel14
Savitha Raghunathan@sraghunathan
Akash Nayak@akash
Harikrishnan Balagopal@HarikrishnanBalagopal
Mehant Kammakomati@kmehant
Emily McMullan@eemcmullan
John Matthews@jwmatthews
Akash Nayak@Akash-Nayak
Marek Aufart@aufi
David Zager@djzager