def test_prompt_for_ec2_keyname__no_keys_exist(
            self, get_boolean_response_mock, validate_action_mock,
            get_key_pairs_mock, generate_and_upload_keypair_mock):
        get_key_pairs_mock.return_value = []
        get_boolean_response_mock.return_value = True

        sshops.prompt_for_ec2_keyname('my-environment')

        generate_and_upload_keypair_mock.assert_called_once_with([])
        validate_action_mock.assert_called_once()
    def test_prompt_for_ec2_keyname__get_boolean_response_to_confirm_termination(
            self, get_boolean_response_mock, get_key_pairs_mock,
            generate_and_upload_keypair_mock, prompt_for_item_in_list_mock):
        get_key_pairs_mock.return_value = mock_responses.DESCRIBE_KEY_PAIRS_RESPONSE[
            'KeyPairs']
        prompt_for_item_in_list_mock.return_value = 'key_pair_2'
        get_boolean_response_mock.return_value = True

        sshops.prompt_for_ec2_keyname()

        generate_and_upload_keypair_mock.assert_not_called()
    def test_prompt_for_ec2_keyname__choose_existing_key(
            self, validate_action_mock, get_key_pairs_mock,
            generate_and_upload_keypair_mock, prompt_for_item_in_list_mock):
        get_key_pairs_mock.return_value = mock_responses.DESCRIBE_KEY_PAIRS_RESPONSE[
            'KeyPairs']
        prompt_for_item_in_list_mock.return_value = 'key_pair_2'

        sshops.prompt_for_ec2_keyname('my-environment')

        validate_action_mock.assert_called_once_with(
            'To confirm, type the environment name', 'my-environment')
        generate_and_upload_keypair_mock.assert_not_called()
Exemplo n.º 4
0
    def get_keyname(self, default=None):
        keyname = self.app.pargs.keyname

        if not keyname:
            keyname = default

        # Get keyname from config file, if exists
        if not keyname:
            try:
                keyname = commonops.get_default_keyname()
            except NotInitializedError:
                keyname = None

        if self.force_non_interactive and not self.interactive:
            return keyname

        if keyname is None or \
                (self.interactive and not self.app.pargs.keyname):
            # Prompt for one
            keyname = sshops.prompt_for_ec2_keyname()

        elif keyname != -1:
            commonops.upload_keypair_if_needed(keyname)

        return keyname
Exemplo n.º 5
0
    def get_keyname(self, default=None):
        keyname = self.app.pargs.keyname

        if not keyname:
            keyname = default

        # Get keyname from config file, if exists
        if not keyname:
            try:
                keyname = commonops.get_default_keyname()
            except NotInitializedError:
                keyname = None

        if self.force_non_interactive and not self.interactive:
            return keyname

        if keyname is None or \
                (self.interactive and not self.app.pargs.keyname):
            # Prompt for one
            keyname = sshops.prompt_for_ec2_keyname()

        elif keyname != -1:
            commonops.upload_keypair_if_needed(keyname)

        return keyname
Exemplo n.º 6
0
    def get_keyname(self, keyname):
        # Get keyname from config file, if exists
        if not keyname:
            try:
                keyname = commonops.get_default_keyname()
            except NotInitializedError:
                keyname = None

        if keyname is None:
            # Prompt for one
            keyname = sshops.prompt_for_ec2_keyname(message=prompts['platforminit.ssh'])
        elif keyname != -1:
            commonops.upload_keypair_if_needed(keyname)

        return keyname
Exemplo n.º 7
0
    def get_keyname(self, keyname):
        # Get keyname from config file, if exists
        if not keyname:
            try:
                keyname = commonops.get_default_keyname()
            except NotInitializedError:
                keyname = None

        if keyname is None:
            # Prompt for one
            keyname = sshops.prompt_for_ec2_keyname(
                message=prompts['platforminit.ssh'])
        elif keyname != -1:
            commonops.upload_keypair_if_needed(keyname)

        return keyname
Exemplo n.º 8
0
def get_keyname(keyname, keyname_of_existing_app, interactive,
                force_non_interactive):
    keyname_passed_through_command_line = not not keyname
    keyname = keyname or keyname_of_existing_app
    if not keyname:
        try:
            keyname = commonops.get_default_keyname()
        except NotInitializedError:
            keyname = None

    if force_non_interactive and not interactive:
        return keyname

    if ((interactive and not keyname_passed_through_command_line)
            or (not keyname and not force_non_interactive)):
        keyname = sshops.prompt_for_ec2_keyname()
    elif keyname != -1:
        commonops.upload_keypair_if_needed(keyname)

    return keyname
Exemplo n.º 9
0
def get_keyname():
    return commonops.get_default_keyname() or sshops.prompt_for_ec2_keyname(
        message=prompts['platforminit.ssh'])