def setup_travis ():
import getpass
import sys
global private_key # pylint: disable=W0603
logging.basicConfig(level=logging.DEBUG, stream=sys.stderr)
print("Setup called.")
if 'USER' in os.environ:
if os.environ['USER'] != "travis":
return
else:
if getpass.getuser() != "travis":
return
print("Executing under Travis-CI")
ssh_dir = "{}/.ssh".format(os.environ['HOME'])
priv_filename = os.path.join(ssh_dir, "id_rsa")
if os.path.exists(priv_filename):
logger.error("Found private keyfile")
print("Found private keyfile")
return
else:
logger.error("Creating ssh dir " + ssh_dir)
print("Creating ssh dir " + ssh_dir)
os.system("mkdir -p {}".format(ssh_dir))
priv = ssh.RSAKey.generate(bits=1024)
private_key = priv
logger.error("Generating private keyfile " + priv_filename)
print("Generating private keyfile " + priv_filename)
priv.write_private_key_file(filename=priv_filename)
pub = ssh.RSAKey(filename=priv_filename)
auth_filename = os.path.join(ssh_dir, "authorized_keys")
logger.error("Adding keys to authorized_keys file " + auth_filename)
print("Adding keys to authorized_keys file " + auth_filename)
with open(auth_filename, "a") as authfile:
authfile.write("{} {}\n".format(pub.get_name(), pub.get_base64()))
logger.error("Done generating keys")
print("Done generating keys")
评论列表
文章目录