#!/usr/bin/python -B

import sys
import git_tags
versions = [(r.version, r.tag) for r in git_tags.releases(sys.argv[1])] + [('0.9.4', 'beaker-0.9.4-1')]
changelogs = []
for i in xrange(len(versions) - 1):
    changelog = 'releases/beaker-%s-ChangeLog' % versions[i][0]
    print '%s: changelogs.mk git_tags.py' % changelog
    print '\tGIT_DIR=$(BEAKER_GIT) git log --no-notes --no-merges ' \
          '%s..%s >$@' % (versions[i + 1][1], versions[i][1])
    changelogs.append(changelog)
print 'CHANGELOGS = %s' % ' '.join(changelogs)
#!/usr/bin/python -B

import sys
import git_tags
print 'DOWNLOADS = \\'
for release in git_tags.releases(sys.argv[1]):
    for download in release.downloads:
        print '    releases/%s \\' % download
print
Example #3
0
</feed>
''')

if __name__ == '__main__':
    from optparse import OptionParser
    parser = OptionParser('usage: %prog [options] GIT_DIR',
                          description=__doc__)
    parser.add_option('-f',
                      '--format',
                      type='choice',
                      choices=['html', 'atom'],
                      help='Output format [default: %default]')
    parser.set_defaults(format='html')
    options, args = parser.parse_args()
    if len(args) != 1:
        parser.error('Specify Beaker git dir')

    releases = git_tags.releases(args[0])
    if options.format == 'html':
        stream = html_template.generate(**globals())
        # Set encoding to None to default to a unicode instance. Otherwise
        # stdout will try to re-encode the utf-8 string resulting in a
        # UnicodeEncodeError
        sys.stdout.write(stream.render('xhtml', doctype='html5',
                                       encoding=None))
    elif options.format == 'atom':
        stream = atom_template.generate(**globals())
        sys.stdout.write(stream.render('xml'))
    else:
        assert False
        <p py:for="download in release.downloads">
            <a href="${download}">${download}</a><br />
            <span class="hash">SHA1: <tt>${sha1(download)}</tt></span>
        </p>
    </div>
    </content>
</entry>

</feed>
''')

if __name__ == '__main__':
    from optparse import OptionParser
    parser = OptionParser('usage: %prog [options] GIT_DIR', description=__doc__)
    parser.add_option('-f', '--format', type='choice', choices=['html', 'atom'],
            help='Output format [default: %default]')
    parser.set_defaults(format='html')
    options, args = parser.parse_args()
    if len(args) != 1:
        parser.error('Specify Beaker git dir')

    releases = git_tags.releases(args[0])
    if options.format == 'html':
        stream = html_template.generate(**globals())
        sys.stdout.write(stream.render('xhtml', doctype='html5', encoding='utf8'))
    elif options.format == 'atom':
        stream = atom_template.generate(**globals())
        sys.stdout.write(stream.render('xml'))
    else:
        assert False
Example #5
0
#!/usr/bin/python -B

import sys
import git_tags

print 'DOWNLOADS = \\'
for release in git_tags.releases(sys.argv[1]):
    for download in release.downloads:
        print '    releases/%s \\' % download
print
Example #6
0
#!/usr/bin/python -B

import sys
import git_tags
versions = [(r.version, r.tag) for r in git_tags.releases(sys.argv[1])
            ] + [('0.8.2', 'beaker-0.8.2-1')]
changelogs = []
for i in xrange(len(versions) - 1):
    changelog = 'releases/beaker-%s-ChangeLog' % versions[i][0]
    print '%s: changelogs.mk git_tags.py' % changelog
    print '\tGIT_DIR=$(BEAKER_GIT) git log --no-notes --no-merges ' \
          '%s..%s >$@' % (versions[i + 1][1], versions[i][1])
    changelogs.append(changelog)
print 'CHANGELOGS = %s' % ' '.join(changelogs)