

def paasta_push_to_registry(args):
    'Upload a docker image to a registry'
    service = args.service
    if (service and service.startswith('services-')):
        service = service.split('services-', 1)[1]
    validate_service_name(service, args.soa_dir)
    cmd = build_command(service, args.commit)
    loglines = []
    (returncode, output) = _run(cmd, timeout=3600, log=True, component='build', service=service, loglevel='debug')
    if (returncode != 0):
        loglines.append(('ERROR: Failed to promote image for %s.' % args.commit))
        output = get_jenkins_build_output_url()
        if output:
            loglines.append(('See output: %s' % output))
    else:
        loglines.append(('Successfully pushed image for %s to registry' % args.commit))
    for logline in loglines:
        _log(service=service, line=logline, component='build', level='event')
    return returncode

dataset/ETHPy150Open Yelp/paasta/paasta_tools/cli/cmds/push_to_registry.py paasta_push_to_registry/original