Exemple #1
0
 def canRunTest(cls):
     try:
         urllib2.urlopen('http://' + cls.API_NETINFO).read()
     except urllib2.HTTPError:
         return True
     except:
         get_logger(cls).debug("canRunTest:", exc_info=True)
         # Enable xmlrpclib verbose logging
         logging.getLogger().setLevel(logging.DEBUG)
         return False
 def canRunTest(cls):
     try:
         urllib2.urlopen('http://' + cls.API_NETINFO).read()
     except urllib2.HTTPError:
         return True
     except:
         get_logger(cls).debug("canRunTest:", exc_info=True)
         # Enable xmlrpclib verbose logging
         logging.getLogger().setLevel(logging.DEBUG)
         return False
Exemple #3
0
    def __call__(self, **kwds):
        logger = get_logger(self)

        magento_catalog_service = self._create_magento_catalog_service(**kwds)
        yogento_catalog_service = self._create_yogento_catalog_service(**kwds)

        magento_skus = set(magento_catalog_service.get_product_skus())
        yogento_skus = set(yogento_catalog_service.get_product_skus())

        yogento_extra_skus = yogento_skus - magento_skus
        if len(yogento_extra_skus) > 0:
            logger.info(
                "deleting products [%s] not present in Magento from Yogento",
                ', '.join(tuple(yogento_extra_skus)))
            for sku in yogento_extra_skus:
                yogento_catalog_service.delete_product_by_sku(sku)

        # Process one SKU at a time, to avoid overloading Magento
        for magento_sku in magento_skus:
            logger.info("getting product '%s' from Magento", magento_sku)
            try:
                magento_product = \
                    magento_catalog_service.get_product_by_sku(magento_sku)
            except NoSuchProductException:
                logger.warning("no such Magento product '%s'", magento_sku)
                continue

            logger.info("putting product '%s' from Magento to Yogento",
                        magento_sku)
            yogento_catalog_service.put_product(magento_product)
Exemple #4
0
    def __call__(self, **kwds):
        logger = get_logger(self)

        magento_catalog_service = self._create_magento_catalog_service(**kwds)
        yogento_catalog_service = self._create_yogento_catalog_service(**kwds)

        magento_skus = set(magento_catalog_service.get_product_skus())
        yogento_skus = set(yogento_catalog_service.get_product_skus())

        yogento_extra_skus = yogento_skus - magento_skus
        if len(yogento_extra_skus) > 0:
            logger.info(
                "deleting products [%s] not present in Magento from Yogento",
                ', '.join(tuple(yogento_extra_skus))
            )
            for sku in yogento_extra_skus:
                yogento_catalog_service.delete_product_by_sku(sku)

        # Process one SKU at a time, to avoid overloading Magento
        for magento_sku in magento_skus:
            logger.info("getting product '%s' from Magento", magento_sku)
            try:
                magento_product = \
                    magento_catalog_service.get_product_by_sku(magento_sku)
            except NoSuchProductException:
                logger.warning("no such Magento product '%s'", magento_sku)
                continue

            logger.info(
                "putting product '%s' from Magento to Yogento",
                magento_sku
            )
            yogento_catalog_service.put_product(magento_product)