The opsworks_ruby cookbook in the supermarket is basically all you need. It even puts applications in the same directories (i.e. /srv/www/app_name/ ), configures your database.yml, etc. Etc.
The main difference between this recipe and other non-OpsWorks recipes is that it will pull everything out of the OpsWorks configuration for you. You do not need to configure recipes, just make sure your application and layers are named correctly - it will build everything from there - including your RDS setup for database.yml!
The main difference is that the layers in OpsWorks will not be "Ruby aware", so you will not have fields for Rails-ish or Ruby-ish, and instead you will have to manage them elsewhere. The way to load ENV vars is a bit different.
Also be sure to read about implementing AWS Chef 12 for OpsWorks. They technically have two cookbooks, one internal and one yours. They include agent management, relevance, user load (for ssh), monitoring posting, etc. You will have to manage the rest.
We either replaced the material from our huge cookbook with individual cookbooks from the supermarket, or simply rewrote it. For example, the old chef 11 opsworks_initial_setup had several things related to setting network and linux settings - we recreated this.
It also uses deployment users, if applicable, for example:
$ ps -eo user,command USER COMMAND // snip root nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf aws opsworks-agent: master 10820 aws opsworks-agent: keep_alive of master 10820 aws opsworks-agent: statistics of master 10820 aws opsworks-agent: process_command of master 10820 deploy unicorn_rails master --env production --daemonize -c /srv/www/app/shared/config/unicorn.conf deploy unicorn_rails worker[0] --env production --daemonize -c /srv/www/app/shared/config/unicorn.conf deploy unicorn_rails worker[1] --env production --daemonize -c /srv/www/app/shared/config/unicorn.conf deploy unicorn_rails worker[2] --env production --daemonize -c /srv/www/app/shared/config/unicorn.conf deploy unicorn_rails worker[3] --env production --daemonize -c /srv/www/app/shared/config/unicorn.conf nginx nginx: worker process nginx nginx: worker process
Just a small example of the output of a process, but root loads things as needed, and each process uses its own users to restrict rights and access.