@Erik: You can definitely mix Octopus steps within a TeamCity build chain:
1. TeamCity builds and runs unit tests, tells Octopus to create a release and deploy to a Test environment. TeamCity waits for Octopus to finish the deployment. If the deployment fails, the build will go red and you can view the build log to see the details from Octopus.
3. A chained build in TeamCity then runs to perform the integration tests
Presumably somewhere in your single TeamCity build chain you need to push artifacts around, configure them, deploy them, etc. – just imagine replacing those steps with a call to Octopus to do the heavy lifting, and wait for it to complete. The rest of the build chain can then continue as normal.