#!/usr/bin/env python3

import click
import subprocess
import yaml
import os

@click.command()
@click.argument("branch",type=click.STRING)
@click.argument("signkey",type=click.File(mode="r"),default=None)
def cli(branch,signkey):
    if signkey is not None:
        signkeystr = signkey.read()
    else:
        signkeystr = ""
    with open(".gitlab-ci.yml","r") as f:
        document = yaml.load(f)
        command = ';'.join(document['build']['script'])
        env = { "CI_PIPELINE_ID": "9999"
              , "CI_COMMIT_REF_NAME": branch
              , "SIGNING_KEY": signkeystr
              }
        env.update(document['variables'])
        env.update(os.environ)
        res = subprocess.run(command,shell=True,env=env)

if __name__ == "__main__":
    cli()