{"action":"created","issue":{"url":"https://api.github.com/repos/ansible/ansible-modules-extras/issues/1890","repository_url":"https://api.github.com/repos/ansible/ansible-modules-extras","labels_url":"https://api.github.com/repos/ansible/ansible-modules-extras/issues/1890/labels{/name}","comments_url":"https://api.github.com/repos/ansible/ansible-modules-extras/issues/1890/comments","events_url":"https://api.github.com/repos/ansible/ansible-modules-extras/issues/1890/events","html_url":"https://github.com/ansible/ansible-modules-extras/pull/1890","id":142502449,"number":1890,"title":"AWS lambda modules","user":{"login":"pjodouin","id":1208458,"avatar_url":"https://avatars.githubusercontent.com/u/1208458?v=3","gravatar_id":"","url":"https://api.github.com/users/pjodouin","html_url":"https://github.com/pjodouin","followers_url":"https://api.github.com/users/pjodouin/followers","following_url":"https://api.github.com/users/pjodouin/following{/other_user}","gists_url":"https://api.github.com/users/pjodouin/gists{/gist_id}","starred_url":"https://api.github.com/users/pjodouin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pjodouin/subscriptions","organizations_url":"https://api.github.com/users/pjodouin/orgs","repos_url":"https://api.github.com/users/pjodouin/repos","events_url":"https://api.github.com/users/pjodouin/events{/privacy}","received_events_url":"https://api.github.com/users/pjodouin/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/ansible/ansible-modules-extras/labels/cloud","name":"cloud","color":"c7def8"},{"url":"https://api.github.com/repos/ansible/ansible-modules-extras/labels/community_review","name":"community_review","color":"fad8c7"},{"url":"https://api.github.com/repos/ansible/ansible-modules-extras/labels/new_plugin","name":"new_plugin","color":"bfe5bf"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":15,"created_at":"2016-03-21T23:44:02Z","updated_at":"2016-05-13T00:45:13Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/ansible/ansible-modules-extras/pulls/1890","html_url":"https://github.com/ansible/ansible-modules-extras/pull/1890","diff_url":"https://github.com/ansible/ansible-modules-extras/pull/1890.diff","patch_url":"https://github.com/ansible/ansible-modules-extras/pull/1890.patch"},"body":"##### Issue Type:\r\n\r\n - New Modules Pull Request\r\n\r\n##### Plugin Name:\r\n\r\nlambda\r\nlambda_facts\r\nlambda_alias\r\nlambda_event\r\nlambda_invoke\r\nlambda_policy\r\n\r\n##### Summary:\r\n\r\nThese modules help manage AWS Lambda resources including code, configuration, aliases, versions and event source mappings. \r\n\r\n##### Example:\r\n\r\n```\r\n---\r\n- hosts: localhost\r\n  gather_facts: no\r\n  vars:\r\n    state: present\r\n    project_folder: /path/to/your/project/folder\r\n    deployment_package: lambda.zip\r\n    account: 123456789012\r\n    function_name: ingestData\r\n\r\n  tasks:\r\n  - name: gather lambda facts\r\n    lambda_facts:\r\n      name: \"{{ function_name }}\"\r\n      query: all\r\n\r\n  - name: AWS Lambda Function\r\n    lambda:\r\n      state: \"{{ state | default('present') }}\"\r\n      name: \"{{ function_name }}\"\r\n      publish: True\r\n      description: lambda function description\r\n      code_s3_bucket: package-name\r\n      code_s3_key: \"lambda/{{ deployment_package }}\"\r\n      local_path: \"{{ project_folder }}/{{ deployment_package }}\"\r\n      runtime: python2.7\r\n      timeout: 5\r\n      handler: lambda.handler\r\n      memory_size: 192\r\n      role: API2LambdaExecRole\r\n\r\n  - name: \"alias 'Dev' for function {{ function_name }}\"\r\n    lambda_alias:\r\n      state: \"{{ state | default('present') }}\"\r\n      function_name: \"{{ function_name }}\"\r\n      name: Dev\r\n      description: Development is $LATEST version\r\n\r\n  - name: Lambda policy for S3 event notifications\r\n    lambda_policy:\r\n      state: \"{{ state | default('present') }}\"\r\n      function_name: functionName\r\n      alias: Dev\r\n      statement_id: lambda-s3-myBucket-create-data-log\r\n      action: lambda:InvokeFunction\r\n      principal: s3.amazonaws.com\r\n      source_arn: arn:aws:s3:eu-central-1:123456789012:bucketName\r\n      source_account: 123456789012\r\n\r\n  - name: DynamoDB stream event mapping\r\n    lambda_event:\r\n      state: \"{{ state | default('present') }}\"\r\n      event_source: stream\r\n      function_name: \"{{ function_name }}\"\r\n      alias: Dev\r\n      source_params:\r\n        source_arn: arn:aws:dynamodb::123456789012:table/tableName/stream/2016-03-19T19:51\r\n        enabled: True\r\n        batch_size: 120\r\n        starting_position: TRIM_HORIZON\r\n\r\n  - name: execute lambda function\r\n    lambda_invoke:\r\n      function_name: \"{{ function_name }}\"\r\n      qualifier: Dev\r\n      invocation_type: RequestResponse\r\n\r\n  - debug: var=lambda_invocation_results\r\n\r\n```"},"comment":{"url":"https://api.github.com/repos/ansible/ansible-modules-extras/issues/comments/218924927","html_url":"https://github.com/ansible/ansible-modules-extras/pull/1890#issuecomment-218924927","issue_url":"https://api.github.com/repos/ansible/ansible-modules-extras/issues/1890","id":218924927,"user":{"login":"pjodouin","id":1208458,"avatar_url":"https://avatars.githubusercontent.com/u/1208458?v=3","gravatar_id":"","url":"https://api.github.com/users/pjodouin","html_url":"https://github.com/pjodouin","followers_url":"https://api.github.com/users/pjodouin/followers","following_url":"https://api.github.com/users/pjodouin/following{/other_user}","gists_url":"https://api.github.com/users/pjodouin/gists{/gist_id}","starred_url":"https://api.github.com/users/pjodouin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pjodouin/subscriptions","organizations_url":"https://api.github.com/users/pjodouin/orgs","repos_url":"https://api.github.com/users/pjodouin/repos","events_url":"https://api.github.com/users/pjodouin/events{/privacy}","received_events_url":"https://api.github.com/users/pjodouin/received_events","type":"User","site_admin":false},"created_at":"2016-05-13T00:45:12Z","updated_at":"2016-05-13T00:45:12Z","body":"@gundalow \r\n\r\nThis is straight from the Ansible web pages: \r\n\r\n> We do not take ‘style only’ requests unless the code is nearly unreadable, we are “PEP8ish”, but not strictly compliant.\r\n\r\nMoreover, I ran PEP8 on the Ansible project and got 4,411 violations.  I've confirmed this by perusing many other modules (extras and core) and found several examples of those same violations you raised on this PR and much worse.\r\n\r\nSo here's the question:  is this a new requirement for new contributions?\r\n\r\nIf the answer to this question is \"yes,\" then where is this documented?\r\n\r\nThanks,\r\nPierre\r\n \r\n\r\n"}}