Exemplo n.º 1
0
    def get_keypair_creators(self, outputs_pk_key=None):
        """
        Returns a list of keypair creator objects as configured by the heat
        template
        :return: list() of OpenStackKeypair objects
        """

        out = list()

        keypairs = heat_utils.get_stack_keypairs(self.__heat_cli, self.__nova,
                                                 self.__stack)

        for keypair in keypairs:
            settings = settings_utils.create_keypair_config(
                self.__heat_cli, self.__stack, keypair, outputs_pk_key)
            creator = OpenStackKeypair(self._os_creds, settings)
            out.append(creator)

            try:
                creator.initialize()
            except Exception as e:
                logger.error(
                    'Unexpected error initializing volume type creator - %s',
                    e)

        return out
Exemplo n.º 2
0
def create_keypair(os_creds, keypair_settings, cleanup=False):
    """
    Creates a keypair that can be applied to an instance
    :param os_creds: The OpenStack credentials object
    :param keypair_settings: The KeypairConfig object
    :param cleanup: Denotes whether or not this is being called for cleanup
    :return: A reference to the keypair creator object
    """
    keypair_creator = OpenStackKeypair(os_creds, keypair_settings)

    if cleanup:
        keypair_creator.initialize()
    else:
        keypair_creator.create()
    return keypair_creator