コード例 #1
0
ファイル: displayer.py プロジェクト: imclab/serverinfo
def generate_html():
    index_subdirs = {'site': 'sites',
                     'buildout': 'buildouts',
                     'server': 'servers',
                     'egg': 'eggs'}
    now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M')

    data['site'] = data['apache']
    data['site'].update(data['nginx'])
    for kind in ['buildout', 'server', 'egg', 'site']:
        for obj in data[kind].values():
            obj.write()
        # Overview.
        subdir = index_subdirs[kind]
        outfile = os.path.join(utils.html_dir(),
                               subdir,
                               'index.html')
        template = jinja_env.get_template('index.html')
        open(outfile, 'w').write(template.render(
                view={'title': 'Overview of %s' % subdir,
                      'objs': sorted(data[kind].values()),
                      'generated_on': now}))
        logger.info("Wrote %s", outfile)

    outfile = os.path.join(utils.html_dir(), 'index.html')
    template = jinja_env.get_template('root.html')
    open(outfile, 'w').write(template.render(
            view={'title': 'Root overview',
                  'subitems': index_subdirs.values(),
                  'generated_on': now}))
    logger.info("Wrote %s", outfile)
コード例 #2
0
ファイル: displayer.py プロジェクト: imclab/serverinfo
 def write(self):
     outfile = os.path.join(utils.html_dir(),
                            self.subdir,
                            '%s.html' % self.id)
     template = jinja_env.get_template(self.template_name)
     open(outfile, 'w').write(template.render(view=self))
     logger.info("Wrote %s", outfile)
コード例 #3
0
ファイル: displayer.py プロジェクト: imclab/serverinfo
def main():
    utils.setup_logging()
    for subdir in ['eggs', 'servers', 'buildouts', 'sites']:
        utils.clear_directory_contents(os.path.join(
                utils.html_dir(), subdir))
    collect_data()
    generate_html()