CodeDeploy vs CodePipeline
CodePipeline will help you automate your release process. You can define your own release process, then CodePipeline builds, tests, and deploys your code every time there is a code change. For more details, you can check out the CodePipeline documentation here:http://aws.amazon.com/codepipeline/
CodeDeploy will act as the deployment tool integrated with CodePipeline. Here is one simple example, you have an application A and three deployment groups beta, gamma, and prod. You can set up a process with CodePipeline that every time there is a change of your source code, the change will be deployed to beta, gamma, prod one by one.
Thanks,