def inject_commands(command_table, session, **kwargs): """ Inject custom 'aws deploy' commands. """ command_table['push'] = Push(session) command_table['register'] = Register(session) command_table['deregister'] = Deregister(session) command_table['install'] = Install(session) command_table['uninstall'] = Uninstall(session)
def setUp(self): self.instance_name = 'instance-name' self.tags = [{'Key': 'k1', 'Value': 'v1'}] self.iam_user_arn = 'arn:aws:iam::012345678912:user/{0}'.format( self.instance_name) self.access_key_id = 'ACCESSKEYID' self.region = 'us-east-1' self.policy_name = 'codedeploy-agent' self.endpoint_url = 'https://codedeploy.aws.amazon.com' self.args = Namespace() self.args.instance_name = self.instance_name self.args.no_delete_iam_user = False self.globals = Namespace() self.globals.region = self.region self.globals.endpoint_url = self.endpoint_url self.globals.verify_ssl = False self.codedeploy = mock.MagicMock() self.codedeploy.get_on_premises_instance.return_value = { 'instanceInfo': { 'iamUserArn': self.iam_user_arn, 'tags': None } } self.iam = mock.MagicMock() self.list_user_policies = mock.MagicMock() self.list_user_policies.paginate.return_value = [{ 'PolicyNames': [self.policy_name] }] self.list_access_keys = mock.MagicMock() self.list_access_keys.paginate.return_value = [{ 'AccessKeyMetadata': [{ 'AccessKeyId': self.access_key_id }] }] self.iam.get_paginator.side_effect = [ self.list_user_policies, self.list_access_keys ] self.session = mock.MagicMock() self.session.create_client.side_effect = [self.codedeploy, self.iam] self.deregister = Deregister(self.session)