| """Ubuntu 20.04 on a hardware type of your choice.""" |
| |
| import geni.portal as portal |
| # Import the ProtoGENI library. |
| import geni.rspec.pg as rspec |
| |
| pc = portal.Context() |
| |
| pc.defineParameter('hardware_type', 'Hardware type', portal.ParameterType.NODETYPE, '') |
| |
| params = pc.bindParameters() |
| |
| request = pc.makeRequestRSpec() |
| |
| node = request.RawPC('node-0') |
| node.hardware_type = params.hardware_type |
| node.disk_image = 'urn:publicid:IDN+emulab.net+image+emulab-ops//UBUNTU20-64-STD' |
| |
| # manipulate the authorized key for root access |
| node.addService(rspec.Execute(shell="bash", command="sudo chown osc_int -R /root && tail -1 ~/.ssh/authorized_keys >> /root/.ssh/authorized_keys && rm /root/.ssh/id_rsa* && sudo chown root -R /root")) |
| |
| pc.printRequestRSpec(request) |