Skip to content

Pools

So you’ve heard CF Toolsmiths provide shared pools of TAS and CF-Deployment Environments that you can simply grab for testing. It brings the time required to get an environment from ~1 hour to seconds. For CI testing, there’s a custom concourse resource which will let you claim & unclaim environments from the Toolsmith’s app. You can watch a 5 minute video to see how it works. You can manually claim environments using programmatic access . Before you start using the Shared Pools, here are some things to consider:

  1. Limited Support
    1. The Shared Pools are owned and operated by the Toolsmiths team in San Francisco & Toronto. Since we are operating this in parallel with our engineering efforts, we are only able to offer limited support between the hours of 6am - 6pm PST.
  2. Limited Pool types
    1. Small Footprint TAS from n-2 to n+1. At the time of writing, that is: 2.8, 2.7, 2.6, 2.5
    2. CF-Deployment environments of the latest stable release
    3. Each TAS has a service network, Operations Manager, and Elastic Runtime. We cannot offer customized deployments beyond the simple configuration. Although we are interested in listening to feature requests.
    4. Each CF-Deployment environment is configured exactly the same, as defined here.
  3. Managed Environments
    1. When you unclaim environments, you will lose all access to the environment & will not be able to collect data from it. Your environment is deleted right after you unclaim it.
    2. When you claim environments from a Shared Pool, we will make a best effort to ensure your pipeline can claim an environment. If there are no environments available, then you will need to wait on environments to get created or have a Toolsmiths team member assist you.
    3. Pooled environments have a default lifetime of 24 hours. Environments can be renewed once, so that they can be used for up to 7 days if needed.
  4. Cost Sharing
    1. When we provide an API token your team, your costs will be an even split of all teams using the shared pool.

Getting Started

You will need to get an API token to get started, more info is here.

Setting up your CI

You will need read access to https://github.com/pivotal-cf/toolsmiths-envs-resource and an ask+cf ticket is the fastest way to get it.

If you are using the PCF-Tile-Pipeline, most of the work should be done for you. You can simply specify the pool & API token in the configuration. Details are here.

If you are not using the PCF-Tile-Pipeline, the sample files embedded in the toolsmiths-envs-resource GitHub repo's README should be a good template for you to use.

Private Pools

If after reviewing the environment types available, you've decided that Private Pools address your needs the best, then this section will give you an overview of creating and using Private Pools. You will need to use the API for Managing Private Pools. The general process is to:

  • Create a private pool
  • Configure the private pool to be non-zero
  • Wait a couple hours for the pools to fill, checking the pool info along the way
  • Claim an environment from your private pool, just like you would from the shared pools

Rotating the GCP Service Account key used in your pools

If you need to rotate the GCP Service Account key, you will need to do the following:

  • Destroy the pool, which will remove the pool, environments, and associated pipelines
  • This is necessary, as the BOSH Director will still be using your old key for current environments
  • Create a new pool with the new GCP Service Account Key (sa_gcp_key in the Query Parameters section)
  • You can then configure this pool as needed and set it to your desired size

FAQ

  • When are new TAS versions available in the Shared Pools?

    • New TAS versions are available in the pool when CF Toolsmiths have functional alpha releases of both TAS and OpsMan. We also need to deprecate the oldest pool before spinning up the new pool.
  • Is there a Toolsmiths supported CLI for interacting with these environments?

    • No. But the smith CLI is community supported.
  • How many environments are unclaimed that I would be able to claim?

    • Our Wavefront dashboard shows it here, in the Environments App section.
  • How do I pass my team’s special secrets along with TAS Environment?

    • Use GitHub like usual You should set up credhub and store your secrets there