logo

Perforce on Dev Stream Labs

Dev Stream Labs hosts a Perforce Helix Core server for your project, right next to the build farm that builds it. This guide covers everything you can do with it: creating the server, bringing an existing one across, pulling your own backups, and starting builds on every submit. Every host, address and fingerprint you see here is example data for a fictional project called starfall.

What you get

One Perforce service per project. When it is ready you have a primary p4d with a standby, reachable only over TLS, a dsl_admin account that is yours, and a Helix Swarm instance for code review. Two optional flows attach to it: a self-service backup endpoint you pull from, and a check-in trigger that sends each submit to Build Stream.

What a Perforce service includes and where each part appears in the app
What it isWhere you find it
Perforce serverA primary p4d plus a standby, TLS only, on port 1666.Source Control Hosting Server Configuration
Admin accountdsl_admin, a Perforce super user. Its password is emailed to the project maintainer once and must be changed at first login.The Perforce is ready email
Helix SwarmCode review, always provisioned. Sign in with your Perforce account.The Swarm Server row on the connection card
Backup & exportA read-only endpoint locked to one address; you run the copy.Source Control Hosting Backup & Export
Build on check-inA switch. On, every submitted changelist is posted to Build Stream.The Build on check-in card on the hosting page

Choose your path

The four flows are independent. Pick the one that matches your situation; you can come back for the others.

Migration and export are opposites

Both involve rsync and an SSH key, and they are easy to confuse. They move data in opposite directions and the roles are reversed. Check this table before you start either.

Bring an existing server across Back up and export your data
Use it whenYou already run Perforce elsewhere and want to move onto our platform.Your Perforce server runs on our platform and you want your own off-site copy.
Data movesFrom your current server to your new server here.From your server here to your backup machine.
Who runs rsyncWe do.You do, with a command we generate.
Whose SSH keyOurs. You install its public half on your current server.Yours. You paste its public half into the app.
When it is availableOnly when the server is created, by choosing Bring my server across.Any time, on a live server.
It ends withA live server here, adopted from your data.A standing endpoint and a restorable copy on your machine.

The reliable tell: a screen about installing our key on your server is migration. A command you run against our server is export.

Words this guide uses

Terms used throughout the guide
TermMeaning
P4PORTThe address a Perforce client connects to. Hosted servers are TLS only, so it always starts with ssl:, for example ssl:p4.starfall.northwind.example.com:1666.
SSL fingerprintThe server certificate's fingerprint, shown on the connection card and in the ready email. You compare it when you first connect (p4 trust). If it does not match, you are not talking to your server.
dsl_adminYour Perforce super user. The password is emailed once to the project maintainer and never shown in the app or the API.
Recorded, then appliedSaving a setting in the app records what you asked for. A background pass then applies it to the live server, usually within a minute. The page shows the setting as pending until that happens. A save that succeeded is a request that was accepted, not a change that is finished.
Estimated progressTransfer percentages are estimates. rsync discovers files as it goes, so the total can grow while a copy runs.
Project maintainerThe person whose email address is on the project. Provisioning emails, including the admin password, go to them.

Where things live in the app

Perforce is added to a project as the Source Control Hosting service. Once it is ready, a Source Control Hosting section appears in the project sidebar with two pages: Server Configuration, where the server is created and its connection details live, and Backup & Export.

The project sidebar with the Source Control Hosting section expanded, showing Server Configuration and Backup & Export.
The Source Control Hosting section appears in the sidebar once the service is ready.

If your project does not have the service yet, add it from the sidebar's Add a Service button (the one with the plus icon), or tick Source Control Hosting when you create a project. Its card reads: Create a server for your source control hosting. Dev Stream handles the setup and maintenance so you don't have to.

The Select Your Services step of the project dialog with the Source Control Hosting card and its description.
Adding Source Control Hosting to a project.

The pages in this guide

Something out of date or unclear? Email [email protected].