def GetP4Snapshot(self, p4view):
        p4client = perforce.CommandsFactory(self.P4_CHECKOUT_DIR, p4view)

        if self._p4_snapshot:
            return p4client.CheckoutFromSnapshot(self._p4_snapshot)
        else:
            return p4client.SetupAndDo(p4client.Sync(), p4client.Remove())
Exemplo n.º 2
0
  def __init__(self):
    self.buildit_path = os.path.join(self.CHECKOUT_DIR, 'gcctools', 'crosstool',
                                     'v15')

    self.buildit_work_dir = 'buildit-tmp'
    self.buildit_work_dir_path = os.path.join('$JOB_TMP', self.buildit_work_dir)
    self.dejagnu_output_path = os.path.join(self.buildit_work_dir_path,
                                            'dejagnu-output')

    paths = {
        'gcctools': [
            'crosstool/v15/...', 'scripts/...'
        ],
        'gcctools/google_vendor_src_branch': [
            'binutils/binutils-2.21/...', 'gdb/gdb-7.2.x/...',
            'zlib/zlib-1.2.3/...'
        ],
        'gcctools/vendor_src': [
            'gcc/google/gcc-4_6/...'
        ]
    }

    p4view = perforce.View('depot2',
                           perforce.PathMapping.ListFromPathDict(paths))

    self.p4client = perforce.CommandsFactory(self.CHECKOUT_DIR, p4view)
Exemplo n.º 3
0
 def PullSources(self):
     client_name = socket.gethostname()
     client_name += tempfile.mkstemp()[1].replace('/', '-')
     mappings = self.mappings
     p4view = perforce.View('depot2', GetCanonicalMappings(mappings))
     p4client = perforce.CommandsFactory(self._root_dir,
                                         p4view,
                                         name=client_name)
     command = p4client.SetupAndDo(p4client.Sync(self.revision))
     ret = self._ce.RunCommand(command)
     assert ret == 0, 'Could not setup client.'
     command = p4client.InCheckoutDir(p4client.SaveCurrentCLNumber())
     ret, o, _ = self._ce.RunCommandWOutput(command)
     assert ret == 0, 'Could not get version from client.'
     self.revision = re.search('^\d+$', o.strip(), re.MULTILINE).group(0)
     command = p4client.InCheckoutDir(p4client.Remove())
     ret = self._ce.RunCommand(command)
     assert ret == 0, 'Could not delete client.'
     return 0