1

I have been trying to run this code unsuccessfully, i am using python and the AWS CDK:

        applicationTargetGroup = elbv2.ApplicationTargetGroup(self, 'ApplicationTargetGroup', 
                            target_type=elbv2.TargetType.IP,
                            target_group_name='stg-test',
                            protocol=elbv2.ApplicationProtocol.HTTP,
                            port=8080,
                            vpc=vpc,
                            health_check=elbv2.HealthCheck(path='/images/favicon.ico')
                            )

    httpsListener.add_target_groups('TargetGroups', 
                            applicationTargetGroup, 
                            host_header='host.domain.com', 
                            priority=107)

The error I get is the following:

File "/home/user/workspace/test/cdk/pytest/pytest/pytest_stack.py", line 33, in init httpsListener.add_target_groups('TargetGroups', applicationTargetGroup) TypeError: add_target_groups() takes 2 positional arguments but 3 were given

I dont understand what I am doing wrong as the documentation states is ok:

add_target_groups(id, *, target_groups, conditions=None, host_header=None, path_pattern=None, path_patterns=None, priority=None)

AWS DOCS

thanks

Chop Labalagun
  • 592
  • 1
  • 6
  • 19
  • Arguments after a `*` in the function signature are passed by keyword only. See [this answer](https://stackoverflow.com/a/15074848/7867968) for more clarification, or also [PEP-3102](https://www.python.org/dev/peps/pep-3102/) – C.Nivs Jan 29 '21 at 01:24
  • so are you saying i should do it like this: httpsListener.add_target_groups('TargetGroups', target_groups=applicationTargetGroup, host_header='host.domain.com', priority=107) – Chop Labalagun Jan 29 '21 at 01:31
  • Yes, that's exactly right – C.Nivs Jan 29 '21 at 01:31

1 Answers1

1

The docs for add_target_groups it tell that applicationTargetGroup is passed a key word argument and a list:

    httpsListener.add_target_groups(
                  'TargetGroups', 
                  target_groups=[applicationTargetGroup],  
                  host_header='host.domain.com', 
                  priority=107)
Marcin
  • 215,873
  • 14
  • 235
  • 294