Skip to content

Conversation

@jaymccon
Copy link
Contributor

@jaymccon jaymccon commented Apr 15, 2019

This provides an initial implementation loosely based on the java plugin. In order to be idiomatic for python developers no attempt will be made to keep the resulting resource template similar to the java plugin. Tests will be mimicked as closely as possible to try to provide some parity.

TODO:

  • rpdk package - wrap handlers
  • rpdk package - take generic best practices from crhepler (eg. exception handling)
  • rpdk package - scheduler
  • rpdk package - metrics
  • jinja templates for handlers
  • codegen.py copy templates and rpdk python package on init

Will add the following in an upcoming pr:

  • implement tests from java plugin
  • timeout handling

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

@jaymccon jaymccon changed the title initial commit initial implementation Apr 15, 2019
@jaymccon
Copy link
Contributor Author

@tobywf have added a proposed structure for the plugin, would you mind to give it a quick look and let me know if you think it seems like a good way to proceed. There is no generated sources like in the java plugin, there is just a python module that implements a handler_wrapper that will be the entrypoint and import the customer impllemented handlers in __handler__.py

@tobywf
Copy link
Contributor

tobywf commented May 2, 2019

Apologies, been on vacation - will take a look shortly!

@jaymccon
Copy link
Contributor Author

runtime handler implemented with some rudimentary tests. It's a pretty big pr at this point, I'll put some comments in on areas that I'd like some extra attention on.

@tobywf @latrokles would appreciate a brutal (but constructive) review

@jaymccon jaymccon marked this pull request as ready for review May 17, 2019 17:15
@jaymccon jaymccon requested review from latrokles, rjlohan and tobywf May 30, 2019 19:15
Copy link

@rjlohan rjlohan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've left a bunch of comments throughout. So that you're not playing endless churn, I'd look to merge this initial cut in, and come back around with smaller PRs to adjust to catch-up to the Java plugin PRs.

Check my inline comments, and perhaps file issues in this repo on those so you can track?

Copy link
Contributor

@tobywf tobywf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can merge this for now. #4 should be addresses ASAP, and will be a requirement before distributing the plugin to a wider audience. The linting will also catch issues like using key in dict.keys() instead of key in dict

@jaymccon jaymccon merged commit ef72948 into aws-cloudformation:master Jun 11, 2019
brianlaoaws added a commit to brianlaoaws/cloudformation-cli-python-plugin that referenced this pull request Nov 25, 2024
…operation-status-skip-stack-hook

Skip stack level hook for stack if prior stack level change set hook …
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants