Changeset 12435 for trunk


Ignore:
Timestamp:
01/26/11 10:56:27 (13 years ago)
Author:
ramonb
Message:

cmt.py:

  • support for ramonb_extras multi-file output store tags
  • backwards compatible with single-file output tag
  • include filename printing during generation to stdout
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sara_cmt/cmt.py

    r12051 r12435  
    322322
    323323    if not parser.values.DRYRUN:
    324         write_msg = 'Writing outputfile'
    325         created_msg = 'Outputfile is created'
    326         try:
    327             logger.info(write_msg)
    328             f = open(c['output'], 'w')
    329             f.writelines(res)
    330             f.close()
    331             logger.info(created_msg)
    332         except IOError, e:
    333             logger.error('Failed creating outputfile: %s' % e)
    334         except KeyError, e:
    335             logger.error('No output defined in template')
     324       
     325        if not c.has_key( 'stores' ):
     326       
     327                c[ 'stores' ] = { c['output'] : res }
     328
     329        for store_file, store_output in c['stores'].items():
     330
     331                write_msg = 'Writing outputfile: %s' %store_file
     332                created_msg = 'Outputfile(s) created: %s' %store_file
     333
     334                try:
     335                    logger.info(write_msg)
     336                    f = open(store_file, 'w')
     337                    f.writelines(store_output)
     338                    f.close()
     339                    logger.info(created_msg)
     340                except IOError, e:
     341                    logger.error('Failed creating outputfile: %s' % e)
     342                except KeyError, e:
     343                    logger.error('No output/stores defined in template')
     344
    336345    else:
    337         logger.info('[DRYRUN] %s' % write_msg)
    338         logger.info('[DRYRUN] %s' % created_msg)
     346        logger.info('[DRYRUN] Not writing files' )
     347        logger.info('[DRYRUN] Nothing created' )
    339348
    340349    if not parser.values.DRYRUN:
Note: See TracChangeset for help on using the changeset viewer.