diff --git a/docs/list_of_requirements.png b/docs/list_of_requirements.png deleted file mode 100644 index 9468aae..0000000 Binary files a/docs/list_of_requirements.png and /dev/null differ diff --git a/glidein_start.sh b/glidein_start.sh index be7c3a7..33291fd 100755 --- a/glidein_start.sh +++ b/glidein_start.sh @@ -114,11 +114,20 @@ export _condor_UPDATE_COLLECTOR_WITH_TCP="True" export _campusfactory_CAMPUSFACTORY_LOCATION=$PWD export _condor_USER_JOB_WRAPPER=$PWD/user_job_wrapper.sh -if [ ! -e $GLIDEIN_DIR/glidein.tar.gz ]; then - wget -nv http://prod-exe.icecube.wisc.edu/glidein.tar.gz - GLIDEIN_DIR=$PWD +# detect CVMFS and get the OS type +OS_ARCH="RHEL_6_x86_64" +. $GLIDEIN_DIR/os_arch.sh + +if [ -e $GLIDEIN_DIR/glidein.tar.gz ]; then + tar xzf $GLIDEIN_DIR/glidein.tar.gz +else + if wget -nv http://prod-exe.icecube.wisc.edu/glidein-$OS_ARCH.tar.gz ; then + tar xzf glidein-$OS_ARCH.tar.gz + else + wget -nv http://prod-exe.icecube.wisc.edu/glidein.tar.gz + tar xzf glidein.tar.gz + fi fi -tar xzf $GLIDEIN_DIR/glidein.tar.gz export campus_factory_dir=$PWD diff --git a/submit.py b/submit.py index 52cdc46..f4c3ef5 100755 --- a/submit.py +++ b/submit.py @@ -182,9 +182,12 @@ def write_glidein_part(self, f, local_dir=None, glidein_tarball=None, glidein_loc = os.getcwd() if glidein_tarball: self.write_line(f, 'ln -fs %s %s' % (glidein_tarball, os.path.basename(glidein_tarball))) - self.write_line(f, 'ln -fs %s %s' % (os.path.join(glidein_loc, glidein_script), glidein_script)) if not os.path.isfile(os.path.join(glidein_loc, glidein_script)): raise Exception("glidein_script %s does not exist!"%os.path.join(glidein_loc, glidein_script)) + self.write_line(f, 'ln -fs %s %s' % (os.path.join(glidein_loc, glidein_script), glidein_script)) + if not os.path.isfile(os.path.join(glidein_loc, 'os_arch.sh')): + raise Exception("%s does not exist!"%os.path.join(glidein_loc, 'os_arch.sh')) + self.write_line(f, 'ln -fs %s %s' % (os.path.join(glidein_loc, 'os_arch.sh'), 'os_arch.sh')) f.write('env -i CPUS=$CPUS GPUS=$GPUS MEMORY=$MEMORY DISK=$DISK WALLTIME=$WALLTIME ') if 'site' in self.config['Glidein']: @@ -597,6 +600,10 @@ def make_submit_file(self, filename, env_wrapper, state, group_jobs): if not os.path.isfile(glidein_script): raise Exception("no glidein_script provided") infiles.append(glidein_script) + osarch_script = os.path.join(os.path.dirname(glidein_script),'os_arch.sh') + if not os.path.isfile(osarch_script): + raise Exception("os_arch.sh not found") + infiles.append(osarch_script) if "tarball" in self.config["Glidein"]: if not os.path.isfile(self.config["Glidein"]["tarball"]): raise Exception("provided tarball does not exist")