コード例 #1
0
 def download_project_sources(self, snapshot=None, url=None):
     self.snapshot = self.snapshot if self.snapshot else snapshot
     self.url = self.url if self.url else url
     with open(self.build_log_path, 'a') as build_log, \
             open(self.err_log_path, 'a') as err_log:
         if os.path.exists(self.sources_path):
             LOGGER.info('Updating sources for {} project'.format(self.name))
             try:
                 subprocess.check_call(['git', 'checkout', 'master'], cwd=self.sources_path, stdout=build_log, stderr=err_log)
                 subprocess.check_call(['git', 'pull'], cwd=self.sources_path, stdout=build_log, stderr=err_log)
             except Exception as e:
                 LOGGER.error('Cannot update sources for {} project'.format(self.name))
                 raise e
             LOGGER.info('Sources for {} project has been updated'.format(self.name))
         else:
             LOGGER.info('Downloading {} project sources'.format(self.name))
             try:
                 subprocess.check_call(['git', 'clone', self.url], cwd=PLATFORM_PARENT_PATH, stdout=build_log, stderr=err_log)
             except Exception as e:
                 LOGGER.error('Cannot download sources for {} project'.format(self.name))
                 raise e
             LOGGER.info('Sources for {} project has been downloaded'.format(self.name))
         if self.snapshot:
             LOGGER.info('Setting release tag {} for {} project sources'.format(self.snapshot, self.name))
             try:
                 subprocess.check_call(['git', 'checkout', self.snapshot], cwd=self.sources_path, stdout=build_log, stderr=err_log)
             except Exception:
                 LOGGER.warning('Cannot set release tag {} for {} project sources. Using "master" branch.'.format(self.snapshot, self.name))
         self.ref = subprocess.check_output(['git', 'rev-parse', 'HEAD'], cwd=self.sources_path).rstrip()
コード例 #2
0
 def _get_catalog_name_by_release_number(self, release_number):
     for key, value in self._versions_catalog.iteritems():
         if value['release'] == int(release_number):
             return key
     LOGGER.warning(
         'Unknown release number for {} project. Latest version will be used.'
         .format(self.name))
     return LATEST_ATK_VERSION
コード例 #3
0
 def _get_catalog_name_by_release_number(self, release_number):
     for key, value in self._versions_catalog.iteritems():
         if value['release'] == int(release_number):
             return key
     LOGGER.warning('Unknown release number for {} project. Latest version will be used.'.format(self.name))
     return LATEST_ATK_VERSION