---
title: Streamline your CI/CD pipeline with TeamCity and CloudShell Colony’s Environment as a Service
description: Streamline your CI/CD pipeline with TeamCity and CloudShell Colony’s Environment as a Service
image: https://blog.quali.com/hubfs/Pipeline-TeamCity-and-CloudShell-Colony-1024x445.png
---

[![logo](https://blog.quali.com/hs-fs/hubfs/logo.png?width=120&height=36&name=logo.png "logo")](https://www.quali.com/)

- SOLUTIONS 
    - [DEVOPS CLOUD AUTOMATION](https://www.quali.com/solutions/devops-environments/)
    - [TEST ENVIRONMENTS](https://www.quali.com/solutions/software-test-environments-as-a-service/)
    - [LAB AS A SERVICE](https://www.quali.com/solutions/network-and-security-dev-test-lab-as-a-service/)
    - [SALES DEMO/VIRTUAL POC](https://www.quali.com/solutions/sales-demos-virtual-poc-environments/)
    - [CYBER RANGE ENVIRONMENTS](https://www.quali.com/solutions/cyber-range-environments/)
    - [VIRTUAL TRAINING LABS](https://www.quali.com/solutions/virtual-training-labs/)
- [PRODUCTS](https://www.quali.com/cloudshell-platform/) 
    - [CloudShell Pro](https://www.quali.com/cloudshell-pro/) 
          - [Product](https://www.quali.com/cloudshell-pro/)
          - [Community](https://www.quali.com/community/)
          - [University](https://www.quali.com/university/)
          - [Support](https://support.quali.com/)
    - [CloudShell Colony \[NEW\]](https://www.quali.com/cloudshell-colony/) 
          - [Product](https://www.quali.com/cloudshell-colony/)
          - [Request Free Trial](https://app.cloudshellcolony.com/sign_up?utm_referrer=https%3A%2F%2Ffreedcamp.com%2FJacobs_Work_Projects_gNM%2FQuali_7GO%2Ftodos%2F25066065%2F&__hstc=208618317.2af89ba750e0bbc1c35b7c40ea6ff838.1567174142272.1567174142272.1567174142272.1&__hssc=208618317.1.1567174142272&__hsfp=1037199243)
          - [Login](https://app.cloudshellcolony.com/login?__hstc=208618317.2af89ba750e0bbc1c35b7c40ea6ff838.1567174142272.1567174142272.1567174142272.1&__hssc=208618317.1.1567174142272&__hsfp=1037199243)
- [CUSTOMERS](https://www.quali.com/customers/)
- [RESOURCES](https://www.quali.com/resource-center/) 
    - [Blog](https://blog.quali.com/blog/)
    - Financial Services 
          - [Financial Services Application Continuous Delivery](https://www.quali.com/financial-services-application-continuous-delivery/)
          - [Infrastructure Environments for Banks and Financial Services](https://www.quali.com/environment-as-service-for-banks-finserv/)
    - [FAQ](https://www.quali.com/faq/)
    - [Resource Library](https://www.quali.com/resource-center/)
- [COMPANY](https://www.quali.com/about-us/) 
    - [About Us](https://www.quali.com/about-us/)
    - [Leadership](https://www.quali.com/about-us/#management)
    - [News and Events](https://www.quali.com/about-us/news-events/)
    - [Partners](https://www.quali.com/partners/)
    - [Locations](https://www.quali.com/about-us/#locations)
    - [Careers](https://www.quali.com/about-us/careers/)
    - [Awards](https://www.quali.com/awards/)
- [CONTACT US](https://info.quali.com/contact-us)

### Blog

Stay up to date with blogs written by experts in the fields of cloud automation, infrastructure orchestration, and devops.

### Streamline your CI/CD pipeline with TeamCity and CloudShell Colony’s Environment as a Service

# Streamline your CI/CD pipeline with TeamCity and CloudShell Colony’s Environment as a Service

![header-picture](https://blog.quali.com/hubfs/Pipeline-TeamCity-and-CloudShell-Colony-1024x445.png "header-picture")

**Author:**  
admin

**Published:**  
April 30, 2019

**Share it:**

- <https://www.facebook.com/sharer/sharer.php?u=https://blog.quali.com/blog/streamline-your-ci/cd-pipeline-with-teamcity-and-cloudshell-colonys-environment-as-a-service>
- <https://www.linkedin.com/shareArticle?mini=true&url=https://blog.quali.com/blog/streamline-your-ci/cd-pipeline-with-teamcity-and-cloudshell-colonys-environment-as-a-service&title=&summary=&source=>
- <https://twitter.com/home?status=>
- [mailto:?&subject=https://blog.quali.com/blog/streamline-your-ci/cd-pipeline-with-teamcity-and-cloudshell-colonys-environment-as-a-service&body=https://blog.quali.com/blog/streamline-your-ci/cd-pipeline-with-teamcity-and-cloudshell-colonys-environment-as-a-service](mailto:?&subject=https://blog.quali.com/blog/streamline-your-ci/cd-pipeline-with-teamcity-and-cloudshell-colonys-environment-as-a-service&body=https://blog.quali.com/blog/streamline-your-ci/cd-pipeline-with-teamcity-and-cloudshell-colonys-environment-as-a-service)

![header-picture](https://blog.quali.com/hubfs/Pipeline-TeamCity-and-CloudShell-Colony-1024x445.png "header-picture")

This article originally appeared on JetBrains on 4/25/19

*Posted on April 25, 2019 by Yegor Naumov*  
 *This guest post is brought to you by Meni Besso, Product Manager at Quali, the creators of CloudShell Colony*

 

![logo@3x-cropped](https://blog.quali.com/hs-fs/hubfs/logo@3x-cropped.png?width=138&name=logo@3x-cropped.png)

CloudShell Colony is an Environment as a Service platform. It connects to your cloud providers including AWS, Azure, and Kubernetes and automates environment provisioning and deployment throughout your release pipeline in a scalable, maintainable, and smart way.

**Creating a scalable CI/CD pipeline is harder than it looks.**

Too many times have we witnessed DevOps engineers dive straight into configuring builds and writing scripts, only to find out later that they need to redo a significant part of their work. Any professional engineer will tell you that avoiding this unsavory outcome is easy. You need to treat your pipeline as a product: gather your requirements, design your architecture, develop, test, and improve your pipeline as your product grows.

**In order to come up with a good design, you have to take three important aspects into account:**

1. **Release workflow:** Working out the steps that need to happen from the moment a developer commits code until the code goes live in production.
2. Test automation: Planning the tests that need to run to validate the quality of the release and the automation tools that will be used to run them.
3. Test environments: Determining the specifications for each test environment, taking into account test data, debugging, performance, and maintenance.

Much has been said about the first two items, but we at Quali believe that environments are the missing piece on the way to a reliable CI/CD pipeline, because continuous integration only works if you can trust your tests, and running tests on faulty environments is a serious barrier.

**So, how do you design environments?**

First, let’s distinguish between the two types of environment:

- Sandbox environments: Environments that you use temporarily to complete a specific task. For example, to run sanity tests or performance tests from your pipeline.
- Production environments: Environments that are always-on serving users. For example, your live production environment or a pre-production environment that you share with your customers.

A typical release pipeline uses both sandbox environments and production environments. You run various tests on sandboxes to validate your code and then deploy to production.

Sandbox environments can be tricky. Once you have set up your automated pipeline, you may notice the complexities. You need to support different variations of these environments, often in parallel. Some environments need to provide quick feedback while others need to replicate the full production environment. How do you deploy the artifacts, load test data, and set up your test tools? How do you debug failed tests? Are you using cloud infrastructure? How much does it cost?

At some point, you end up realizing that your challenge is also one of scale. Meaning, all these issues grow from bad to worse as your automation gradually consumes more and more environments.

**Production environments** can be tricky as well, but for different reasons. With production, you need to think about ongoing upgrades, handling downtime, backward compatibility, rollbacks, monitoring, and security.

Integrating your TeamCity CI/CD pipeline with an Environment as a Service platform like CloudShell Colony will ease many of these complexities and provides you with a more stable, reliable, and scalable CI/CD pipeline.

**Let’s see how it works.**

# Integrating CloudShell Colony with your DevOps Toolchain

You start by creating a [CloudShell Colony account](https://www.cloudshellcolony.com/?utm_campaign=jetbrains) and connecting it to your AWS or Azure accounts. This is done through a simple process that gives CloudShell Colony permission to create infrastructure in your public cloud accounts.

Then, download the installation instructions.

Once you have your TeamCity server connected to your CloudShell Colony account, you can connect your artifacts’ storage provider and start using CloudShell Colony in your release pipeline: run automated tests on its isolated sandbox environments and update your production using blue-green deployment.

![Pipeline-TeamCity-and-CloudShell-Colony-1024x445](https://blog.quali.com/hs-fs/hubfs/Pipeline-TeamCity-and-CloudShell-Colony-1024x445.png?width=832&name=Pipeline-TeamCity-and-CloudShell-Colony-1024x445.png)

 

Pipeline TeamCity and CloudShell Colony

# Running Automated Tests on Sandbox Environments

To use sandbox environments in your TeamCity builds, you need to update your build configuration flow.

The first build step should start a sandbox. Use the ‘Colony’ runner, that comes out of the box with [CloudShell Colony’s plugin](https://plugins.jetbrains.com/plugin/11044-colony), and fill in the required parameters. For example, enter the name of the environment blueprint you want to use, the location of your artifacts in the storage provider, and any test data you may wish to load to the sandbox environment.  
When the environment is ready, provisioned and deployed, CloudShell Colony saves its details to a TeamCity variable, so you can extract any needed information (like IP addresses or application links) and feed your tests.

Finally, after the tests complete and the sandbox environment is no longer needed, you can terminate it by adding another build step that ends the sandbox and reclaims its cloud resources.

 

![teamcity-cloudshell-colony-build-steps-1024x671](https://blog.quali.com/hs-fs/hubfs/teamcity-cloudshell-colony-build-steps-1024x671.png?width=832&name=teamcity-cloudshell-colony-build-steps-1024x671.png)

 

# Creating Environments from Blueprints

CloudShell Colony’s environments are created from blueprints.

Blueprints define application requirements in a simple YAML format that you store in your source control provider. They include the definitions of artifacts, networking and computing requirements, deployment scripts, variables, and test data. They can also integrate with traditional IaC (Infrastructure-as-Code) tools, such as Terraform.

Once you create your blueprints and store them in your source control repository, they will be available in CloudShell Colony’s self-service catalog, allowing you to launch environments from CloudShell Colony’s user interface or from your TeamCity builds.

 

![CloudShell-Colony-Catalog-1024x500](https://blog.quali.com/hs-fs/hubfs/CloudShell-Colony-Catalog-1024x500.png?width=832&name=CloudShell-Colony-Catalog-1024x500.png)

 

# Environment Lifecycle

Every environment goes through several stages including a verification step that ensures that the environment is 100% ready for your automated tests.

 

![Sandbox-Deployment-Workflow-1024x265](https://blog.quali.com/hs-fs/hubfs/Sandbox-Deployment-Workflow-1024x265.png?width=832&name=Sandbox-Deployment-Workflow-1024x265.png)

 

And since your environment is composed of applications, CloudShell Colony manages the application dependencies and initialization and provides quick debugging and troubleshooting options.

 

![Application-Deployment-Workflow](https://blog.quali.com/hs-fs/hubfs/Application-Deployment-Workflow.png?width=756&name=Application-Deployment-Workflow.png)

 

In case of errors, you will know exactly which steps failed and you are able to browse the deployment logs and securely connect to your compute instances.

 

![CloudShell-Colony-Applications-1024x495](https://blog.quali.com/hs-fs/hubfs/CloudShell-Colony-Applications-1024x495.png?width=832&name=CloudShell-Colony-Applications-1024x495.png)

 

When the environment is no longer needed, CloudShell Colony cleans up the environment’s infrastructure from your cloud account, ensuring that you won’t have to pay for unused infrastructure.

Environments have a crucial part in building a stable application pipeline, and in DevOps processes in general. Using Platforms like CloudShell Colony enables teams to get fully provisioned and deployed environments quickly while keeping cloud expenses under control.

Like what you’ve just read? [Start your free trial](https://www.cloudshellcolony.com) of CloudShell Colony.

- Posted by admin on April 30, 2019
- About Author:

 Topics: [Cloud and Virtualization](https://blog.quali.com/blog/topic/cloud-and-virtualization), [Continuous Integration/Delivery](https://blog.quali.com/blog/topic/continuous-integration-delivery)

By Sean Harris - 30 April, 2019

#### 4 Major Business Problems Solved by Infrastructure Automation

[![read more](https://cdn2.hubspot.net/hubfs/685080/IMG-TurboSodium/Sodium%20v2/blog/arrow-recent-blog-post.png "read more")](https://blog.quali.com/blog/4-major-business-problems-solved-by-infrastructure-automation)

By Pascal Joly - 30 April, 2019

#### Infrastructure Automation at Scale: Blueprinting vs. Terraform

[![read more](https://cdn2.hubspot.net/hubfs/685080/IMG-TurboSodium/Sodium%20v2/blog/arrow-recent-blog-post.png "read more")](https://blog.quali.com/blog/environment-as-a-service-blueprinting-vs.-terraform)

By Sean Harris - 30 April, 2019

#### Why Infrastructure Automation Is Critical for Cyber Security

[![read more](https://cdn2.hubspot.net/hubfs/685080/IMG-TurboSodium/Sodium%20v2/blog/arrow-recent-blog-post.png "read more")](https://blog.quali.com/blog/why-infrastructure-automation-is-critical-for-cyber-security)

### Recent Posts

### Posts by Topic

- [DevOps (69)](https://blog.quali.com/blog/topic/devops)
- [Sales Demo (24)](https://blog.quali.com/blog/topic/sales-demo)
- [Dev/Test (21)](https://blog.quali.com/blog/topic/dev-test)
- [Automation (12)](https://blog.quali.com/blog/topic/automation)
- [infrastructure automation (12)](https://blog.quali.com/blog/topic/infrastructure-automation)
- [Environment as a Service (11)](https://blog.quali.com/blog/topic/environment-as-a-service)
- [colony (9)](https://blog.quali.com/blog/topic/colony)
- [ci/cd pipeline (6)](https://blog.quali.com/blog/topic/ci-cd-pipeline)
- [demo PoC (6)](https://blog.quali.com/blog/topic/demo-poc)
- [Qualifyi (5)](https://blog.quali.com/blog/topic/qualifyi)
- [Continuous Integration/Delivery (4)](https://blog.quali.com/blog/topic/continuous-integration-delivery)
- [Lab as a Service (4)](https://blog.quali.com/blog/topic/lab-as-a-service)
- [cloudshell pro (4)](https://blog.quali.com/blog/topic/cloudshell-pro)
- [Cloud and Virtualization (3)](https://blog.quali.com/blog/topic/cloud-and-virtualization)
- [Cyber Range (3)](https://blog.quali.com/blog/topic/cyber-range)
- ["infrastructure as code" (2)](https://blog.quali.com/blog/topic/infrastructure-as-code)
- [Sales Clouds (2)](https://blog.quali.com/blog/topic/sales-clouds)
- [Sales Demo/PoC (2)](https://blog.quali.com/blog/topic/sales-demo-poc)
- [Test & Test Lab Automation (2)](https://blog.quali.com/blog/topic/test-test-lab-automation)
- [application release (2)](https://blog.quali.com/blog/topic/application-release)
- ["trial demo" (1)](https://blog.quali.com/blog/topic/trial-demo)
- [DevOps/Agile IT (1)](https://blog.quali.com/blog/topic/devopsagile-it)
- [DevSecOps (1)](https://blog.quali.com/blog/topic/devsecops)
- [Events (1)](https://blog.quali.com/blog/topic/events)
- [JFrog (1)](https://blog.quali.com/blog/topic/jfrog)
- [Product Release (1)](https://blog.quali.com/blog/topic/product-release)
- [SDN & NFV (1)](https://blog.quali.com/blog/topic/sdn-nfv)
- [SDN & NFV & Networking (1)](https://blog.quali.com/blog/topic/sdn-nfv-networking)
- [Security (1)](https://blog.quali.com/blog/topic/security)
- [TechBlog (1)](https://blog.quali.com/blog/topic/techblog)
- [artifactory (1)](https://blog.quali.com/blog/topic/artifactory)
- [continuous testing (1)](https://blog.quali.com/blog/topic/continuous-testing)
- [continuous validation (1)](https://blog.quali.com/blog/topic/continuous-validation)
- [parallel delivery (1)](https://blog.quali.com/blog/topic/parallel-delivery)
- [repository (1)](https://blog.quali.com/blog/topic/repository)
- [salesforce (1)](https://blog.quali.com/blog/topic/salesforce)

View More

 

#### 4 Major Business Problems Solved by Infrastructure Automation

Every company and organization that develops software and applications needs environments. As they race toward innovating new products and...

[Read More](https://blog.quali.com/blog/4-major-business-problems-solved-by-infrastructure-automation)

 

#### Infrastructure Automation at Scale: Blueprinting vs. Terraform

\[This blog was originally published in November of 2019 and updated with new content in May of 2021.\] Whether you are a software architect,...

[Read More](https://blog.quali.com/blog/environment-as-a-service-blueprinting-vs.-terraform)

 

#### Why Infrastructure Automation Is Critical for Cyber Security

Revelations about the recent SolarWinds hack have highlighted the evolving sophistication and growing effectiveness of cyber attacks,...

[Read More](https://blog.quali.com/blog/why-infrastructure-automation-is-critical-for-cyber-security)

##### **Join 11,000+** CIOs, CTOs, ITOps, and DevOps practitioners on our newsletter and blog list

 Emails once or twice a week on cloud automation, infrastructure orchestration, and DevOps 

![](https://blog.quali.com/hs-fs/hubfs/Blue%20Arrow%201.png?width=69&name=Blue%20Arrow%201.png)

![footer-curve](https://blog.quali.com/hubfs/footer-curve.png "footer-curve")

### About Quali

Quali provides the leading platform for Infrastructure Automation at Scale. Global 2000 enterprises and innovators everywhere rely on Quali’s award-winning CloudShell platform to create self-service, on-demand automation solutions that increase engineering productivity, cut cloud costs, and optimize infrastructure utilization.

### Media Contacts

**PR**     pr AT quali.com

![](https://www.quali.com/wp-content/uploads/2019/05/logo-quali.png)

Quali is the industry leader in delivering cloud-agnostic Environment as a Service (EaaS) solutions for development and testing, sales demo/POC, training, and cyber range teams. Global 500 OEMs, ISVs, financial services, retailers, and innovators everywhere rely on Quali’s award-winning CloudShell platform to create self-service, on-demand environments that cut cloud costs, optimize infrastructure utilization, and increase productivity.

SOLUTIONS

[DevOps Cloud Automation](https://blog.quali.com/solutions/devops-environments/)

[Test Environments](https://blog.quali.com/solutions/software-test-environments-as-a-service/)

[Lab as a Service](https://blog.quali.com/solutions/network-and-security-dev-test-lab-as-a-service/)

[Sales Demos/Virtual PoCs](https://blog.quali.com/solutions/sales-demos-virtual-poc-environments/)

[Cyber Range Environments](https://blog.quali.com/solutions/cyber-range-environments/)

[Virtual Training Labs](https://blog.quali.com/solutions/virtual-training-labs/)

INDUSTRY SPOTLIGHT

[Financial Services Application Continuous Delivery](https://blog.quali.com/solutions/financial-services-application-continuous-delivery/)

[Lab as a Service for Banks](https://blog.quali.com/solutions/environment-as-service-for-banks-finserv/)

PRODUCTS

[CloudShell Pro](https://blog.quali.com/cloudshell-pro/)

[- Community](https://blog.quali.com/community/)

[- University](https://blog.quali.com/university/)

[- Support](https://blog.quali.com/community/support/)

[- Integrations](https://community.quali.com/integrations)

[CloudShell Colony](https://blog.quali.com/cloudshell-colony/)

[- Product](https://community.quali.com/integrations)

[- Integrations](https://community.quali.com/integrations)

[- Login](https://community.quali.com/integrations)

[PRICING](https://info.quali.com/pricing)

RESOURCES

[Resource Center](https://blog.quali.com/resource-center/)

[Blog](https://blog.quali.com/blog/)

[FAQ](https://blog.quali.com/faq/)

COMPANY

[About Us](https://blog.quali.com/about-us/)

[Why Quali](https://blog.quali.com/why-quali/)

[Customers](https://blog.quali.com/customers/)

[Leadership](https://blog.quali.com/about-us/#leadership)

[Newsroom](https://blog.quali.com/about-us/newsroom/)

[Locations](https://blog.quali.com/about-us/#locations)

[Careers](https://blog.quali.com/about-us/careers/)

[Awards](https://blog.quali.com/about-us/#awards)

[PARTNERS](https://blog.quali.com/partners/)

LEGAL

[Legal](https://blog.quali.com/legal/)

[Privacy Policy](https://blog.quali.com/qualiprivacypolicy/)

[Cookie Notice](https://blog.quali.com/cookie-notice)

INFO

[Contact Us](https://info.quali.com/contact-us)

**+1 877 QUALI 10**  
**[info@quali.com](mailto:info@quali.com)**

© Qualisystems LTD 2020

![](https://www.bizographics.com/collect/?pid=7400&fmt=gif)