def list_policies()

in source/state_machine_handler.py [0:0]


    def list_policies(self):
        self.logger.info("Executing: " + self.__class__.__name__ + "/"
                         + inspect.stack()[0][3])
        self.logger.info(self.params)
        # Check if PolicyName attribute exists in event,
        # if so, it is called for attach or detach policy
        if 'PolicyName' in self.event:
            policy_name = self.event.get('PolicyName')
        else:
            policy_name = self.params.get('PolicyDocument').get('Name')

        # Check if SCP already exist
        scp = SCP(self.logger)
        pages = scp.list_policies()

        for page in pages:
            policies_list = page.get('Policies')

            # iterate through the policies list
            for policy in policies_list:
                if policy.get('Name') == policy_name:
                    self.logger.info("Policy Found")
                    self.event.update({'PolicyId': policy.get('Id')})
                    self.event.update({'PolicyArn': policy.get('Arn')})
                    self.event.update({'PolicyExist': "yes"})
                    return self.event
                else:
                    continue

        self.event.update({'PolicyExist': "no"})
        return self.event