blob: f0d41c1073e6de379fd38f8cb6a002a0b68f197d [file] [log] [blame]
#!/bin/env python3
import argparse
import jinja2
import os
import yaml
def get_device_type(arch, config_file):
with open(config_file, "r") as stream:
try:
config = yaml.safe_load(stream)
return config[arch]['device_type']
except yaml.YAMLError as exc:
print(exc)
def main():
argparser = argparse.ArgumentParser()
argparser.add_argument('--template', help='Input template file', required=True)
argparser.add_argument('--test-branch', help='The branch being tested', default='main')
argparser.add_argument('--test-repo', help='The repository being tested', required=True)
argparser.add_argument('--arch', choices=['amd', 'intel'], help='Architecture', required=True)
argparser.add_argument('--ccdec-build-id', help='ccdec build id', required=True)
argparser.add_argument('--token', help='Github read token', required=True)
argparser.add_argument('--repo', help='Github repository', required=True)
argparser.add_argument('--config-file', help='Configuration file', required=True)
args = argparser.parse_args()
env = jinja2.Environment(loader=jinja2.FileSystemLoader(os.path.dirname(args.template)),
undefined=jinja2.StrictUndefined)
template = env.get_template(os.path.basename(args.template))
print(template.render(ccdec_build_id=args.ccdec_build_id, arch=args.arch, device_type=get_device_type(args.arch, args.config_file), test_branch=args.test_branch, repo_url=args.test_repo, token=args.token, repo=args.repo))
if __name__ == '__main__':
main()