manala / ansible-roles

Manala ansible roles
https://galaxy.ansible.com/manala/
145 stars 37 forks source link

From .yml to .yaml #677

Closed nervo closed 11 months ago

nervo commented 1 year ago

Convert all .yml file extension to .yaml

greedybro commented 1 year ago
#!/usr/bin/env python3

import re
import os

def rename_files():
    pattern = r"(.*)\.yml$"
    replacement = r"\1.yaml"
    directory = os.getcwd()

    for root, dirs, files in os.walk(directory):
        for filename in files:
            if re.match(pattern, filename):
                old_path = os.path.join(root, filename)
                new_filename = re.sub(pattern, replacement, filename)
                new_path = os.path.join(root, new_filename)
                os.rename(old_path, new_path)

def replace_content():
    pattern = r"\.yml\b"
    replacement = ".yaml"
    directory = os.getcwd()

    for root, dirs, files in os.walk(directory):
        for filename in files:
            file_path = os.path.join(root, filename)
            try:
                with open(file_path, 'r', encoding='utf-8') as f:
                    content = f.read()
            except UnicodeDecodeError:
                print(f"Skipped {filename} due to UnicodeDecodeError.")
                continue

            new_content = re.sub(pattern, replacement, content)

            if new_content != content:
                with open(file_path, 'w', encoding='utf-8') as f:
                    f.write(new_content)

rename_files()
replace_content()