#!/usr/bin/python

import urllib2
import libxml2
import sys
import re

#download vosummary (for oasis enabled)
response = urllib2.urlopen("https://my.opensciencegrid.org/vosummary/xml?summary_attrs_showoasis=on&all_vos=on&active=on&active_value=1&oasis=on&oasis_value=1&sort_key=name")
xml = response.read()
doc = libxml2.parseDoc(xml)

#parse out the VO names
for vo in doc.xpathEval("//VO"):

        #create good unixname
        voname = vo.xpathEval("Name")[0].content
        voname = re.sub(r'[^/a-z0-9]+', '', voname.lower())

        username = "ouser."+voname
        stagedir="/stage/oasis/"+voname

        print "id -u",username,"&>/dev/null || (/usr/sbin/useradd",username,"-d","/home/login/"+username,"-p","`pwgen 24 -y -n -s` && ([ -d",stagedir,"] || (mkdir",stagedir,"&& chown",username,stagedir,"&& chgrp",username,stagedir,"&& chmod 755",stagedir,")))"
