From c7b70f31aa7d34d184c20ac6258fec2174ea8d67 Mon Sep 17 00:00:00 2001 From: =?utf8?q?C=C4=83lin-Andrei=20Burloiu?= Date: Tue, 7 Feb 2012 19:53:04 +0200 Subject: [PATCH] cis: bug fixes --- cis/api/avhandling.py | 2 +- cis/api/ffmpeg.py | 0 cis/api/file_transfer.py | 2 - cis/api/ftp.py | 0 cis/api/ftp_config.py | 2 +- cis/cacert.pem | 24 + cis/cisd.py | 146 +++--- cis/config.py | 12 +- cis/eval/calc.py | 17 + cis/eval/results-http.txt | 2 + cis/eval/results-https.txt | 2 + cis/eval/sec-eval.sh | 31 ++ cis/eval/time-http.csv | 1000 ++++++++++++++++++++++++++++++++++++ cis/eval/time-https.csv | 1000 ++++++++++++++++++++++++++++++++++++ cis/job_test2.json | 16 + cis/post-json.sh | 10 + cis/privkey.pem | 27 + cis/users.py | 1 + 18 files changed, 2204 insertions(+), 90 deletions(-) create mode 100644 cis/api/ffmpeg.py create mode 100644 cis/api/ftp.py create mode 100644 cis/cacert.pem create mode 100644 cis/eval/calc.py create mode 100644 cis/eval/results-http.txt create mode 100644 cis/eval/results-https.txt create mode 100755 cis/eval/sec-eval.sh create mode 100644 cis/eval/time-http.csv create mode 100644 cis/eval/time-https.csv create mode 100644 cis/job_test2.json create mode 100755 cis/post-json.sh create mode 100644 cis/privkey.pem create mode 100644 cis/users.py diff --git a/cis/api/avhandling.py b/cis/api/avhandling.py index 808b572..27c9a5d 100644 --- a/cis/api/avhandling.py +++ b/cis/api/avhandling.py @@ -160,7 +160,7 @@ class FFprobeAVInfo(base.BaseAVInfo): # READ handler for process's output. p = subprocess.Popen(args, shell=True, - stdout=subprocess.PIPE, stderr=open(os.devnull, 'w')) + stdout=subprocess.PIPE, stderr=subprocess.STDOUT) pipe = p.stdout # WRITE handler for logging. diff --git a/cis/api/ffmpeg.py b/cis/api/ffmpeg.py new file mode 100644 index 0000000..e69de29 diff --git a/cis/api/file_transfer.py b/cis/api/file_transfer.py index 0425280..2f33eac 100644 --- a/cis/api/file_transfer.py +++ b/cis/api/file_transfer.py @@ -75,8 +75,6 @@ class FTPFileTransferer(base.BaseFileTransferer): % (local_fn, repr(e))) try: - print('remote_path=' + self.remote_path \ - + '; crt_fn=' + crt_fn) self.ftp.storbinary('STOR %s' % crt_fn, file_local) file_local.close() except ftplib.error_perm as e: diff --git a/cis/api/ftp.py b/cis/api/ftp.py new file mode 100644 index 0000000..e69de29 diff --git a/cis/api/ftp_config.py b/cis/api/ftp_config.py index 551cd7d..6cdc0de 100644 --- a/cis/api/ftp_config.py +++ b/cis/api/ftp_config.py @@ -4,5 +4,5 @@ Configuration file for FTPFileTransferer class. FTP_HOST = "localhost" FTP_USER = "calinburloiu" -FTP_PASSWD = "Ps1st1h14_" +FTP_PASSWD = "0k3D3m4T_" FTP_ACCT = "" diff --git a/cis/cacert.pem b/cis/cacert.pem new file mode 100644 index 0000000..63274c6 --- /dev/null +++ b/cis/cacert.pem @@ -0,0 +1,24 @@ +-----BEGIN CERTIFICATE----- +MIIECTCCAvGgAwIBAgIJAJLgqCXzWIpnMA0GCSqGSIb3DQEBBQUAMIGaMQswCQYD +VQQGEwJSTzETMBEGA1UECAwKU29tZS1TdGF0ZTESMBAGA1UEBwwJQnVjaGFyZXN0 +MQwwCgYDVQQKDANVUEIxDDAKBgNVBAsMA0FDUzEdMBsGA1UEAwwUQ2FsaW4tQW5k +cmVpIEJ1cmxvaXUxJzAlBgkqhkiG9w0BCQEWGGNhbGluLmJ1cmxvaXVAY3RpLnB1 +Yi5ybzAeFw0xMjAxMjQxMzU0NDdaFw0xNTAxMjMxMzU0NDdaMIGaMQswCQYDVQQG +EwJSTzETMBEGA1UECAwKU29tZS1TdGF0ZTESMBAGA1UEBwwJQnVjaGFyZXN0MQww +CgYDVQQKDANVUEIxDDAKBgNVBAsMA0FDUzEdMBsGA1UEAwwUQ2FsaW4tQW5kcmVp +IEJ1cmxvaXUxJzAlBgkqhkiG9w0BCQEWGGNhbGluLmJ1cmxvaXVAY3RpLnB1Yi5y +bzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOoiuxWQVszCtwmLHqjw +NaKyVjNwLToJEizeYFi5vwOAVeYo523ynKhr7FKXfiNcfTCP3DfGPQQrxq2UbPR4 +pYJRjkuoLYyZWGRmOLbMRTOUHfI0mXKTla87l+aoa0Yciw1ni1tOSkvhpZYM6Om+ +Hc5a2CCK0qPlAsQAqIRas570f0QPhEpWKMx4wY6WtzLlg61LJKwyy9NoSnwfwQmB +wXVZx+J4S0BfivElcFTdkKALvKpHVWASprglbIMcYkvkMmKfoyEOWzymHNiGILUW +lhcw+wVn+C/XG0WY8uTVCqwPLvPNqGeZJQJKyefer/OsE874o4BKJ84MYGLzBZ40 +xtcCAwEAAaNQME4wHQYDVR0OBBYEFKmwYRQAzZO1Ui1VAZzG635wvoqzMB8GA1Ud +IwQYMBaAFKmwYRQAzZO1Ui1VAZzG635wvoqzMAwGA1UdEwQFMAMBAf8wDQYJKoZI +hvcNAQEFBQADggEBAMe0X29XnKEYnPZRe463WFAIdnW9c0BaGmS0U7791pqtJY6s +Tc5HvxFoY6FOSYrExNRpj4SMAtGFy0q+3hj/xA3JV0ahAr0dS3K8XM1Zr6cC5iHe +r6oeAyzu/y9kb0POwv9n4ZMr/1GBXH4YnYmi8Cy00rJR7cbPHQFI95NyxtyP+MMR +647BTvPQHbV5Z06YkoMaHOBoouPNGHUgVoNLcwg7IzFedzScJvkI1NT7gZu7gFhM +o4NxquzBk3RWWzXjQYV3Ah68xt5rL+U1EUK2YpEcDPFWLc/csYaI+5l+fGlnDiLn +gl0/Y133DydEIKWNuL0Quxv8RmoujDeg6rlrm4M= +-----END CERTIFICATE----- diff --git a/cis/cisd.py b/cis/cisd.py index d286ef7..8284882 100755 --- a/cis/cisd.py +++ b/cis/cisd.py @@ -9,9 +9,15 @@ import threading from Queue import Queue import web import json +from web.wsgiserver import CherryPyWSGIServer import config import bt +import users + +if config.SECURITY: + CherryPyWSGIServer.ssl_certificate = "cacert.pem" + CherryPyWSGIServer.ssl_private_key = "privkey.pem" class CIWorker(threading.Thread): @@ -25,34 +31,29 @@ class CIWorker(threading.Thread): raw_videos_dir = 'tmp/raw' transcoded_videos_dir = 'tmp/media' thumbs_dir = 'tmp/thumbs' - torrents_dir = 'tmp/torrents' + torrents_dir = config.CIS_TORRENTS_PATH - def __init__(self, shared, bit_torrent): + def __init__(self): """ Initialize Content Ingestion Worker. - - @param shared data shared with the front-end (Service) """ threading.Thread.__init__(self, name='CIWorker') - self.shared = shared - self.bit_torrent = bit_torrent - def transfer_in(self, raw_video): """ Transfers a raw video file from the Web Server. @param raw_video raw video file name """ - + + print '** Transfering in...' + file_transfer = config.FILE_TRANSFERER_CLASS( \ - self.raw_videos_dir, config.INPUT_PATH) + self.raw_videos_dir, config.WS_UPLOAD_PATH) file_transfer.get([raw_video]) file_transfer.close() - print '** Transfering in finished.' - def transcode(self, input_video, video_name, transcode_configs): """ Transcodes a video in each requested formats. @@ -62,6 +63,8 @@ class CIWorker(threading.Thread): @param transcode_configs a list of dictionaries with format settings """ + print '** Transcoding...' + transcoder = config.TRANSCODER_CLASS( \ input_file = os.path.join(self.raw_videos_dir, input_video), \ name = video_name, prog_bin = config.TRANSCODER_BIN) @@ -73,8 +76,6 @@ class CIWorker(threading.Thread): transcode_config['output_file'] = \ transcoder.transcode(**transcode_config) - print '** Transcoding finished.' - def extract_thumbs(self, input_video, video_name, thumbs): """ Extracts thumbnail images from a video. @@ -86,6 +87,8 @@ class CIWorker(threading.Thread): thumbnail """ + print '** Extracting image thumbnails...' + # TODO report partial errors thumb_extractor = config.THUMB_EXTRACTOR_CLASS( \ input_file = os.path.join(self.raw_videos_dir, input_video), \ @@ -97,14 +100,14 @@ class CIWorker(threading.Thread): elif type(thumbs) is int and thumbs > 0: thumb_extractor.extract_summary_thumbs(thumbs) - print '** Extracting thumbs finished.' - def seed(self, transcode_configs): """ Creates torrents from the videos passed and then stats seeding them. @param transcode_configs a list of dictionaries with format settings """ + + print '** Creating torrents and starting seeding...' for transcode_config in transcode_configs: # * CREATE TORRENTS FOR EACH TRANSCODED VIDEO @@ -120,12 +123,10 @@ class CIWorker(threading.Thread): output_file = output_file[(output_file.rindex('/') + 1):] # * SEED TORRENTS - bit_torrent.start_download( \ + Server.bit_torrent.start_download( \ os.path.join(self.torrents_dir, output_file), self.transcoded_videos_dir) - print '** Creating torrents and seeding finished.' - def transfer_out(self, local_files, local_path, remote_path): """ Transfers some local files to a remote path of the Web Server. @@ -133,27 +134,27 @@ class CIWorker(threading.Thread): @param local_files list local files to transfer @param remote_path destination path on the Web Server """ + + print '** Transfering out...' file_transfer = config.FILE_TRANSFERER_CLASS( \ local_path, remote_path) file_transfer.put(local_files) file_transfer.close() - print '** Creating torrents and seeding finished.' - def remove_files(self, files, path): """ Deletes files from a specified path. """ + + print '** Cleaning up...' for f in files: os.unlink(os.path.join(path, f)) - print '** Cleaning up finished.' - def run(self): while True: - job = self.shared.queue.get() + job = Server.queue.get() # * TRANSFER RAW VIDEO IN self.transfer_in(job['raw_video']) @@ -181,81 +182,43 @@ class CIWorker(threading.Thread): if os.path.isfile(os.path.join( \ self.thumbs_dir, f))] thumb_files = fnmatch.filter(files, job['name'] + "_*") - - # Raw video files. - raw_files = [f for f in os.listdir(self.raw_videos_dir) \ - if os.path.isfile(os.path.join( \ - self.raw_videos_dir, f))] # * TRANSFER TORRENTS AND THUMBNAIL IMAGES OUT self.transfer_out(torrent_files, self.torrents_dir, \ - config.OUTPUT_TORRENTS_PATH) + config.WS_TORRENTS_PATH) self.transfer_out(thumb_files, self.thumbs_dir, \ - config.OUTPUT_THUMBS_PATH) + config.WS_THUMBS_PATH) # * CLEANUP RAW VIDEOS AND THUMBNAIL IMAGES - self.remove_files(raw_files, self.raw_videos_dir) + self.remove_files([ job['raw_video'] ], self.raw_videos_dir) self.remove_files(thumb_files, self.thumbs_dir) # * JOB FINISHED - self.shared.queue.task_done() - print 'load in run is', self.shared.load - self.shared.load -= job['weight'] - -class Shared: - """ - Shared data between Service (front-end) and CIWorker (back-end). - - @member queue a list of dictionaries with the following keys: - - @member load total weight of the jobs from the queue - """ - - def __init__(self): - # Jobs queue. - self.queue = Queue() + Server.queue.task_done() + Server.load -= job['weight'] - # Sever load. - self.load = 0 - -class Service: +class Server: """ Implementation of the RESTful web service which constitutes the interface with the client (web server). """ - def __init__(self): - # Shared data with back-end (CIWorker). - self.shared = Shared() - - global bit_torrent - - # Worker thread. - ci_worker = CIWorker(self.shared, bit_torrent) - ci_worker.daemon = True - ci_worker.start() + #def __init__(self): + #pass - def __del__(self): - self.shared.queue.join() + #def __del__(self): + #pass def GET(self, request): #web.header('Cache-Control', 'no-cache') if request == 'get_load': - resp = {"load": self.shared.load} - print 'load in GET is', self.shared.load + resp = {"load": Server.load} web.header('Content-Type', 'application/json') return json.dumps(resp) + elif request == 'test': + return '' else: web.badrequest() return "" @@ -267,26 +230,45 @@ class Service: json_data = web.data() data = json.loads(json_data) + # Authenticate user. + if config.SECURITY and \ + not self.authenticate(data["username"], data["password"]): + return "Authentication failed!" + # Add job weight to CIS load. - self.shared.load += data["weight"] - print 'load in POST is', self.shared.load + Server.load += data["weight"] # Submit job. - self.shared.queue.put(data) + Server.queue.put(data) return 'Job submitted.' else: web.badrequest() return "" + def authenticate(self, username, password): + if not config.SECURITY: + return True + if users.users[username] == password: + return True + else: + web.forbidden() + return False + if __name__ == '__main__': # The BitTorrent object implements a NextShare (Tribler) BitTorrent # client for seeding, downloading etc. - global bit_torrent - bit_torrent = bt.BitTorrent() + Server.bit_torrent = bt.BitTorrent() + Server.queue = Queue() + Server.load = 0 + + # Worker thread. + ci_worker = CIWorker() + ci_worker.daemon = True + ci_worker.start() # Web service. - urls = ('/(.*)', 'Service') - service = web.application(urls, globals()) - service.run() + urls = ('/(.*)', 'Server') + app = web.application(urls, globals()) + app.run() diff --git a/cis/config.py b/cis/config.py index fcc629b..868253a 100644 --- a/cis/config.py +++ b/cis/config.py @@ -7,17 +7,21 @@ from api import file_transfer # === FILE TRANSFER CONFIGURATIONS === # Path from the Web Server where the raw input video file is stored. -INPUT_PATH = 'Downloads' +WS_UPLOAD_PATH = 'tmp/data/upload' # Path from the Web Server where the output torrent files will be stored. -OUTPUT_TORRENTS_PATH = 'Downloads/tmp1' +WS_TORRENTS_PATH = 'tmp/data/torrents' # Path from the Web Server where the output thumbnail image files will be # stored. -OUTPUT_THUMBS_PATH = 'Downloads/tmp2' +WS_THUMBS_PATH = 'tmp/data/thumbs' + + +SECURITY = False # === BITTORRENT CONFIGURATIONS === #BT_TRACKER = "http://p2p-next-10.grid.pub.ro:6969/announce" -BT_TRACKER = "http://localhost:6969/announce" +BT_TRACKER = 'http://localhost:6969/announce' +CIS_TORRENTS_PATH = 'tmp/torrents' # === EXTERNAL PROGRAMS API CLASSES === diff --git a/cis/eval/calc.py b/cis/eval/calc.py new file mode 100644 index 0000000..d154dc2 --- /dev/null +++ b/cis/eval/calc.py @@ -0,0 +1,17 @@ +import sys + +if __name__ == '__main__': + input_file = open(sys.argv[1], 'r') + + s = 0.0 + c = 0 + while True: + line = input_file.readline() + if line == '': + break + + s += float(line) + c += 1 + + print "sum =", s + print "avg =", (s/c) diff --git a/cis/eval/results-http.txt b/cis/eval/results-http.txt new file mode 100644 index 0000000..4ed176a --- /dev/null +++ b/cis/eval/results-http.txt @@ -0,0 +1,2 @@ +sum = 32.755571024 +avg = 0.032755571024 diff --git a/cis/eval/results-https.txt b/cis/eval/results-https.txt new file mode 100644 index 0000000..97165d8 --- /dev/null +++ b/cis/eval/results-https.txt @@ -0,0 +1,2 @@ +sum = 74.047656492 +avg = 0.074047656492 diff --git a/cis/eval/sec-eval.sh b/cis/eval/sec-eval.sh new file mode 100755 index 0000000..afd8a08 --- /dev/null +++ b/cis/eval/sec-eval.sh @@ -0,0 +1,31 @@ +#!/usr/bin/env bash + +if [ $# -ne 1 ]; then + echo "usage: $0 " >&2 + exit 1 +fi + +TEST_TYPE=$1 + +case $TEST_TYPE in + "http") + CMD="curl http://localhost:8080/test" + ;; + "https") + CMD="curl https://localhost:8080/test --insecure" + ;; + *) + echo "invalid parameter!" >&2 + ;; +esac + +cd .. + +for i in $(seq 1 1000); do + t1=$(date +%s.%N) + $CMD 2> /dev/null + t2=$(date +%s.%N) + + delta_t=$(echo "$t2 - $t1" | bc) + echo $delta_t +done diff --git a/cis/eval/time-http.csv b/cis/eval/time-http.csv new file mode 100644 index 0000000..f35a965 --- /dev/null +++ b/cis/eval/time-http.csv @@ -0,0 +1,1000 @@ +.054691750 +.031394909 +.033408555 +.038617001 +.033337107 +.034686989 +.017438199 +.023982734 +.032784220 +.031079980 +.031040600 +.029470779 +.033327565 +.034412518 +.035816483 +.034127210 +.033275076 +.019624814 +.029906929 +.030031059 +.030521901 +.034467326 +.035687285 +.029619602 +.035044358 +.033695338 +.031096192 +.030336866 +.030414653 +.030065577 +.030646418 +.034451641 +.034790463 +.030290271 +.032473526 +.027195352 +.030269655 +.030037965 +.030074753 +.030175862 +.034231091 +.012332335 +.013538785 +.030805156 +.035696263 +.034736296 +.032126991 +.031807488 +.012586722 +.014035339 +.021265543 +.035541224 +.035065632 +.037900563 +.015945942 +.016436438 +.031749281 +.031544341 +.030533853 +.036333574 +.033996075 +.036237902 +.037177304 +.028604212 +.035822446 +.033672447 +.036676631 +.033885670 +.030836569 +.035503619 +.026299116 +.036039001 +.032227840 +.032240161 +.028175230 +.036398957 +.032101298 +.030438176 +.030247194 +.033561631 +.027524391 +.035799218 +.032713063 +.032959321 +.035861043 +.031129773 +.029998400 +.030184887 +.036197876 +.029033619 +.011976199 +.022591301 +.026852739 +.035133515 +.036280102 +.031243971 +.030393535 +.035611292 +.034253803 +.034362389 +.027744525 +.035986221 +.032768905 +.032992291 +.036476543 +.030599147 +.035923786 +.033992217 +.030914670 +.033607500 +.027740567 +.035691129 +.032455686 +.033096542 +.036183644 +.031683878 +.035633648 +.033649374 +.031125638 +.033528852 +.027537947 +.035858418 +.032751295 +.032923745 +.035687965 +.031046269 +.030530029 +.036367601 +.033679177 +.034827692 +.011721345 +.015708972 +.029625751 +.036019016 +.033393519 +.036380980 +.033506090 +.030449086 +.030171602 +.030641922 +.029625225 +.036244612 +.032849267 +.033162436 +.027304613 +.035965836 +.033233918 +.030986208 +.036064524 +.036016871 +.029723386 +.035548515 +.033237946 +.030103196 +.029385847 +.035143741 +.033848791 +.031220247 +.030181509 +.035636675 +.026380786 +.036548931 +.032536713 +.032361262 +.035156813 +.030930677 +.030457444 +.030114788 +.030072804 +.036312516 +.023402894 +.011761885 +.027180890 +.036203019 +.035822261 +.031684900 +.030540758 +.035543960 +.034133886 +.034400129 +.036261842 +.031359858 +.030599456 +.033428960 +.035884692 +.031200988 +.030620153 +.035756697 +.034139159 +.034384615 +.027989374 +.036234374 +.032481128 +.033979733 +.035734867 +.031688729 +.036068413 +.035705130 +.035383336 +.035836693 +.031863659 +.035991459 +.033846250 +.027267879 +.035731586 +.035282497 +.036191086 +.035016185 +.035750448 +.030211119 +.012113843 +.015455789 +.036106079 +.030028127 +.035866516 +.035386930 +.036042013 +.035334205 +.036190650 +.035358154 +.031338565 +.035549894 +.033414393 +.027456072 +.035809311 +.035319427 +.035809708 +.034671820 +.036217621 +.035295872 +.035673068 +.035028698 +.035349736 +.025449137 +.036232068 +.033315763 +.035611258 +.035446956 +.035839424 +.036013073 +.031814594 +.035471335 +.033569394 +.027360073 +.031846987 +.036176552 +.035896368 +.035443192 +.035794753 +.011773039 +.013846966 +.029452748 +.032550360 +.036709305 +.033616550 +.036416452 +.033624659 +.035587153 +.033967355 +.036045466 +.035108358 +.035894108 +.035418512 +.027990272 +.036281626 +.034957447 +.035808864 +.035158697 +.035496984 +.035374457 +.032147463 +.034557427 +.034468109 +.027616195 +.035598078 +.034913087 +.035873152 +.035524726 +.035918128 +.035500040 +.035691699 +.032296730 +.033824917 +.035747702 +.034622098 +.034766620 +.036037699 +.035157756 +.011555798 +.013489357 +.037147412 +.035080811 +.035850840 +.033774347 +.036429271 +.036051219 +.036273292 +.035135394 +.035775189 +.038283540 +.036092057 +.036113205 +.036103077 +.029093906 +.035736952 +.035400545 +.036124796 +.033002669 +.034721828 +.035702234 +.037515095 +.035590722 +.033357328 +.027454137 +.037106114 +.031486355 +.033558052 +.035684970 +.035451336 +.035580723 +.035652301 +.036645871 +.034749677 +.027820743 +.035822641 +.035139649 +.038481773 +.016361228 +.017425107 +.036582127 +.036655628 +.035977447 +.034741704 +.028122642 +.035899977 +.034732557 +.035882272 +.035180311 +.035810985 +.035290912 +.031023477 +.036198352 +.033597166 +.027247223 +.036176303 +.034731185 +.035855260 +.035201134 +.036130499 +.035253737 +.036031664 +.025570526 +.036111967 +.029902818 +.035743953 +.035918649 +.035730719 +.034890696 +.035971257 +.036812233 +.030762861 +.034789286 +.034819760 +.027872715 +.036538538 +.037688978 +.013907895 +.017865286 +.028027746 +.035464785 +.035147938 +.036185789 +.035009791 +.027663537 +.035929925 +.035372537 +.035864290 +.034928346 +.031768289 +.035545459 +.034119413 +.035713755 +.033321122 +.029080571 +.035999472 +.035320368 +.035895817 +.034957786 +.032720134 +.036084149 +.033841494 +.035692231 +.035016897 +.028004789 +.036006633 +.034756322 +.035533146 +.036187177 +.032676996 +.035573060 +.034166701 +.036202968 +.034416256 +.027662865 +.036102536 +.020561776 +.013978706 +.015518600 +.035937366 +.035853913 +.035005921 +.036159771 +.034807072 +.027463302 +.035750273 +.034820772 +.036116612 +.035275057 +.030280724 +.036160928 +.033850525 +.035740530 +.035955382 +.028362670 +.035832910 +.034880291 +.035709249 +.035648302 +.032410032 +.035838754 +.033690198 +.035759624 +.034428875 +.027693324 +.036482064 +.033958518 +.033564136 +.035585365 +.035018224 +.035847217 +.033864717 +.035650347 +.035507358 +.028644779 +.035156960 +.016022859 +.014017582 +.016582304 +.034535873 +.038922423 +.035950821 +.035083628 +.035763663 +.038746063 +.035735189 +.036793536 +.035547828 +.031039428 +.037383241 +.035119925 +.035311945 +.034588978 +.035708213 +.032361497 +.036240683 +.038467964 +.036779463 +.036508074 +.035747246 +.036051439 +.035471361 +.035409672 +.035064395 +.027947119 +.036065141 +.034886906 +.031528892 +.035789842 +.035678285 +.035861454 +.034673924 +.035517049 +.034706624 +.028032753 +.012743126 +.016914769 +.013770490 +.026983040 +.035439905 +.035396461 +.035637067 +.035644223 +.036691749 +.032725165 +.036073480 +.035512575 +.032154950 +.035386422 +.035074552 +.035775440 +.034598399 +.035498082 +.034602930 +.027693194 +.036452984 +.035217457 +.031416823 +.035739879 +.033958414 +.035790252 +.034112789 +.035591222 +.035124936 +.028243821 +.036044183 +.035564437 +.035867559 +.034733965 +.036019749 +.035330792 +.035975994 +.035489628 +.035633919 +.029958161 +.014383138 +.016111834 +.022473144 +.035008484 +.035530770 +.035169301 +.036523308 +.035023225 +.035825332 +.032566777 +.035782772 +.035841645 +.036250586 +.035124335 +.036081878 +.035529040 +.032339057 +.036223555 +.034048218 +.027408303 +.035795280 +.035007139 +.031712262 +.036462611 +.035886286 +.035446339 +.035783392 +.035200046 +.036267355 +.033065667 +.035953014 +.034729764 +.032682068 +.035432733 +.035406114 +.036015097 +.033885324 +.035813982 +.038415469 +.011730444 +.013655457 +.015525017 +.029507438 +.036200758 +.034969987 +.035619797 +.034296039 +.035187804 +.035358916 +.028001406 +.035799644 +.035337928 +.035887478 +.035246426 +.032238113 +.036106159 +.033778366 +.035117624 +.035205919 +.036296650 +.034452934 +.036080521 +.035096306 +.035853997 +.035381858 +.035894259 +.034751109 +.035520532 +.034796192 +.035735971 +.034342645 +.035844291 +.034858658 +.036138682 +.035664313 +.035831281 +.034864245 +.035849597 +.020575381 +.015392528 +.016240630 +.036261556 +.036780667 +.035293238 +.035634916 +.043779153 +.036206433 +.034780422 +.031529368 +.035590055 +.037512343 +.035723377 +.036368443 +.035033098 +.035651595 +.036150760 +.035840582 +.035467467 +.035481669 +.035562503 +.035769836 +.035919380 +.038667484 +.034243109 +.031642108 +.035513797 +.033716988 +.030547012 +.035619592 +.035091971 +.035580719 +.035476994 +.036236815 +.035156528 +.032179760 +.035484531 +.035434076 +.044677208 +.014189296 +.035297176 +.035658200 +.035240127 +.037218589 +.034548215 +.035747862 +.035303706 +.035723407 +.035049981 +.036030471 +.035727445 +.035779163 +.035748248 +.035978670 +.035839274 +.032335759 +.035620588 +.033660504 +.036281776 +.035173992 +.031910811 +.035486811 +.035072548 +.035338871 +.035086970 +.032360946 +.035929374 +.033783518 +.036057263 +.034491962 +.035627334 +.026645555 +.032088409 +.032053394 +.033437018 +.030899537 +.035420155 +.012706039 +.016259013 +.013910356 +.031931179 +.037417845 +.035042811 +.035775695 +.035393117 +.032143182 +.036181253 +.033838257 +.035538287 +.035508600 +.036097985 +.035381051 +.035809732 +.035338660 +.035522882 +.035649695 +.028719944 +.035687065 +.035442089 +.035631854 +.035591238 +.036242583 +.035508144 +.035490980 +.033249146 +.035654305 +.027840552 +.035777930 +.035158928 +.031789953 +.034348092 +.035730443 +.035984828 +.035415845 +.035525568 +.035982468 +.028488425 +.020542507 +.016146829 +.013925530 +.014761239 +.033972080 +.035050312 +.035799805 +.035077979 +.035632556 +.033360039 +.035689124 +.036363086 +.035706584 +.036015218 +.035586020 +.035604717 +.035605921 +.035276965 +.032591513 +.035539786 +.034198423 +.035243404 +.035525428 +.035954445 +.036264427 +.035602833 +.035293643 +.035599135 +.035904968 +.028500773 +.036063232 +.035023430 +.031649404 +.034363947 +.035577862 +.032448724 +.035229458 +.034922328 +.035785562 +.032467979 +.019588913 +.015963838 +.013286435 +.012901911 +.018908213 +.034506681 +.035317928 +.037346573 +.035950186 +.029932570 +.033526952 +.036430934 +.034872675 +.036332636 +.035530130 +.035565129 +.035441413 +.036000730 +.035269138 +.029356525 +.035994837 +.034730226 +.036188705 +.035727131 +.036017890 +.033068644 +.033364509 +.035749195 +.035370453 +.029004008 +.036077680 +.035243960 +.031228170 +.034926101 +.035216057 +.035584587 +.035089080 +.035675664 +.035819064 +.029658509 +.036249984 +.029243662 +.014037540 +.013360924 +.012995230 +.036061106 +.033201345 +.035761067 +.035281686 +.035820221 +.035220452 +.035191887 +.025924774 +.018366143 +.019816596 +.017273700 +.027156395 +.035281852 +.036600603 +.032702840 +.036138857 +.036668513 +.033593167 +.035527077 +.035122681 +.035691976 +.035255982 +.035975126 +.035875326 +.028604452 +.035952576 +.035671890 +.036511306 +.035377644 +.036104225 +.035549578 +.035908932 +.034926546 +.032784152 +.028460185 +.036878518 +.034474668 +.036171847 +.023814355 +.015669559 +.014324122 +.019957660 +.035681972 +.035998775 +.029034781 +.036028696 +.036067847 +.035945971 +.035974937 +.035879650 +.035166630 +.035979862 +.035405957 +.036113686 +.033060526 +.036696858 +.035194669 +.035919732 +.036418546 +.036577371 +.034870390 +.036004829 +.034775755 +.042282764 +.035579326 +.036378230 +.036290631 +.034768900 +.031535622 +.036414702 +.034502136 +.036074662 +.031890936 +.036637567 +.023862065 +.030937142 +.036693674 +.035568195 +.029379112 +.021192335 +.012649493 +.011154727 +.030454066 +.035840096 +.023442907 +.030380542 +.035811777 +.035742814 +.035918904 +.035661105 +.036544607 +.035438838 +.036222853 +.035272400 +.028003825 +.032672064 +.036337743 +.036000108 +.035699342 +.035371228 +.035549853 +.036071490 +.036055685 +.034897256 +.027910986 +.030342053 +.033884813 +.035868425 +.034773737 +.035802305 +.034920232 +.035940764 +.037875075 +.036411009 +.029306177 +.035148828 +.035892836 +.036754588 +.036289775 +.018538723 +.011944423 +.011115037 +.012673058 +.017866692 +.027508548 +.023476911 +.030735505 +.036135240 +.035803643 +.036053129 +.035785477 +.034806354 +.032201294 +.035248215 +.022041269 +.031472203 +.035719809 +.035458642 +.036763563 +.026471727 +.031216514 +.035416591 +.036381171 +.035409725 +.027404017 +.023193745 +.031846548 +.035882387 +.035771391 +.036336692 +.034599034 +.035448489 +.036348567 +.032936430 +.029286811 +.032689407 +.035238950 +.036361638 +.036088519 +.034363716 +.035806901 +.035495972 +.013009491 +.011766376 +.011404966 +.012385724 +.022851984 +.036316831 +.034054978 +.035837204 +.035276700 +.036305665 +.034961326 +.031436657 +.025380836 +.030975014 +.034193812 +.036079237 +.036489246 +.035495797 +.035961095 +.035401582 +.036097259 +.035495571 +.026945707 +.031905065 +.033721793 +.036208336 +.035856272 +.035720424 +.035750528 +.036067926 +.036079051 +.036217120 +.027467783 diff --git a/cis/eval/time-https.csv b/cis/eval/time-https.csv new file mode 100644 index 0000000..8cf24eb --- /dev/null +++ b/cis/eval/time-https.csv @@ -0,0 +1,1000 @@ +.068621671 +.074500681 +.075764463 +.079166939 +.075356083 +.075950173 +.076499938 +.076813253 +.076566294 +.071975000 +.068304170 +.074820960 +.076340086 +.068812717 +.077314208 +.076537158 +.076331221 +.076648986 +.076320759 +.076416179 +.081519855 +.058132687 +.066569121 +.070674975 +.077786548 +.065737192 +.062574468 +.064616465 +.075757868 +.067878111 +.081114334 +.082673822 +.064314481 +.062342675 +.076821357 +.066379291 +.074285012 +.071635877 +.076120098 +.078916277 +.077124869 +.076544024 +.077684742 +.078081230 +.077440810 +.076428727 +.075841415 +.076820009 +.076836206 +.076928705 +.072455468 +.071037721 +.058564615 +.077054575 +.077331197 +.069099913 +.075724172 +.071425315 +.075919163 +.077360768 +.077984615 +.076735427 +.076812993 +.077531330 +.076971787 +.066501211 +.076961665 +.076620627 +.077019275 +.077654112 +.076124789 +.068792166 +.075025374 +.077082934 +.079419155 +.067189822 +.076382728 +.078382342 +.076565071 +.076544921 +.076992264 +.077007457 +.076810201 +.076455362 +.078900710 +.077121281 +.077434800 +.069438299 +.072475274 +.077707079 +.068128617 +.077522209 +.076923337 +.077320768 +.076835534 +.077324962 +.076804644 +.072603990 +.075988301 +.077079971 +.076081065 +.076774591 +.076547636 +.076920681 +.076839562 +.077310093 +.077049419 +.072528056 +.070674853 +.070217797 +.076804444 +.077945067 +.071658428 +.075993151 +.076798680 +.077650264 +.077176581 +.077384842 +.076665875 +.077276662 +.077410986 +.076632790 +.076709844 +.077067363 +.077302962 +.078389869 +.077238346 +.059650229 +.066408132 +.076651386 +.077679896 +.057084314 +.076838881 +.076738142 +.074352898 +.077480099 +.066607693 +.075868403 +.077023219 +.077594332 +.076795067 +.077061144 +.077069088 +.077484704 +.077093784 +.079855919 +.073035724 +.065186125 +.076631226 +.076729704 +.077081230 +.077142935 +.077015641 +.077341805 +.077207551 +.077158666 +.077092075 +.069833113 +.075961153 +.076515724 +.076787801 +.077367363 +.081673482 +.072323106 +.076925668 +.067106712 +.067295968 +.078146773 +.077086021 +.077329737 +.077753122 +.076763431 +.077408030 +.076864569 +.078000362 +.077244029 +.076974694 +.076743079 +.076902074 +.077450271 +.077060388 +.079192643 +.077383234 +.077169880 +.053835554 +.067550839 +.079411002 +.077392996 +.077025323 +.076955184 +.078004947 +.077187746 +.077866373 +.076836676 +.076721797 +.077059119 +.077200284 +.069783967 +.074961830 +.074251647 +.076982307 +.076637065 +.069154436 +.058901457 +.067261722 +.075836927 +.077023189 +.070843977 +.075468682 +.077124288 +.076925177 +.075255911 +.076833413 +.077192166 +.077652705 +.076878039 +.078973005 +.070370796 +.075360723 +.077058473 +.078792546 +.076543232 +.064109424 +.065237031 +.076962121 +.077561794 +.077080458 +.073556081 +.076022673 +.076806117 +.078594889 +.077444759 +.077509750 +.077422021 +.074978498 +.080464755 +.076292413 +.074649026 +.073942877 +.076670420 +.077073818 +.072970078 +.054056276 +.075855293 +.076677236 +.077203376 +.077112226 +.077521161 +.077077526 +.077008746 +.077511810 +.076358798 +.079793448 +.077331657 +.077707789 +.077361966 +.077715512 +.074439136 +.078378404 +.071667293 +.062090229 +.059883316 +.076126703 +.077469128 +.077564570 +.078473784 +.075931010 +.077492868 +.078282506 +.073304972 +.077043605 +.061347579 +.070727183 +.077492180 +.077641504 +.072018007 +.076256633 +.077287558 +.077601539 +.075491249 +.062579516 +.077396474 +.077526283 +.077175543 +.077177107 +.077013797 +.076511189 +.079396544 +.076869009 +.077203307 +.077179227 +.077027785 +.076994890 +.076620456 +.072478054 +.076744122 +.077297279 +.077298011 +.063493746 +.048293608 +.077104879 +.077742152 +.076897048 +.078822263 +.076802444 +.069114365 +.075548244 +.076781236 +.077526613 +.077169273 +.081170472 +.070541699 +.077165891 +.077271330 +.077166543 +.076630244 +.080229846 +.059236104 +.064123877 +.071868842 +.076116696 +.076926674 +.076674854 +.079171739 +.075618757 +.075658046 +.076546348 +.076389017 +.076413463 +.073268880 +.076428924 +.076427604 +.076469776 +.076439101 +.077484077 +.076174295 +.075329172 +.055884611 +.076236792 +.076429047 +.076263498 +.076789239 +.076359610 +.076197638 +.073776911 +.075679084 +.076854506 +.076264961 +.074956730 +.076479808 +.076443626 +.076093994 +.073727168 +.076051984 +.069471049 +.074939974 +.053856231 +.067532694 +.079166182 +.076348149 +.076907086 +.076250433 +.076778059 +.071974894 +.074076985 +.075665869 +.076024241 +.076072415 +.070209146 +.075373277 +.076843511 +.077906364 +.076455608 +.077186318 +.076371417 +.054033759 +.066635308 +.076180004 +.078007423 +.076164659 +.076306023 +.076923718 +.077200340 +.053042670 +.086546739 +.070782417 +.077274859 +.077311772 +.077376318 +.077470366 +.078053914 +.075753483 +.077443991 +.078654439 +.059720116 +.063132418 +.076913435 +.077294287 +.077215915 +.063727455 +.077459256 +.079491530 +.073883809 +.077293420 +.076960742 +.077271776 +.076998332 +.077188899 +.072805240 +.076181260 +.076166081 +.077076910 +.079810457 +.063461708 +.057883504 +.077688630 +.092422633 +.076749519 +.077338497 +.075325143 +.079775052 +.075725520 +.077240505 +.077301164 +.077528038 +.076956122 +.077553675 +.077557278 +.077338929 +.080979400 +.078296342 +.077196771 +.054643435 +.045449604 +.074475140 +.078058769 +.077662105 +.077501171 +.077471760 +.077478093 +.076886789 +.077553165 +.077339019 +.077283303 +.077470050 +.077440684 +.077334368 +.078720824 +.077726767 +.077474871 +.077149454 +.063793109 +.060967808 +.074828778 +.077526554 +.078189991 +.077580556 +.077902933 +.057913566 +.071808242 +.075735683 +.077435832 +.077711738 +.078049859 +.071067053 +.076659309 +.076538532 +.077566209 +.077952829 +.077666426 +.077894447 +.046850743 +.052157699 +.051122945 +.068406913 +.078194296 +.077587772 +.077908789 +.077810006 +.077694309 +.077589973 +.076413823 +.077040803 +.077552748 +.071140611 +.076207756 +.076648595 +.077666996 +.074372988 +.077867536 +.073241738 +.053355765 +.070312293 +.077622872 +.077000287 +.077962376 +.077364431 +.077580832 +.072590965 +.077177313 +.077516225 +.074235189 +.065669960 +.077123005 +.077444814 +.077485400 +.077085258 +.079104597 +.080497357 +.077646611 +.052685085 +.060234927 +.073821326 +.077164528 +.077411437 +.077085509 +.077413643 +.077018509 +.077696364 +.079359501 +.077372935 +.077208238 +.078022527 +.078361280 +.076517934 +.077943849 +.077308444 +.077976778 +.074547622 +.053558893 +.067300488 +.077998752 +.077755307 +.076961704 +.077554837 +.077584680 +.080065309 +.078467144 +.077943769 +.074652715 +.072237419 +.076936688 +.074742444 +.077636492 +.078397883 +.071009081 +.075279669 +.077407925 +.063233495 +.061334928 +.076986603 +.075233715 +.077573565 +.078640221 +.077272373 +.077888078 +.075124531 +.078523206 +.077879173 +.075994293 +.078375997 +.079272844 +.074066923 +.077301449 +.077223457 +.077813263 +.072055251 +.071498134 +.050944604 +.076908510 +.078242586 +.077506548 +.079342913 +.077150147 +.076905376 +.077661033 +.075011457 +.078084988 +.078480254 +.078239614 +.075898462 +.078347387 +.074706284 +.078037199 +.077313521 +.071408371 +.072150111 +.053196589 +.069106649 +.080435547 +.077975204 +.075312328 +.079063119 +.077785491 +.074147460 +.077735407 +.077571351 +.077847848 +.080618618 +.078089378 +.077496974 +.077948589 +.077088236 +.079448447 +.074749328 +.081753086 +.049020313 +.070467642 +.077762939 +.077961600 +.075269687 +.077136685 +.077489023 +.078158615 +.070949493 +.075498245 +.076627517 +.077648269 +.078038638 +.077935630 +.077984286 +.078187230 +.076577865 +.077681790 +.077472661 +.053686796 +.059535482 +.077211536 +.076642628 +.078192321 +.078594172 +.076512332 +.076446041 +.077432721 +.077068075 +.077776614 +.077751648 +.077418359 +.075395843 +.077677064 +.069740424 +.075831605 +.075429593 +.077861492 +.068474655 +.035145031 +.055024030 +.076520235 +.069226975 +.075995491 +.068928680 +.075357087 +.076817833 +.077995391 +.070144419 +.074469977 +.072202070 +.078031392 +.077618652 +.059810682 +.076786688 +.074793553 +.076460188 +.072345594 +.076183914 +.053545242 +.051892851 +.079042573 +.077802689 +.078107233 +.069898390 +.074857841 +.074398203 +.073178141 +.076581311 +.077019150 +.077011151 +.077502444 +.078295581 +.077266330 +.076773903 +.057372952 +.067078421 +.076696297 +.076913217 +.054606618 +.066459507 +.078801602 +.077911235 +.077766081 +.075265618 +.078066321 +.077883657 +.078055883 +.070070622 +.055841616 +.074030972 +.075313441 +.065641484 +.078068957 +.066437233 +.077295757 +.069449359 +.075921134 +.077774736 +.053736693 +.056914569 +.078119466 +.064849731 +.078413647 +.076877634 +.077783781 +.070221673 +.075122292 +.078202264 +.076947634 +.077510823 +.077567953 +.078330665 +.078968645 +.076106387 +.077310415 +.077411503 +.077248238 +.071024296 +.044405340 +.064941525 +.080456666 +.074197357 +.072760514 +.074981047 +.082216813 +.077690059 +.078364848 +.071967502 +.074031151 +.077964456 +.076564765 +.076639651 +.072466623 +.077317695 +.074252864 +.076688946 +.077646410 +.060626127 +.048129263 +.061797156 +.075643012 +.077304099 +.072313662 +.072999195 +.079209731 +.076655441 +.075597114 +.078198075 +.076226108 +.076630454 +.085067097 +.075267848 +.077302076 +.076833309 +.074734254 +.078222093 +.075806478 +.052932680 +.048478534 +.075987527 +.070752716 +.072468302 +.070507385 +.075155968 +.075036499 +.077745480 +.076490261 +.076504415 +.076626745 +.077928949 +.072884219 +.074079696 +.070744652 +.075394307 +.074151289 +.078919433 +.076217052 +.055744572 +.068809250 +.077517988 +.070987918 +.072559909 +.071436575 +.075546393 +.074397557 +.076741666 +.078055381 +.076532612 +.077767138 +.077309783 +.070860551 +.076235344 +.058353518 +.075710114 +.074745470 +.076669753 +.077326922 +.042385756 +.040100081 +.056543784 +.068311708 +.073208794 +.071007595 +.075645988 +.074426097 +.071525843 +.073363510 +.071606726 +.075601376 +.074358718 +.071357752 +.072634110 +.071847135 +.072495389 +.077872717 +.071417462 +.074306530 +.070334529 +.061740594 +.033946167 +.072685143 +.073970098 +.077017827 +.077122681 +.077677766 +.072928889 +.073559458 +.071304746 +.058642027 +.077124223 +.076099055 +.077906970 +.072962576 +.073444624 +.076534739 +.072163988 +.073987308 +.076771093 +.075130098 +.034042755 +.062476819 +.075976037 +.072499047 +.073934148 +.076366451 +.072682883 +.061873041 +.071654140 +.076035815 +.074846699 +.075744087 +.077489524 +.072610328 +.073138370 +.076791303 +.077009758 +.077823166 +.075826331 +.078391864 +.053785929 +.059585370 +.077215541 +.071015261 +.074180164 +.076944085 +.077965217 +.078363239 +.078749002 +.079410280 +.077721530 +.077535611 +.077922025 +.071394615 +.072213894 +.076497097 +.077473658 +.076553025 +.077245950 +.075032751 +.034127636 +.037901894 +.077033421 +.072370516 +.073404647 +.077529851 +.077737713 +.076275884 +.078249702 +.077033728 +.077488984 +.075759196 +.079295149 +.071753503 +.073278188 +.078100458 +.075722272 +.077014456 +.076897127 +.071999507 +.054007376 +.052183541 +.075998412 +.073033101 +.072995280 +.076660482 +.077380693 +.077607377 +.069205367 +.075355851 +.077657275 +.078177178 +.076661860 +.077805511 +.077569055 +.072357998 +.073549175 +.065422520 +.077108682 +.077033953 +.055691308 +.046491477 +.077604546 +.076276878 +.078137458 +.071913373 +.074203740 +.076547190 +.076764877 +.076772842 +.058242842 +.063578601 +.076813129 +.075819181 +.079993391 +.076952634 +.077438124 +.077289472 +.069660111 +.077387334 +.057044571 +.052206678 +.057301645 +.070830511 +.078456194 +.075436008 +.078682286 +.077910524 +.076815010 +.077299956 +.077176475 +.078287075 +.075637981 +.075739165 +.073040122 +.076469223 +.077069359 +.078478864 +.077430096 +.078028326 +.057154705 +.042162974 +.077403310 +.077817183 +.076692815 +.077864760 +.078081055 +.076818821 +.079122784 +.075922090 +.078690669 +.078112396 +.079981154 +.077564355 +.078155839 +.072279243 +.073949707 +.076684467 +.076621384 +.076766085 +.036492534 +.043107769 +.076644511 +.077541996 +.077541794 +.076973426 +.077785500 +.077057646 +.078062944 +.072444006 +.073382076 +.076625393 +.078513042 +.077151141 diff --git a/cis/job_test2.json b/cis/job_test2.json new file mode 100644 index 0000000..a7c439a --- /dev/null +++ b/cis/job_test2.json @@ -0,0 +1,16 @@ +{ + "raw_video": "2009-06-28_Beatles-Obladi_600p.ogv", + "name": "beatles", + "weight": 10, + "transcode_configs": [ + { + "container": "webm", + "a_codec": "vorbis", + "a_bitrate": "128k", + "v_codec": "vp8", + "v_bitrate": "480k", + "v_resolution": "640x480" + } + ], + "thumbs": 4 +} diff --git a/cis/post-json.sh b/cis/post-json.sh new file mode 100755 index 0000000..eac61f7 --- /dev/null +++ b/cis/post-json.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env bash + +if [ $# -ne 1 ]; then + echo "usage: $0 json_file" >&2 + exit 1 +fi + +JSON_FILE="$1" + +curl -H application/json --data-binary @"$JSON_FILE" http://localhost:8080/ingest_content diff --git a/cis/privkey.pem b/cis/privkey.pem new file mode 100644 index 0000000..74a34e1 --- /dev/null +++ b/cis/privkey.pem @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEowIBAAKCAQEA6iK7FZBWzMK3CYseqPA1orJWM3AtOgkSLN5gWLm/A4BV5ijn +bfKcqGvsUpd+I1x9MI/cN8Y9BCvGrZRs9HilglGOS6gtjJlYZGY4tsxFM5Qd8jSZ +cpOVrzuX5qhrRhyLDWeLW05KS+Gllgzo6b4dzlrYIIrSo+UCxACohFqznvR/RA+E +SlYozHjBjpa3MuWDrUskrDLL02hKfB/BCYHBdVnH4nhLQF+K8SVwVN2QoAu8qkdV +YBKmuCVsgxxiS+QyYp+jIQ5bPKYc2IYgtRaWFzD7BWf4L9cbRZjy5NUKrA8u882o +Z5klAkrJ596v86wTzvijgEonzgxgYvMFnjTG1wIDAQABAoIBAEwLt8QLO4YKADVD +UFQCoQkU71aJqsbcx2B3YcevnNDgUAYPZwuY7zTsyLcSqU+G7MpnD1m2M381ULR0 +LudAgFFRd+wu1YyDCeiiIu2MbzWPeCKA3w4NzWI68t1h+mWtQ6S46tRfG1aGFagk +zUmODFRHwUbgkAXXjgxnQlSquQh5NgmjguE2mvejYbJGejTwbTfBkeu6ceEe5zt9 +opmFmPgxhkAyGuAi2zmJClBxUYjrhsVVTXzqE3w6rumVjZQiwlC+b9A9/yqKXG6x +gqaQui/LyL9R1IA1mJ7DdyGR2SN5eHqkg7SQGNrRp8BP7APWVu0/QCIQ83EGlZ1H +Jl1nFoECgYEA9wvMre8FgIu7bfoWTXRcO5yjiRh9K5fhoDJhwQVXuAkEfLRLrpxg +atEBPROkQtjBrgVl0Cm0zaW9z0FY0zH2nP/2hEDyJO48W6BUjRCoJbfm8bwJcKU5 +alS47HJ3jA2t7A6tj3+vchcYDGcmNBG7gDujwMGvYQ5pFEgl2XXIaaECgYEA8p8k +jEN7/83hah9JlvKUgzXInOJiNqriO2vdDUehrB9nkaLULcaWq12khtixO/O6Jk1f +t/A1SgXYy7Ni7DEKDqsf12Fyi/paLjd5BetAgxRW2aXMpd9OhYUv6F4Zuk2gHQJ1 +Yue5C8LITBdxZvusLv1Cr0138/gdaJXlvDsejXcCgYAd3cRR5sqgfsQbCJf3pzCb +WFWA9n/zbDovtseQoUe4jQaI2PcpVehmIXxn2N8L4c6QbkCfyNr93aKz0q+dYLXy +xxMTbBKaGl8bqKdwImphnPkDknsFrkPhsfplQ3VmbiTvm9qptYMNZPNYVIQO2XH0 +j8E9RW0ha6+SbyJ8RrwC4QKBgCi/n8TLBMV2z5giPxrSDS1oWBQ5VWN3Gd3/BLZZ +RIcDE0L7hQVXKDEJ3jsjo8i865PJRP1Ao8KV7s5vh3rB1b2W8hcbb8CgwIqomHPt +Cf256chON2vYcHiuYNh3DX0j0nNs2UhOQN7/zOIywcIZHNcbhBqrOS1Ji67oFhii +GUSLAoGBANc+gV8s9vhl8ONNO9QGBAVUQyxuobR1gX9cREYs8E4n/ybnmMBsxoHI +/pST1pPidvVwT9HEIArp4P94osx4xOUhwC23qHf3r0N+15LecAVCduB3nrZRVXGy +H48fViK3cO2zK/bk+RdcSbmH4zp+XASv4jtBanGO875WFwxGxyl+ +-----END RSA PRIVATE KEY----- diff --git a/cis/users.py b/cis/users.py new file mode 100644 index 0000000..99406ec --- /dev/null +++ b/cis/users.py @@ -0,0 +1 @@ +users = {"student": "parola_student", "user": "password"} -- 2.20.1