Steam - BredaUniversityGames/JenkinsLib GitHub Wiki
Deploys your build to Steam via SteamCMD. Handles VDF manifest generation, SteamGuard authentication, and upload.
stages {
perforce.sync()
ue5.build()
steam.deploy()
discord.alert()
}- SteamCMD installed on the build agent
- A Steam developer account with app/depot access
- Steam credential in Jenkins (username/password)
| Parameter | Default | Description |
|---|---|---|
STEAM_CREDENTIAL |
(empty) | Jenkins credential ID (username/password) |
STEAM_CMD_PATH |
(empty) | Path to steamcmd.exe
|
STEAM_APP_ID |
(empty) | Steam App ID |
STEAM_DEPOT_ID |
(empty) | Steam Depot ID |
STEAM_BRANCH |
(empty) | Steam branch to set live (leave empty for none) |
- Navigate to your team's folder in Jenkins
- Credentials > Add Credentials
-
Kind:
Username with password - Username: your Steam username
- Password: your Steam password
-
ID: e.g.,
steam-myproject
- Generates a depot VDF manifest from the template in
resources/ - Generates an app VDF manifest with build metadata
- Attempts deploy without SteamGuard
- If SteamGuard is required, prompts for the code in Jenkins (3-minute timeout)
- Uploads the build to the specified depot and optionally sets a branch live
If your Steam account has SteamGuard enabled (it should), the first deploy will fail and Jenkins will prompt you to enter a SteamGuard code. Check your email or authenticator app, enter the code in the Jenkins input prompt within 3 minutes.
Tip: After the first successful SteamGuard authentication, SteamCMD caches the token on the agent. Subsequent deploys from the same agent won't need the code again (until the token expires).
| Issue | Solution |
|---|---|
| SteamGuard timeout | Enter the code within 3 minutes. Check email/authenticator. |
| "Login failure" | Verify credential username/password. Steam may have locked the account after failed attempts. |
| Wrong depot/app ID | Double-check IDs in Steamworks partner site. |