Esempio n. 1
0
    def bom(self):
        """
        Convenience accessor returning a :py:class:`ZAbom.bom` for the bom in *oedir*.
        """
        svnrevbom = self.svnrev(self.bomfile())

        if self.bom_obsolete(svnrevbom):
            self.logger.debug('(Re)reading bom from {}...'.format(self.bomfile()))
            self._bom = ZAbom.bom(self.bomfile())
            self._last_read_bom = svnrevbom

        return self._bom
Esempio n. 2
0
    parser = argparse.ArgumentParser(description='apply a submission.')

    parser.add_argument('requester')
    parser.add_argument('bomfile')
    parser.add_argument('speculation')

    options = parser.parse_args()

    if '<' in options.requester:
        # rip out requester email
        toss, toss, hold = options.requester.partition('<')
        options.requester, toss, toss = hold.rpartition('>')

    if options.speculation[0] == "'" and options.speculation[-1] == "'":
        options.speculation = options.speculation[1:-1]

    return options

if __name__ == '__main__':
    options = getopts()
    
    bom = ZAbom.bom(options.bomfile, dereference=False)
    owners = bom.speculate(options.speculation, options.requester)

    tmpfile = options.bomfile + '-new'
    bom.write(tmpfile)
    os.rename(tmpfile, options.bomfile)

    print(owners)