#!/usr/bin/env python3
import subprocess
import argparse
import os
import os.path

from common import PROJECT, REPOSITORY, BRANCH

def add_package_to_project(name: str):
    package_meta = f"""<package name="{name}" project="{PROJECT}">
  <title/>
  <description/>
  <scmsync>{REPOSITORY}?subdir={name}#{BRANCH}</scmsync>
</package>"""
    p = subprocess.run(["osc", "meta", "pkg", "-F", "-", PROJECT, name], input=package_meta, encoding='utf-8' , stdout=subprocess.PIPE)
    print(p.stdout)
    print(p.stderr)
    p.check_returncode()


def add_package(package_name: str):
    if "/" in package_name:
        print("invalid package name")
        os.exit(1)

    if not os.path.isdir(package_name):
        print("package doesn't exist in this directory")
        os.exit(1)

    add_package_to_project(package_name)


def main():
    parser = argparse.ArgumentParser(prog="add_package")
    parser.add_argument("package")

    args = parser.parse_args()

    add_package(args.package)
    

    print("Package created in OBS !")


if __name__ == '__main__':
    main()
