blob: 3b5ec781f52171b2b3fb58df394e64c97ae69ad1 [file] [log] [blame]
import subprocess, os
class GpgError(Exception):
pass
class ExecutionError(GpgError):
def __init__(self, errcode):
self.error_code = errcode
def sign(input_file, extra_args=[]):
cmd = ['gpg', '--sign']
cmd.extend(extra_args)
cmd.append(input_file)
process = subprocess.Popen(cmd,
stdout=subprocess.PIPE, stderr=subprocess.STDOUT,
close_fds=True, universal_newlines=True)
stdout = process.communicate()[0]
process.wait()
if process.returncode != 0:
raise ExecutionError(process.returncode)
return stdout