Skip to content
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

Initial plugin support #98

Merged
merged 5 commits into from
Apr 21, 2013
Merged

Initial plugin support #98

merged 5 commits into from
Apr 21, 2013

Conversation

jamesls
Copy link
Member

@jamesls jamesls commented Apr 19, 2013

This change adds support for AWS CLI plugins. A plugin
is a python module that defines an awscli_initialize
function.

This change can roughly be broken up into three changes:

  • Adding the modules for plugins (plugin.py, hooks.py)
  • Refactoring clidriver.py to make plugin integration
    a little easier.
  • Integrating the plugin system with clidriver.py.

There's still more work to be done, but I think it makes
sense to get this initial support into develop.

Added tests for the new changes, and all the existing tests
pass.

No functional changes.

* Allow session to be passed in
* Remove unused code
* Fix long line lengths
* Main parser does not store parser attribute
* Rename a few clidriver methods to be internal
* pep8 fixes, long line lengths
Very basic and likely missing features.
* Created main() function in clidriver

This gives room for the plugins to be loaded, rather than
have CLIDriver know anything about the plugin loading process.

As a result, I've updated aws and aws.cmd to use clidriver.main()
instead of creating the CLIDriver instance themselves.

* Load plugins from config file

* Emit events in clidriver

* Also removed the nargs=1 for non lists.  This simplified the unpack
  arg, and it will make it easier for plugins to manipulate the args.

* Add first_non_none_response function.
@garnaat
Copy link
Contributor

garnaat commented Apr 21, 2013

The TravisCI errors seem to be spurious network issues when running the Python 3.1 tests.

@garnaat garnaat merged commit 7dc65d2 into aws:develop Apr 21, 2013
@jamesls jamesls deleted the plugins branch June 23, 2014 18:03
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.

2 participants