#!/usr/bin/python3
from py2pack import generate, file_template_list
import argparse
from pathlib import Path
import sys
from os import getcwd
parser_generate = argparse.ArgumentParser(description='generate RPM spec or DEB dsc file from a package')
parser_generate.add_argument('--name', help='package name')
parser_generate.add_argument('--version', nargs='?', help='package version (optional)')
parser_generate.add_argument('--source-url', default=None, help='source url (optional)')
parser_generate.add_argument('--source-glob', help='source glob template (optional)')
parser_generate.add_argument('--local', default='disable', choices=['enable', 'disable'], help='build from local package')
parser_generate.add_argument('--noop', default='disable', choices=['enable', 'disable'], help='do nothing')
parser_generate.add_argument('--localfile', default='', help='path to the local PKG-INFO or json metadata (optional)')
parser_generate.add_argument('--template', choices=file_template_list(), default='opensuse.spec', help='file template')
parser_generate.add_argument('--filename', help='output filename (optional)')
parser_generate.add_argument('--outdir', help='output directory', default=getcwd())
args = parser_generate.parse_args(sys.argv[1:])
if args.noop == 'enable':
    exit(0)

args.run = None
args.local = args.local == 'enable'

filename = args.filename
if not filename:
    filename = 'python-'+args.name+Path(args.template).suffix
filename = Path(filename)
if not filename.is_absolute():
    filename = Path(args.outdir) / filename
args.filename = str(filename)

generate(args)

