Esempio n. 1
0
    def testCleanQuarantine(self):
        now = datetime.now()
        past = str(now - timedelta(days=1))
        way_past = str(now - timedelta(days=3))

        mock = Mock(
            return_value=[
                {"quarantine": past, "uuid": "past"},
                {"quarantine": way_past, "uuid": "way_past"},
                {"quarantine": str(now), "uuid": "now"},
            ]
        )

        config = ConfigHolder()
        config.set("endpoint", "something")
        pd = PersistentDisk(config)
        pd.quarantinePeriod = "2d"

        pd.describeVolumes = mock
        pd.deleteVolume = Mock()
        pd._setPDiskUserCredentials = Mock()

        pd.cleanQuarantine()

        self.assertEqual(("way_past",), pd.deleteVolume.call_args[0])

        self.assertEqual(1, pd.deleteVolume.call_count)
Esempio n. 2
0
 def _volume_delete(self, uuid):
     pdisk = PersistentDisk(self.slConfigHolder)
     wait_time = 30
     time_stop = time.time() + wait_time
     while 0 != int(pdisk.getValue('count', uuid)):
         if time.time() >= time_stop:
             self._print_detail(
                 'Disk %s is still in use after waiting for %s sec.' %
                 (uuid, wait_time))
         time.sleep(3)
     return pdisk.deleteVolume(uuid)