title: What are the Team City best practices for multistage deployment?
body: <p>We have 3 environments:</p>
  
  <ul>
  <li><strong>Development:</strong> Team City deploys here for Subversion commits on trunk.</li>
  <li><strong>Staging:</strong> User acceptance is done here, on builds that are release candidates.</li>
  <li><strong>Production:</strong> When UAT passed, the passing code set is deployed here.</li>
  </ul>
  
  <p>We're using Team City and only have Continuous Integration setup with our development environment. I don't want to save artifacts for every development deployment that Team City does. I want an assigned person to be able to fire a build configuration that will deploy a certain successful development deployment to our staging server.</p>
  
  <p>Then, I want each staging deployment to save artifacts. When a staging deployment passes UAT, I want to deploy that package to Production.</p>
  
  <p>I'm not sure how to set this up in Team City. I'm using version 6.5.4, and I'm aware there's a "Promote..." action/trigger, but I think it depends on saved artifacts. I don't want to save development deployments each time as artifacts, but I do want the person running the staging deployment to be able to specify which successful development deployment to deploy to staging.</p>
  
  <p>I'm aware there may be multiple ways to do this, is there a best practice? What is your setup and why do you recommend it?</p>
  
  <p><strong>Update:</strong></p>
  
  <p>I have one answer so far, and it's an idea we had considered internally. I'd really like to know if anyone has a somewhat automated way for deploying to a staging/production environemnt via Team City itself, where only people with certain role/permission can run a deploy script to production rather than having to manually deal with any kind of artifact package. Anyone?</p>
  
  <p><strong>Update 2</strong></p>
  
  <p>I still have 1 day to award bounty, and I thought the answer below didn't answer my question, but after rereading it I see that my question wasn't what I thought it was.</p>
  
  <p>Are there any ways to use Team City for some kind of automated deployment to Staging/Production environments?</p>