X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=bootauth.py;h=5c9dfa778356ddc1df8b5595fe5dd1fa36fb3a48;hb=570d234b7d7b40416b296de71225f28c826ee991;hp=a946db3432d5ff51bef5102eed3ae8a74af4e1e0;hpb=2e4fb420d60d9433082950338c97af61917b145d;p=nodemanager.git diff --git a/bootauth.py b/bootauth.py index a946db3..5c9dfa7 100755 --- a/bootauth.py +++ b/bootauth.py @@ -1,16 +1,11 @@ #!/usr/bin/python # -# Test script for obtaining a node session key. Usually, the Boot -# Manager obtains it, then writes it to /etc/planetlab/session. To -# generate a node key for a node, execute: -# -# AdmGenerateNodeConfFile(node_id) +# Obtaining a node session key. Usually, the Boot +# Manager obtains it, then writes it to /etc/planetlab/session. # # Mark Huang # Copyright (C) 2006 The Trustees of Princeton University # -# $Id$ -# import os, sys import getopt @@ -36,8 +31,9 @@ def main(): # Get options try: - (opts, argv) = getopt.getopt(sys.argv[1:], "n:k:h", - ["node=", "nodeid=", "node-id", "node_id", + (opts, argv) = getopt.getopt(sys.argv[1:], "f:n:k:h", + ["config=", "cfg=", "file=", + "node=", "nodeid=", "node-id", "node_id", "key=", "help"]) except getopt.GetoptError, err: @@ -46,15 +42,17 @@ def main(): for (opt, optval) in opts: if opt == "-f" or opt == "--config" or opt == "--cfg" or opt == "--file": - config = optval + config = Config(optval) elif opt == "-n" or opt == "--node" or opt == "--nodeid" or opt == "--node-id" or opt == "--node_id": if os.path.exists(optval): - node_id = file(optval).read().strip() + with open(optval) as optfile: + node_id = optfile.read().strip() else: node_id = int(optval) elif opt == "-k" or opt == "--key": if os.path.exists(optval): - key = file(optval).read().strip() + with open(optval) as optfile: + key = optfile.read().strip() else: key = optval else: @@ -68,10 +66,10 @@ def main(): usage() # Authenticate as the Boot Manager would and get a session key - plc = PLCAPI(config.plc_api_uri, (node_id, key)) + plc = PLCAPI(config.plc_api_uri, config.cacert, (node_id, key)) session = plc.BootGetNodeDetails()['session'] - plc = PLCAPI(config.plc_api_uri, session) + plc = PLCAPI(config.plc_api_uri, config.cacert, session) assert session == plc.GetSession() print session