Illustration of software products included in the Enhanced Studio Pack.
March 16, 2023

The Perforce Enhanced Studio Pack: Everything You Need For the Cloud

Cloud
Version Control

We talked to users, discussed workflows, simplified onboarding, and learned how companies from indie developers to enterprise game studios deploy version control at scale to create a new way to easily deploy Helix Core into the cloud.

The Perforce Enhanced Studio Pack (ESP)  contains all the tools needed for world-class development in a single, pre-configured environment. It offers a production-ready, turn-key bundle of Perforce software that teams can deploy on AWS and Azure. It includes Infrastructure as Code and configuration management settings with pre-selected smart defaults.

Read along or jump to the section that interests you the most.

➡️ Launch Helix Core in the Cloud

Back to top

What Is Included in the Perforce Enhanced Studio Pack

The Perforce Enhanced Studio Pack provides teams with free Perforce software — deployed their way:

➡️ gET FREE CLOUD TOOLS

Back to top

Perforce Enhanced Studio Pack Layers in Build Order

The Enhanced Studio Pack is made up of several layers. They all stack upon one another, so each layer is abstracted from the next, which allows parameters to be dynamically passed.

Packer Builds

Packer is the tool and the domain-specific language (DSL) is used to define what is included in each machine image. These dictate what gets provisioned on a base image (Rocky Linux). We provide packer projects for the following machine images:

  • Helix Core
  • Helix Swarm
  • Hansoft

After packer builds are complete, they are uploaded to the Cloud Service Provider (CSP), available on both Microsoft Azure and AWS. These become usable, referenceable machine images.

Machine Images

Machine images are a "package" that contains the OS, OS configuration, application installation, and application configuration.

The term machine image is used when talking about all clouds.  If you are referencing AWS, it’s called an AMI (Amazon Machine Image). On Azure, it’s called a Virtual Machine Image. The Enhanced Studio Pack will reference these machine images by a unique identifier (ID or GUID).

Infrastructure as Code (IaC)

Infrastructure as Code defines how the cloud infrastructure is set up. This allows you to declare your software stack in code so it can be shared, collaboratively worked on, and versioned. This prevents manual coding mistakes when deploying a complex architecture.

With the Enhanced Studio Pack, teams can easily install, configure, and tune deployments. Using Infrastructure as Code enables teams to jump-start development to access sensible, smart enterprise-ready defaults to go from proof of concept into production, fast.

Regardless of where a team may deploy and maintain their Helix Core infrastructure, they will have the same repeatable, consistent architecture. Review the Gliffy diagram below showing a basic commit/edge Helix Core architecture. The Perforce Enhanced Studio Pack only deploys one commit server (as of today). But this is an example topology that can be easily extended to enhance global collaboration. 

For example, the commit server could be installed in the us-west region, with the forwarding replicas in another region, closer to artists and developers. The edge server could then be located in the eu-central region. Many different Helix Core architecture topologies can be implemented. 

For more suggestions, read through the server administration guide for more suggestions.

Back to top

What the Perforce Enhanced Studio Pack Installs

This is an ordered list of what the Perforce Enhanced Studio Pack installs as part of the deployment:

  • Perforce networking stack.
  • Networking security group.
  • Identity and access management.
  • Helix Core commit server.
  • Hansoft server.
  • Helix Swarm server.
  • Data lifecycle management policies for creating backup disk snapshots.
  • Helix Swarm extension configuration.
Back to top

Example of Perforce Enhanced Studio Pack Infrastructure as Code

Review the examples of the Infrastructure as Code (IaC) shown below:

Here is a snippet showing Hansoft instance sizing specific to Azure:

"hansoftVMSize": {
  "type": "string",
 "allowedValues": [
     "Standard_D2_v4",
     "Standard_D4_v4",
     "Standard_D8_v4",
     "Standard_D16_v4",
     "Standard_F2s_v2",
      "Standard_F4s_v2",
     "Standard_F8s_v2",
     "Standard_F16s_v2",
     "Standard_F32s_v2",
     "Standard_F48s_v2"
  ],
 "defaultValue": "Standard_D2_v4",
 "metadata": {
   "description": "Please select the size of the VM you wish to deploy."
   }
}

 

Here is a similar snippet of Hansoft instance sizing:

 

Parameters: 
  InstanceType: 
    Type: String
    Default: m5.large
    AllowedValues:
      - t3.nano
      - t3.micro
      - t3.small
      - t3.medium
      - m5.large
      - m5.xlarge
      - m5.2xlarge
      - m5.4xlarge
      - m5.8xlarge
    Description: "Select Hansoft server EC2 instance type."

 

Back to top

What Is Customizable in the Perforce Enhanced Studio Pack?

Teams can download the Perforce Enhanced Studio Pack, customize it, and run it in their cloud of choice —Azure and AWS. In addition, we also provide a Helix Core Marketplace VM Image for both Google Cloud Platform and DigitalOcean.

To make the Perforce Enhanced Studio Pack easy to deploy, the number of available creation fields has been minimized. We have found the Perforce Enhanced Studio Pack is popular with smaller studios and companies that are trying to get Helix Core up and running with little administration on a cloud of their choosing.

The small studios usually do not have a dedicated IT admin, which is why we have chosen smart enterprise defaults for many options.

In addition, we limited user access roles and policies, selected efficient disk types, worked with OpenLogic to use their publicly available, hardened images, enabled SSL, and used standardized networking topologies.

Need Help Getting Set Up in the Cloud?

Optimize your cloud deployment and offload admin tasks to our experts with Helix Remote Admin.

➡️ access helix remote resources

Back to top

Perforce Enhanced Studio Pack Smart Defaults & How to Customize

The Perforce Enhanced Studio Pack comes with smart defaults as well as provides teams with the ability to customize to fit their unique needs. 

Server Deployment Package (SDP)

The Perforce Enhanced Studio Pack uses the Server Deployment Package (SDP) to help deploy the Helix Core product onto the Linux Rocky server.

The SDP comes with configuration settings aimed at production-ready, scalable, and resilient installations, regardless of what you put into Helix Core, Hansoft, or Helix Swarm.

An example a smart default is turning on autocompress, which turns on auto compressing files onto a disk:

 

p4 configure set lbr.autocompress=1

 

Another smart default is setting the P4ROOT volume to have a minimum of 5 gigabytes free to prevent data loss:

 

p4 configure set filesys.P4ROOT.min=5G

 

View the full list of p4d configs here.

Networking

Our templates suggest using your own IP address as part of the install, so only your own computer is allowed access.

Example description from the CIDR input:    

“Input your public IP address in CIDR notation." 

Example: 162.244.43.80/32. 

If you do not readily know your IP address, use a service like whatismyipaddress.com to find your public IP address.

Disk Volumes

The Helix Core server is based on the hardened OpenLogic Rocky Linux distribution:

Depot

  • Holds depot data and checkpoints.
  • Defaults to 500GB.
  • Volume type defaults to an SSD.

Metadata

  • Holds P4D database.
  • Defaults to 64GB.
  • Volume type defaults to an SSD.

Logs

  • Holds P4D logs and journal.
  • Defaults to 64GB.
  • Volume type defaults to an SSD.

Volume type and volume size parameters can be changed both pre- and post-deployment. When running in the cloud, dynamically resizing your instances, volumes, and networking requires only minutes, not months. This enables teams to start small and grow as needed.

Back to top

See How the Perforce Enhanced Studio Pack Works

Check out how the environment looks from a bird’s eye view.

Azure Diagram

Azure ESP Diagram

 

AWS Diagram

AWS ESP Example
Back to top

Perforce Enhanced Studio Pack Deployment Tutorials

Learn how to deploy the Perforce Enhanced Studio Pack in these tutorial on-demand webinars.

 

Back to top

Perforce Enhanced Studio Pack — Get Started Today

Easily deploy the Perforce Enhance Studio Pack today. 

➡️ Start Now

 

Back to top

Here are some helpful links to get you started.

Back to top