Configure bucket to be public and to trigger a function

I would like to configure my serverless.yml file to:

  1. create an S3 resource which has all its objects open to public read.
  2. Whenever a new object is created in this bucket it triggers the lamda function.

Can anyone show an example of this?