canonical / canonical/cloud-init

[enhancement]: Add support for Mageia Linux

Open
#4,396 2 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Python
Stars
3.8k
Forks
1.1k
Avg merge
3d 8h
Merged PRs (30d)
22

Description

# Enhancement

Hello,

Please add support for Mageia Linux, similar as Openmandriva (Mandriva forks). In Mageia 9 cloud-init version is 20.x
I have rebuilded package thanks to the old .spec file, but networks-scripts are not generated.
Mageia.py contains:
````
from cloudinit.distros import rhel

from cloudinit import log as logging

LOG = logging.getLogger(__name__)

class Distro(rhel.Distro):
def _dist_uses_systemd(self):
return True
def package_command(self, command, args=None, pkgs=None):
if pkgs is None:
pkgs = []
if command == "install":
cmd = ['urpmi', "--allow-force", "--force"]
elif command == "update-sources":
cmd = ["urpmi.update", "-a"]

if args and isinstance(args, str):
cmd.append(args)
elif args and isinstance(args, list):
cmd.extend(args)

pkglist = util.expand_package_list('%s-%s', pkgs)
cmd.extend(pkglist)

# Allow the output of this to flow outwards (ie not be captured)
util.subp(cmd, capture=False)

def update_package_sources(self):
self._runner.run("update-sources", self.package_command,
[], freq=PER_INSTANCE)
````

because in Mageia we use urpm* console tools. Mageia's network scripts are stored in /etc/sysconfig/network-scripts/ifcfg-*
cloud-init devel net-convert -d /some/target -D openmandriva makes all necessary files. This must be successful for Mageia too, but it is not part of the package

Best regards,
Rossen

Contributor guide

Open the contributing guide

Research direction

Start by comparing the proposed Mageia.py implementation with the existing OpenMandriva support and run cloud-init devel net-convert against a Mageia target. Check how /etc/sysconfig/network-scripts/ifcfg-* files are generated and whether the Mageia package includes the required support. Done means network conversion and package operations work for Mageia 9.

Written by the indexing model from the issue text.

Assessment

Tech stack
linux, python
Domain
networking, operating-systems
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.