def _create_strategies(provisioning: dict, strategy_mapping: dict, cache: FileCache) -> list: feature_strategies = [] for strategy in provisioning["strategies"]: try: if "parameters" in strategy.keys(): strategy_provisioning = strategy['parameters'] else: strategy_provisioning = {} if "constraints" in strategy.keys(): constraint_provisioning = strategy['constraints'] else: constraint_provisioning = {} feature_strategies.append(strategy_mapping[strategy['name']]( constraints=constraint_provisioning, parameters=strategy_provisioning )) except Exception as excep: if FAILED_STRATEGIES not in cache.keys(): cache[FAILED_STRATEGIES] = [] # Initialize cache key only if failures exist. if strategy['name'] not in cache[FAILED_STRATEGIES]: LOGGER.warning("Failed to load strategy. This may be a problem with a custom strategy. Exception: %s", excep) cache[FAILED_STRATEGIES].append(strategy['name']) return feature_strategies
print('main.py -i <code>') sys.exit(2) for opt, arg in opts: if opt == '-h': print('Used:') print('main.py -o <slug>') print('main.py -g all') print('main.py -i <code>') sys.exit() elif opt in ("-i", "--code"): YANDEX_CODE = arg elif opt in ("-o", "--slug"): MY_SLUG = arg # start if "access_token" not in mycache.keys() or not YANDEX_CODE == False: query = { 'grant_type': 'authorization_code', 'code': YANDEX_CODE, 'client_id': YANDEX_ID, 'client_secret': YANDEX_PASS } r = requests.post("https://oauth.yandex.ru/token", data=query, headers=YANDEX_REQUEST) if (r.status_code == 200): data = r.json() access_token = data['access_token'] mycache['access_token'] = access_token