How to create a scratch org pool

Salesforce scratch orgs are designed to be isolated, self-contained environments that can be created and discarded once they are no longer needed.

  • Published 09 May 2023
  • 9 mins read
How to create a scratch org pool
Table of contents
Article Summary Box

Article Highlights

  • The article explains that creating a Salesforce scratch org can be time-consuming due to the need for allocating server resources, deploying metadata, and provisioning dependencies.
  • Hutte offers a scratch org pool that prepares a flexible amount of ready-made scratch orgs, eliminating the waiting times associated with their creation and providing them instantly for use.
  • With Hutte, users can easily manage their environments, load data, implement features, and commit changes to Git, streamlining the development process and collaboration among team members.
Scratch orgs are created using a scratch org definition file, which specifies the org's configuration, features, and duration.

They can be used by developers and admins to build and test customizations before deploying them to production environments.

But there are limitations to creating scratch orgs, which include the following:

  • Scratch orgs have limited storage space compared to regular Salesforce orgs. This means you may be unable to store as much data or metadata in a scratch org.
  • Scratch orgs have limited customization capability, making it challenging to develop against intricate customizations.
  • You can only create a certain number of scratch orgs in a given period of time.
  • Setting up a scratch org can take from a few minutes to even hours for highly complex projects, depending on the nature of the configuration and the amount of metadata of your project. This setup time can be a disadvantage if you need to create many scratch orgs regularly.
✂️
To address the main con of scratch org creation time, Hutte cuts through the time it takes to spin up a scratch org by having a ready-to-use scratch org pool.

Hutte saves time by managing a pool of ready-to-use scratch orgs

If your team can take one from the pool, they do not need to wait for another scratch org to spin up. Hutte has a ready-to-use scratch org pool that you can tap into anytime.

Taking a ready-to-use org from the pool can be accomplished on Hutte’s Web UI. Alternatively, for the developer-minded users, from Hutte’s SFDX plugin.

We were able to create this feature as Hutte is a web-based user interface that enables you to easily leverage the benefits of Git-based development without the need for a command-line interface (CLI).

Hutte is truly one of the best tools that we use. Product owners, Salesforce solution architects, business analysts — anyone on our team can easily and visually accomplish the tasks that would otherwise take a lot of clicks, time, and coding.

Sebastian Lechner

Product Management Director of IPfolio
Clarivate

Source: Hutte

🙌
Hutte offers access to Salesforce's full capabilities, providing custom buttons on our web interface to execute complex multi-line commands, such as using our YAML push script to define the behavior of scratch orgs and development environments. 

Native SFDX can be used, for example, to push data or metadata within the script.

The benefit of using Hutte is that there is no need to install or learn Git, as our UI has integrated recipes for Git hosting tools, such as GitHub and Azure.

Additionally, changes made on these hosting providers can be viewed in a line-by-line comparison format.

You can start a free 30-day trial or check out our demo to test out our product.

In this article, we'll go through Hutte’s scratch orgs and ready-made pool.

Collaborate on your scratch org creation

By utilizing the "New scratch org" button, numerous users can generate individual scratch orgs, which can be accessed collaboratively by the entire team.

Hutte allows you to select a Git branch from which you can create your environment and name it, consolidating all of your scratch orgs in one place.

🗒️
This feature lets you view a historical overview or snapshot of your projects, apps, and codebases created in Git, which is especially beneficial for teams collaborating on projects.

Without Hutte, relying solely on CLI can be challenging. However, Hutte simplifies the process of making changes to the latest state of your source, implementing new features, and shipping them to Git.

Once integrated with Hutte, developers can load data on the scratch orgs dashboard, and the team can access and create a scratch org from the desired branch by clicking "New scratch orgs."

Running the code locally is no longer a concern, as Hutte's infrastructure allows for asynchronous code running without blocking your machine.

🖥️
After your scratch org is ready, you can log in and test it without affecting other users' data. Hutte essentially streamlines the process of managing and selecting your environments, simplifying the scratch org process.

Take from the pool

Hutte offers a pool of pre-configured orgs that can be quickly and easily accessed without waiting. When you require an environment from the latest state of your source, you can further expedite the process by selecting a scratch org from the pool.

To claim a pool, simply choose "Take from pool" and enter the desired pool name. Additionally, you can customize your pool by adjusting the size and duration of the pool in the "Settings" section.

This functionality allows you to customize your pool according to your requirements, offering you more flexibility and control over your resources and data.

Hutte’s Jira plugin

Using Jira will create corresponding work items. Hutte's Jira plugin can then identify scratch orgs that match the name of your work item or issue.

🤝
As a product manager, you can leave a comment for the developer who worked on the selected scratch org. This functionality encourages collaboration without compromising or overriding the developer's work.

Spin up Hutte’s ready-made pool

Although scratch orgs and scratch org pools are designed to be independent workspaces for exploring and testing features in isolation, working collaboratively can help resolve various challenges.

Collaboration streamlines issues, such as configuration management, data management, and managing multiple scratch org pools. It also enables code sharing, dependency management, and workflow optimization.

Having access to a pre-configured pool eliminates the risk of not being able to continue with your work, which can cause unnecessary delays and production lags.

🎉
Teaming up with others using Hutte's scratch org pool enhances the development process, making it more efficient and streamlined.

Spring Release Notes Box
Spring Release Updates
Scratch Org Snapshots (Beta)
Capture a Scratch Org’s configuration with the new Scratch Org Snapshots feature, which is currently in beta.
Enhanced Features
Scratch Orgs now come with more options for customization and configuration to better match your development needs.
MFA Auto-Enablement
There’s guidance available for troubleshooting login issues after Multi-Factor Authentication (MFA) was automatically enabled for your org.

Document
Scratch Org
management guide

Last updated: 13 Jun 2024