configs/compose_name.py

24 lines
535 B
Python
Executable File

#!/usr/bin/env python3
import os
import re
import sys
def sanitize(name: str) -> str:
slug = name.lower()
slug = re.sub(r'[^a-z0-9_-]+', '-', slug)
slug = slug.lstrip('-_')
if not slug:
slug = 'mynetwork'
if not re.match(r'^[a-z0-9]', slug):
slug = f'n{slug}'
return slug
def main() -> None:
base = sys.argv[1] if len(sys.argv) > 1 else os.getcwd()
resolved = os.path.abspath(base)
name = os.path.basename(resolved)
print(sanitize(name))
if __name__ == '__main__':
main()