added generate comon url method
[sfa.git] / cmdline / getNodes.py
index 8367978..2675152 100644 (file)
@@ -2,6 +2,7 @@
 import sys
 import os
 import traceback
+import urllib
 from datetime import datetime
 from optparse import OptionParser
 from geni.util.rspec import Rspec
@@ -16,36 +17,58 @@ def create_parser():
 (plain or rspec) that meet the specified crieteria. If no criteria is 
 specified, the default action is to return node comon considers 'alive' 
 (resptime > 0)"""
-    options = ['alive']
     cmp_options = ['rwfs', 'uptime', 'loads', 'meminfo', 'kernver', 'cpuspeed', 'txrate', 'rxrate', 'numslices', 'liveslices']
-     
+    option = ['numslices', 'liveslices', 'gbfree'] 
 
     parser = OptionParser(usage=usage,description=description)
     for opt in options:
         parser.add_option("--%s" % opt, dest="%s" % opt, action="store_true", 
                           help = "available options [%s]" % ",".join(cmp_options))
-   return parser    
+   
+    return parser    
+
+
+def download_file(url, localFile):
+    webFile = urllib.urlopen(url)
+    localFile = open(localFile, 'w')
+    localFile.write(webFile.read())
+    localFile.close()    
+    
 
-def get_comon_data()
+def generate_comon_url(options):
+    url = "select = 'resptime > 0"
+    query_dict = {}
+    query_dict['numslices'] = 'numslices %s= %s'
+    query_dict['liveslices'] = 'liveslices %s= %s'
+    query_dict['gbfree'] = 'gbfree %s= %s'
+    
+    if options.numslices:
+        full_value = options.numslices
+         
+    url += "'"
+
+def get_comon_data():
     date = datetime.now()
     year = str(date.year)
     month = str(date.month)
     day = str(date.day)
-    for num in [year, month, day]:
-        if len(num) == 1:
-            num = "0" + num
+    if len(month) == 1:
+        month = "0" + month
+    if len(day) == 1:
+        day = "0" + day
      
-    comon_data_file = sfi_dir + os.sep + "comon_data.dat" 
+    comon_data_filename = sfi_dir + os.sep + "comon_data.dat" 
     comon_url = "http://comon.cs.princeton.edu/status/dump_comon_%s%s%s" % (year, month, day)
     
-    # wget comon data and save it 
-    # wget(comon_url)
-    #  
+    print "storing comon data from %s in %s" % (comon_url, comon_data_filename)     
+    download_file(comon_url, comon_data_filename)
 
+    return comon_data_filename
+        
 def main():
     parser = create_parser()
-
-    get_comon_data()
+    (options, args) = parser.parse_args()
+    comon_file = get_comon_data()
     
 
 if __name__ == '__main__':