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

kubectl-like get command for mgrctl #245

Open
cbosdo opened this issue Feb 17, 2025 · 4 comments
Open

kubectl-like get command for mgrctl #245

cbosdo opened this issue Feb 17, 2025 · 4 comments
Labels
Medium Sized Project Medium sized project is 175 hours Uyuni

Comments

@cbosdo
Copy link

cbosdo commented Feb 17, 2025

Project Title:

kubectl-like get command for mgrctl

Description:

Uyuni is an open source systems management solution that can be used to manage various Linux distributions using a powerful web UI and API.

mgrctl is a tool meant to offer API access to the Uyuni server. At the moment it provides a limited set of features and only covers raw API calls.

The goal of this task is to implement a get command that works like the one from kubectl. So users could query the API using a command like: mgrctl get <object_type> [options].

  • The first object types to implement could be system, group as those are central concepts of Uyuni.
  • The options would provide search by name, filtering using some of the object properties and output format options.

For instance mgrctl get system -f cpu=x86_64 -o yaml would return a YAML file with the systems that have an x86_64 CPU.

Note, this idea already exists as an uyuni-tools issue: uyuni-project/uyuni-tools#238

Deliverable:

  • The code as a PR in uyuni-tools repository.
  • Documentation for the new command at least in the mgrctl get --help.

Mentor:

Skills:

  • Good Golang knowledge.

Skill Level: Medium

Project Size: Medium Sized Project (125 hours)

Beware this could easily turn into a rabbit hole: properly define the limits of the project with the mentor. Better have only a few objects covered correctly than a lot with many missing pieces.

Get started:

@cbosdo
Copy link
Author

cbosdo commented Feb 17, 2025

@ddemaio can you add the Uyuni label on this card please?

@ddemaio ddemaio added Uyuni Medium Sized Project Medium sized project is 175 hours labels Feb 17, 2025
@AkashKumar7902
Copy link

Hey,
I am interested in working on this idea. I have prior experience with golang working in Linux Foundation Mentorship Program and through my internship at a gsoc project. I would look on the getting started section and familiarize myself with the project.

@cbosdo
Copy link
Author

cbosdo commented Feb 20, 2025

Hey, I am interested in working on this idea. I have prior experience with golang working in Linux Foundation Mentorship Program and through my internship at a gsoc project. I would look on the getting started section and familiarize myself with the project.

Nice! Welcome aboard! Feel free to join the devel channel on gitter to ask questions if needed.

@cbosdo
Copy link
Author

cbosdo commented Feb 21, 2025

BTW Start with installing Uyuni in a VM. This page can help you getting started. The crucial part is the network setup as it would lead to various strange problems later. Make sure to read https://github.com/uyuni-project/uyuni/wiki/Libvirt-DNS-and-DHCP-without-Avahi to help with this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Medium Sized Project Medium sized project is 175 hours Uyuni
Projects
None yet
Development

No branches or pull requests

3 participants