Applicationbuild
The ApplicationBuild element points to your build archive which must be uploaded to the i3D.net CDN. You must provide information on how to run the build by assigning the name of the exectuable, provide startup parameters, which OS it must run on, etc.
More information on Build Provisioning
Element structure
id
string
Read-only
Unique identifier of this element
name
string
Yes
User defined name of this element
applicationId
string
Read-only
Unique identifier of the Application element this belongs to
osId
int
Yes
stopMethod
int
No
stopTimeout
int
No
The timeout that will be used on restart or destroy of an application instance. The default is taken from the value of Application.stopTimeout - any value submitted here overrides that Application default
executable
string
Yes
Name of the executable file that our system must run to start the application
startupParameters
string
Yes
Startup parameters passed to the executable
runAsNonePrivileged
int
No
0: run as root user (default) 1: run as non-privileged user. This currently only works for builds deployed onto a Linux operating system. Windows builds will always run as administrator.
instanceDoesReadyCallback
int
No
type
int
Read-only
applicationBuildFile
ApplicationBuildFile
Yes
An object describing the location of the original build archive.
buildProvisioningStorageType
int
Yes
hostCapacityTemplateId
int
No
label
No
Collection of client-defined labels
createdAt
int
Read-only
A unix timestamp of when this element was created
Table 1: ApplicationBuild element structure
Executable & startupParameters
You must provide us with the file name of the executable inside your build archive, in order for us to be able to run your application. If the executable is inside of a subfolder, you must provide this path as well. Note that the path here is relative.
When starting your application, we will append the contents of the startupParameters
property to the executable. You can enter any command line arguments you need for your application to run properly. You can use variables inside the startupParameters to use dynamic values such as a game server's network port, IP address, host ID, game server ID, etc. All available variables are explained in the Platform Variables chapter. It includes an example with fictional startupParameters.
Running with lowered privileges
By default we will run your applications with the root or administrator user. If you prefer, for security reasons, to run your utilities and / or game servers with lowered privileges, you can set the property runAsNonePrivileged
to 1.
This feature is only available on Linux as this time. Builds meant to run on Windows will always be exectued with the Administrator user.
Supported operating systems
The platform currently supports the following operating systems that you can use to run your applications on:
Ubuntu 18.04
Ubuntu 20.04
Ubuntu 22.04
Centos 8
Debian 10
Debian 12
Windows Server 2022 Standard
You can also programmatically fetch the list of supported operating systems via GET /v3/operatingsystem
and applying a filter on the 'odpSupported' property.
If you need to use an OS that is currently not supported, you can request support for this by filing a ticket with us.
ApplicationBuild labels
A user can define custom labels (key / value pairs) for an ApplicationBuild, to allow for easy identification and filtering of ApplicationBuild elements.
ApplicationBuildProperty
Just like with the Application element, an ApplicationBuild can be assigned properties, by assigning ApplicationBuildProperty elements to an ApplicationBuild.
Note that properties assigned to an Application will already be inherited by an ApplicationBuild, so there is no need to re-define those for each ApplicationBuild. Unless you want to override a certain property for an ApplicationBuild.
ApplicationBuild creation process flow
An ApplicationBuild is created by calling the endpoint POST /applicationBuild
and is the final stage of the ApplicationBuild creation process:
Relations
See also: Application element relations
Restrictions
You can have any number of ApplicationBuilds on your account. There is no limit.
Related topics
Last updated