How to deploy build artefacts to a group of environments?
Hello,
We currently operate with two git branches ('development' and 'release'), each being built by a separate AppVeyor project. The build config for each project is pretty much identical, but one build deploys (via environments) to our DEV environments, the other to our STAGING environments. Once we're happy with a build on our 'development' we merge to the 'release' branch, build again, and release into STAGING (and from there we just hot-swap into production). There's one environment for a web application (WEB DEPLOY) and seven environments for our webjobs per project, so sixteen environments in all.
This works really well - happy days.
Now, however, we want to simplify. We're going to do away with one of our branches and deploy the artifacts from a single project to either our development environments or to our staging environments. I'm trying to find a simple way, preferably using the AppVeyor UI, to facilitate the deployment of a set of assets into _all_ staging environments. Is this supported? I know I can manually deploy an artifact into a specific environment, but I'd prefer not to have to do this for all eight STAGING environments.
Is there a way to set up a "group" deployment or a project that'll just take the artifacts from another project and deploy them?
I know what I'm after can probably be achieved using the API but I am at the moment looking for an option that doesn't involve this. Does anyone know if it can be done?
Comments are currently closed for this discussion. You can start a new one.
Keyboard shortcuts
Generic
| ? | Show this help |
|---|---|
| ESC | Blurs the current field |
Comment Form
| r | Focus the comment reply box |
|---|---|
| ^ + ↩ | Submit the comment |
You can use Command ⌘ instead of Control ^ on Mac

1 Posted by Ilya Finkelshte... on 30 Jan, 2018 03:29 PM
Are you still going to deploy from build or this should be decoupled from build process?
2 Posted by Øyvind on 30 Jan, 2018 03:35 PM
The ideal process would be that every build (triggered by commit) automatically releases into our DEV environments (as it does today), but that we additionally have the ability to selectively deploy the artifacts from any given build into our staging environments.
This second deployment should be decoupled from the build process. We basically want to deploy the same binaries in all environments.
3 Posted by Ilya Finkelshte... on 30 Jan, 2018 04:06 PM
Then I would look into deployment project. This require a little bit of work to tune it, but after that it can be started with UI. The only thing you might need to alter is
deploy_versionif you do not want to deploy most recent build.Also if you decide to go this path, you may consider to stop using Environment deployment, but use Inline deployment with both regular and new, "deployment" projects. Benefit is that Inline deployments run synchronously and if they fail -- build fail. More details.
Side note: as I understand you use Azure App Service. Look at new Zip Push Deploy when you have time.
Ilya Finkelshteyn closed this discussion on 25 Aug, 2018 02:26 AM.