*λ
ώάΜ;c       s£     d  Z    d k Z  d k Z d k Z d k Z d k Z d k Z 	 d Z  d   Z  d   Z	 0 d   Z
 7 d   Z E e d j o E e   n d S(   s   Downloads the  initial rpm's  to run update,  calls a  shell script
that installs them, starts the necessary services and runs rpmupdate.NsA   http://web.mit.edu/afs/athena/system/rhlinux/athena-9.0/free/RPMSc     sX      d k  l }  d }   t i i |  d  d |  }  t i | d  d S(   s*   Get a copy of the latest release-rpms file(   s   latest_version_strings   /afs/athena/system/rhlinuxs   controls   list-s   /var/athena/release-rpmsN(	   s   latest_versions   latest_version_strings	   base_names   oss   paths   joins   control_lists   shutils   copy(   s	   base_names   latest_version_strings   control_list(    (    s   athenafy.pys   get_release_rpms s   	c  	   sΐ    t  i d  i   }  g  }  xR d d d d g d  r9 }   t t i |   i	 |  o  | i
 |   n q< W | o3  t o% t  i d t i |   p t  n # xύ d d	 d
 d g d # rδ } % d | } & t  i i d |  } ' t | d  } ( t i t  i i t |   } ) xM ) d oB * | i d d  } + | d j o + Pn , | i |  q8W- | i   . t o t  i d |  p t  qΡ Wd  S(   Ns   rpm -qas	   krb5-libss   openldaps   sendmails   athena-basei    s   rpm -e s
   base-9.0-3s
   afs-9.0-17s   rpmupdate-9.0-15s   krb5-9.0-14s   athena-%s.i386.rpms   /roots   wi   i
   i   s    s   /bin/rpm --replacepkgs -Uhv (   s   oss   popens	   readliness   rpmss	   to_removes   rpm_names   filters   res   compiles   matchs   appends	   __debug__s   systems   strings   joins   AssertionErrors   names	   full_names   paths   opens   outputs   urllibs   urlopens   rpm_urls   input_s   reads   nexts   writes   close(	   s   rpm_names   paths	   full_names   names   nexts   input_s	   to_removes   rpmss   output(    (    s   athenafy.pys   install_rpms s,   	 	
3 	! 
 c     s   0 2 t  d  }  3 t o t i d |   p t  4 t i d  i   } 5 t o% t	 i
 | d |   d j p t  d  S(   Ns#   Please enter your Athena username: s   /usr/athena/bin/kinit s   /usr/athena/bin/klists   Principal: i   (   s	   raw_inputs   names	   __debug__s   oss   systems   AssertionErrors   popens   reads   ticketss   strings   find(   s   names   tickets(    (    s   athenafy.pys   get_krb_tickets0 s   &c     s   7 9 t    : t   ; t o t i d  p t  = d k l } > t i d  ? d d | }  A t o t i |   p t  C t
   d  S(   Ns   /etc/rc.d/init.d/afs start(   s   latest_version_strings#   /afs/athena.mit.edu/system/rhlinux/s&   /etc/athena/rpmupdate -h -p /dev/null s   control/list-(   s   install_rpmss   get_krb_ticketss	   __debug__s   oss   systems   AssertionErrors   latest_versions   latest_version_strings   chdirs   update_commands   get_release_rpms(   s   update_commands   latest_version_string(    (    s   athenafy.pys   main7 s   

""s   __main__(   s   __doc__s   check_partitionss   urllibs   oss   shutils   strings   res   rpm_urls   get_release_rpmss   install_rpmss   get_krb_ticketss   mains   __name__(   s   mains   oss   get_release_rpmss   check_partitionss   install_rpmss   shutils   res   urllibs   rpm_urls   strings   get_krb_tickets(    (    s   athenafy.pys   ? s   0	
 