Example #1
0
 def __getitem__(self, promotion_name):
     """get promotion by name."""
     for row in self._data.get('processes', []):
         if row["name"] == promotion_name:
             return self.get_jenkins_obj().Promotion(row['url'], promotion_name, self.job)
         
     raise exception.UnknownPromotion(promotion_name)
Example #2
0
    def promote(self, name):
        """force promotion by name."""
        if self.is_running:
            raise exception.NotStopYet("%s is still running." % self.name)

        url = "%s/promotion/forcePromotion?name=%s" % (self.url, name)
        try:
            self.get_jenkins_obj().requester.post_and_confirm_status(url, data='')
        except exception.RequestError:
            raise exception.UnknownPromotion(name)

        # update info
        self.poll()