Classes
Public Classes
dstserver
: Install, configure and run DST server instances
Private Classes
dstserver::setup
: Create the dstserver system user and required directories in its home location. Ensure, SteamCMD is available, place install and update scripts and install DST via SteamCMD. Place required systemd service units in the system folder.
Defined types
Public Defined types
Private Defined types
dstserver::config::modoverride
: Generates modgenoverride configuration for servershards to set mods on enabled or disabled and provide custom mod configuration where defined.dstserver::config::worldgenoverride
: Create a worldgenoverride for a server shard if configureddstserver::entity::caves
: Configure the cave shard of an instance and manage its systemd servicedstserver::entity::cluster
: Configure a DST server cluster that can run several DST server shardsdstserver::entity::master
: Configure the master shard of an instance and manage its systemd servicedstserver::instance
: Configure one cluster instance of DST and manage the sytemd service to ensure it is up and running
Install, configure and run DST server instances
include dstserver
class { 'dstserver':
instances => {
my-dst-server => {
servername => 'My First Server',
token => 'token-from-klei',
},
my-second-server => {
servername => 'My Second Server',
token => 'another-token-from-klei',
},
}
}
The following parameters are available in the dstserver
class.
Data type: String
Username for the dstserver system user
Data type: String
Home directory for the system user and install location for all DST related data
Data type: Hash
Instances of DST servers to be configured and started. Each key is used as resourcename for one instance, the values refer to the parameters for dstserver::instance (except path).
Data type: Enum['present', 'absent']
Ensure DST is installed and running, or removed from the node
Default value: present
Data type: Optional[String]
Klei server instance token. Use only for demo purpose with the default demo instance because it overrides the token value for all instances. In production, set the token along with the configuration for each instance.