From 8081a5520a441b43a8a7a73f3a90c7aacfaa8e10 Mon Sep 17 00:00:00 2001 From: Timotej Lazar Date: Sun, 24 Feb 2019 21:05:27 +0100 Subject: Move everything one level up --- tasks/public_ip_ssh/task.py | 52 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 tasks/public_ip_ssh/task.py (limited to 'tasks/public_ip_ssh/task.py') diff --git a/tasks/public_ip_ssh/task.py b/tasks/public_ip_ssh/task.py new file mode 100644 index 0000000..8dcb858 --- /dev/null +++ b/tasks/public_ip_ssh/task.py @@ -0,0 +1,52 @@ +# kpov_util should be imported by add_assignment.py + +instructions = { + 'si':""" +
Ustvari dva navidezna računalnika. Za disk enega (imenujmo ga SimpleArbiter) uporabite
+sliko diska Test. Na drugega (imenujmo ga A) namesti poljubno Linux distribucijo. Na SimpleArbiter
+preberi uporabniško ime in geslo uporabnika, ki ga moraš ustvariti na A. Poskrbi, da se bo novoustvarjeni
+uporabnik s svojim geslom lahko na A prijavil z Interneta.
+""" +} + +computers = { + 'SimpleArbiter': { + 'disks':[ + { 'name': 'simpleArbiter' }], + 'network_interfaces':[{'network':'net1'}], + }, + 'A': { + 'disks':[], + 'network_interfaces':[{'network':'net2'}], + } + +} + +networks = { 'net1': {'public': True}, 'net2': {'public': True} } + +params_meta = { + 'peer_ip': {'descriptions': {'si': 'Naslov ssh strežnika'}, 'w': True, 'public':True, 'type': 'IP', 'generated': False}, + 'peer_user': {'descriptions': {'si': 'ime uporabnika'}, 'w': False, 'public': True, 'type': 'username', 'generated': True}, + 'peer_passwd': {'descriptions': {'si': 'geslo uporabnika'}, 'w': False, 'public': True, 'type': 'password', 'generated': True}, +} + +def task(peer_ip, peer_user, peer_passwd): + return dict() + +def gen_params(user_id, params_meta): + return kpov_util.default_gen(user_id, params_meta) + +def task_check(results, params): + from pexpect import pxssh + ip, user, passwd = params['peer_ip'], params['peer_user'], params['peer_passwd'] + results = {} + try: + s = pxssh.pxssh(encoding='utf-8') + s.login(ip, user, passwd) + s.logout() + return 10, [] + except Exception as ex: + return 0, [str(ex)] + +def prepare_disks(templates, task_params, global_params): + write_default_config(templates['simpleArbiter'], global_params) -- cgit v1.2.1