troposphere icon indicating copy to clipboard operation
troposphere copied to clipboard

cfn2py does not process attribute classes properly

Open allyunion opened this issue 6 years ago • 0 comments

Traceback (most recent call last):
  File "cf_ecs.py", line 166, in <module>
    SecurityGroups=[Ref(EcsSecurityGroup)],
  File "/home/jylee/work/raptor/venv/lib/python3.6/site-packages/troposphere/__init__.py", line 127, in __init__
    self.__setattr__(k, v)
  File "/home/jylee/work/raptor/venv/lib/python3.6/site-packages/troposphere/__init__.py", line 204, in __setattr__
    self._raise_type(name, v, expected_type)
  File "/home/jylee/work/raptor/venv/lib/python3.6/site-packages/troposphere/__init__.py", line 232, in _raise_type
    expected_type))
TypeError: <class 'troposphere.elasticloadbalancingv2.LoadBalancer'>: ECSALB.LoadBalancerAttributes is <class 'dict'>, expected [<class 'troposphere.elasticloadbalancingv2.LoadBalancerAttributes'>]
(venv) jylee@jalee-ubuntuvm:~/work/raptor/raptor (deploy-template-v4) $ python cf_ecs.py
Traceback (most recent call last):
  File "cf_ecs.py", line 177, in <module>
    Protocol="HTTPS",
  File "/home/jylee/work/raptor/venv/lib/python3.6/site-packages/troposphere/__init__.py", line 127, in __init__
    self.__setattr__(k, v)
  File "/home/jylee/work/raptor/venv/lib/python3.6/site-packages/troposphere/__init__.py", line 204, in __setattr__
    self._raise_type(name, v, expected_type)
  File "/home/jylee/work/raptor/venv/lib/python3.6/site-packages/troposphere/__init__.py", line 232, in _raise_type
    expected_type))
TypeError: <class 'troposphere.elasticloadbalancingv2.Listener'>: ALBListener.Certificates is <class 'dict'>, expected [<class 'troposphere.elasticloadbalancingv2.Certificate'>]
(venv) jylee@jalee-ubuntuvm:~/work/raptor/raptor (deploy-template-v4) $ python cf_ecs.py
Traceback (most recent call last):
  File "cf_ecs.py", line 177, in <module>
    Protocol="HTTPS",
  File "/home/jylee/work/raptor/venv/lib/python3.6/site-packages/troposphere/__init__.py", line 127, in __init__
    self.__setattr__(k, v)
  File "/home/jylee/work/raptor/venv/lib/python3.6/site-packages/troposphere/__init__.py", line 204, in __setattr__
    self._raise_type(name, v, expected_type)
  File "/home/jylee/work/raptor/venv/lib/python3.6/site-packages/troposphere/__init__.py", line 232, in _raise_type
    expected_type))
TypeError: <class 'troposphere.elasticloadbalancingv2.Listener'>: ALBListener.DefaultActions is <class 'dict'>, expected [<class 'troposphere.elasticloadbalancingv2.Action'>]
(venv) jylee@jalee-ubuntuvm:~/work/raptor/raptor (deploy-template-v4) $ python cf_ecs.py
  File "cf_ecs.py", line 174
    DefaultActions=[Action(Type="forward", TargetGroupArn=Ref("DefaultTargetGroup")) }],
                                                                                     ^
SyntaxError: invalid syntax
(venv) jylee@jalee-ubuntuvm:~/work/raptor/raptor (deploy-template-v4) $ python cf_ecs.py
Traceback (most recent call last):
  File "cf_ecs.py", line 185, in <module>
    Protocol="HTTP",
  File "/home/jylee/work/raptor/venv/lib/python3.6/site-packages/troposphere/__init__.py", line 127, in __init__
    self.__setattr__(k, v)
  File "/home/jylee/work/raptor/venv/lib/python3.6/site-packages/troposphere/__init__.py", line 204, in __setattr__
    self._raise_type(name, v, expected_type)
  File "/home/jylee/work/raptor/venv/lib/python3.6/site-packages/troposphere/__init__.py", line 232, in _raise_type
    expected_type))
TypeError: <class 'troposphere.elasticloadbalancingv2.Listener'>: ALBListenerRedirecttoSSL.DefaultActions is <class 'dict'>, expected [<class 'troposphere.elasticloadbalancingv2.Action'>]
(venv) jylee@jalee-ubuntuvm:~/work/raptor/raptor (deploy-template-v4) $ python cf_ecs.py
Traceback (most recent call last):
  File "cf_ecs.py", line 182, in <module>
    DefaultActions=[Action(Type="redirect", RedirectConfig={ "Host": "#{host}", "Path": "/#{path}", "Port": 443, "Protocol": "HTTPS", "Query": "#{query}", "StatusCode": "HTTP_301" })],
  File "/home/jylee/work/raptor/venv/lib/python3.6/site-packages/troposphere/__init__.py", line 354, in __init__
    super(AWSProperty, self).__init__(title, **kwargs)
  File "/home/jylee/work/raptor/venv/lib/python3.6/site-packages/troposphere/__init__.py", line 127, in __init__
    self.__setattr__(k, v)
  File "/home/jylee/work/raptor/venv/lib/python3.6/site-packages/troposphere/__init__.py", line 214, in __setattr__
    self._raise_type(name, value, expected_type)
  File "/home/jylee/work/raptor/venv/lib/python3.6/site-packages/troposphere/__init__.py", line 232, in _raise_type
    expected_type))
TypeError: <class 'troposphere.elasticloadbalancingv2.Action'>: None.RedirectConfig is <class 'dict'>, expected <class 'troposphere.elasticloadbalancingv2.RedirectConfig'>
(venv) jylee@jalee-ubuntuvm:~/work/raptor/raptor (deploy-template-v4) $ python cf_ecs.py
Traceback (most recent call last):
  File "cf_ecs.py", line 182, in <module>
    DefaultActions=[Action(Type="redirect", RedirectConfig=RedirectConfig(Host="#{host}", Path="/#{path}", Port=443, Protocol="HTTPS", Query="#{query}", StatusCode="HTTP_301"))],
  File "/home/jylee/work/raptor/venv/lib/python3.6/site-packages/troposphere/__init__.py", line 354, in __init__
    super(AWSProperty, self).__init__(title, **kwargs)
  File "/home/jylee/work/raptor/venv/lib/python3.6/site-packages/troposphere/__init__.py", line 127, in __init__
    self.__setattr__(k, v)
  File "/home/jylee/work/raptor/venv/lib/python3.6/site-packages/troposphere/__init__.py", line 214, in __setattr__
    self._raise_type(name, value, expected_type)
  File "/home/jylee/work/raptor/venv/lib/python3.6/site-packages/troposphere/__init__.py", line 232, in _raise_type
    expected_type))
TypeError: <class 'troposphere.elasticloadbalancingv2.RedirectConfig'>: None.Port is <class 'int'>, expected <class 'str'>
(venv) jylee@jalee-ubuntuvm:~/work/raptor/raptor (deploy-template-v4) $ python cf_ecs.py
Traceback (most recent call last):
  File "cf_ecs.py", line 269, in <module>
    TargetTrackingConfiguration={ "DisableScaleIn": False, "TargetValue": 70.0, "CustomizedMetricSpecification": { "Dimensions": [{ "Name": "ClusterName", "Value": Ref(ECSCluster) }], "Namespace": "AWS/ECS", "Statistic": "Maximum", "MetricName": "CPUReservation" } },
  File "/home/jylee/work/raptor/venv/lib/python3.6/site-packages/troposphere/__init__.py", line 127, in __init__
    self.__setattr__(k, v)
  File "/home/jylee/work/raptor/venv/lib/python3.6/site-packages/troposphere/__init__.py", line 214, in __setattr__
    self._raise_type(name, value, expected_type)
  File "/home/jylee/work/raptor/venv/lib/python3.6/site-packages/troposphere/__init__.py", line 232, in _raise_type
    expected_type))
TypeError: <class 'troposphere.autoscaling.ScalingPolicy'>: ClusterCPUTargetTrackingScalingPolicy.TargetTrackingConfiguration is <class 'dict'>, expected <class 'troposphere.autoscaling.TargetTrackingConfiguration'>

allyunion avatar Apr 12 '19 22:04 allyunion