-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Adding support for EMR resources #421
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
||
class Application(AWSProperty): | ||
props = { | ||
'AdditionalInfo': (dict, False), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This doesn't appear to be a dict in the Cloudformation docs - it might call for it's own validator.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
AdditionalInfo
seems to be documented as a JSON Object, that's why I chose the dict
to represent it. Is there a better way?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's in the Cluster
resource, not the Application
Property: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-application.html#cfn-emr-cluster-application-additionalinfo
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
oh yes! sorry, it's using another colon-separated key-value pair list... ¬¬
Right, so I added more strict validations and enriched the test template with more details plus the sample step from AWS docs. There seems to be some incongruences in the AWS docs anyway. One of them is regarding that self-recursive Another incongruence can be seen in the configuration of the step. The Will try to test the last version of the example template once I get a chance in our cluster to see what is the correct encoding. |
Cool - thanks for diving into this @alonsodomin - I'll try to get a chance to look at it today! |
Sorry for the delay on this, getting a slot to experiment cluster configuration in the cluster usually doesn't sit at the top of the priority list ;) Anyway, it seems that the correct encoding for the cluster & instance group configuration, using Same for the |
btw, also took the chance to rebase my fork on top of master. |
class Application(AWSProperty): | ||
props = { | ||
'AdditionalInfo': (additional_info_validator, False), | ||
'Args': (list, False), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this should be [basestring]
# Conflicts: # examples/EMR_Cluster.py # tests/examples_output/EMR_Cluster.template # troposphere/emr.py
Long time since last update. I managed to test the incongruence in the AWS docs regarding the Let me know your thoughts about the other comments (i.e.: the validator for the self-recursive |
Great - thanks @alonsodomin - I went ahead and used the new 'squash & merge' feature of github to merge this. |
Created new module to hold all the new EMR resources and types plus a basic example that creates an EMR cluster will all the applications (Hadoop, Spark, etc.) installed in it.