Changeset c5074d2 in flex_extract.git for source/python/install.py


Ignore:
Timestamp:
Oct 9, 2018, 8:42:16 PM (6 years ago)
Author:
Anne Philipp <anne.philipp@…>
Branches:
master, ctbto, dev
Children:
aa275fc
Parents:
0a06607
Message:

added making of namelist file and jobscript via genshi templates

File:
1 edited

Legend:

Unmodified
Added
Removed
  • source/python/install.py

    r0aaeb04 rc5074d2  
    396396
    397397    stream = compile_template.generate(
     398        usergroup = ecgid,
    398399        username = ecuid,
    399         usergroup = ecgid,
    400400        version_number = _config._VERSION_STR,
    401401        fp_root_scripts = fp_root,
     
    410410        f.write(stream.render('text'))
    411411
    412 
    413     # template = os.path.join(_config.PATH_REL_TEMPLATES,
    414                             # _config.TEMPFILE_INSTALL_COMPILEJOB)
    415     # with open(template) as f:
    416         # fdata = f.read().split('\n')
    417 
    418 
    419     # with open(compilejob, 'w') as fo:
    420         # for data in fdata:
    421             # if 'MAKEFILE=' in data:
    422                 # data = 'export MAKEFILE=' + makefile
    423             # elif 'FLEXPART_ROOT_SCRIPTS=' in data:
    424                 # if fp_root != '../':
    425                     # data = 'export FLEXPART_ROOT_SCRIPTS=' + fp_root
    426                 # else:
    427                     # data = 'export FLEXPART_ROOT_SCRIPTS=$HOME'
    428             # elif target.lower() != 'local':
    429                 # if '--workdir' in data:
    430                     # data = '#SBATCH --workdir=/scratch/ms/' + \
    431                             # ecgid + '/' + ecuid
    432                 # elif '##PBS -o' in data:
    433                     # data = '##PBS -o /scratch/ms/' + ecgid + '/' + ecuid + \
    434                            # 'flex_ecmwf.$Jobname.$Job_ID.out'
    435                 # elif 'FLEXPART_ROOT_SCRIPTS=' in data:
    436                     # if fp_root != '../':
    437                         # data = 'export FLEXPART_ROOT_SCRIPTS=' + fp_root
    438                     # else:
    439                         # data = 'export FLEXPART_ROOT_SCRIPTS=$HOME'
    440             # fo.write(data + '\n')
    441 
    442412    return
    443413
     
    470440        <nothing>
    471441    '''
    472     fp_root_path_to_python = os.path.join(fp_root, _config.FLEXEXTRACT_DIRNAME,
    473                          _config.PATH_REL_PYTHON)
    474 
    475     template = os.path.join(_config.PATH_REL_TEMPLATES,
    476                             _config.TEMPFILE_INSTALL_JOB)
    477     with open(template) as f:
    478         fdata = f.read().split('\n')
    479 
    480     jobfile_temp = os.path.join(_config.PATH_REL_TEMPLATES,
    481                                 _config.TEMPFILE_JOB)
    482     with open(jobfile_temp, 'w') as fo:
    483         for data in fdata:
    484             if '--workdir' in data:
    485                 data = '#SBATCH --workdir=/scratch/ms/' + ecgid + '/' + ecuid
    486             elif '##PBS -o' in data:
    487                 data = '##PBS -o /scratch/ms/' + ecgid + '/' + \
    488                         ecuid + 'flex_ecmwf.$Jobname.$Job_ID.out'
    489             elif  'export PATH=${PATH}:' in data:
    490                 data += fp_root_path_to_python
    491 
    492             fo.write(data + '\n')
     442    from genshi.template.text import NewTextTemplate
     443    from genshi.template import  TemplateLoader
     444
     445    loader = TemplateLoader(_config.PATH_TEMPLATES, auto_reload=False)
     446    compile_template = loader.load(_config.TEMPFILE_INSTALL_JOB,
     447                                   cls=NewTextTemplate)
     448
     449    fp_root_path_to_python = os.path.join(fp_root,
     450                                          _config.FLEXEXTRACT_DIRNAME,
     451                                          _config.PATH_REL_PYTHON)
     452
     453    stream = compile_template.generate(
     454        usergroup = ecgid,
     455        username = ecuid,
     456        version_number = _config._VERSION_STR,
     457        fp_root_path = fp_root_path_to_python,
     458    )
     459
     460    tempjobfile = os.path.join(_config.PATH_TEMPLATES,
     461                               _config.TEMPFILE_JOB)
     462
     463    with open(tempjobfile, 'w') as f:
     464        f.write(stream.render('text'))
     465
    493466    return
    494467
Note: See TracChangeset for help on using the changeset viewer.
hosted by ZAMG