Compute
Machine
Terraform reference for Machine.
Schema Properties
| Property | Type | Description |
|---|---|---|
component Default | string | Component the machine belongs to: a group of hosts that perform the same role within an ecosystem. Used to organise configuration. Examples: mycomponent |
configuration_management Default | object | Configuration-management state of the machine: the modules applied to it and the outcome of its most recent configuration run. |
cpu Default | integer | Number of virtual CPUs (virtual machines only). Defaults to 2. Can be grown in place while the machine is running; reducing it requires the machine to be powered off first (the workflow power-cycles it automatically). Examples: 2 |
creation_date Computed | string | Timestamp of when the machine was created (for a physical machine, when its Foreman host was provisioned). Set automatically. |
datacenter DefaultForceNew | string | Region-independent datacenter selector: dc1, dc2 or dc3 — the 1-based datacenter ordinal within the request's region. It resolves internally to the matching physical site for that region. Mandatory when creating a virtual machine; for a physical (bare-metal) machine it is not accepted as input — the datacenter is derived automatically from the discovered device's site. Fixed at creation time: changing it destroys and recreates the machine. Examples: dc1 |
ecosystem Default | string | Ecosystem the machine belongs to: a logical group of hosts that play different roles towards a common technical goal. Used to organise configuration. Examples: ecosystem |
external_interface Computed | object | External network interface on the shared external network. Present only when external_interface_enabled is set at creation time. Read-only. |
external_interface_enabled DefaultForceNew | boolean | When true, attach a second network interface on the shared external network, in addition to the default internal interface. Virtual machines only. Fixed at creation time. Examples: false |
fqdn Computed | string | Fully qualified domain name of the machine: <name>.<tenant>.<sb|pp|pr>.<eu|au>.ginfra.net, assigned automatically from the name, tenant and target environment. For a virtual machine this is also its unique asset id; a physical machine is instead identified by <region>/<cn> (see hardware.cn). Examples: mycustomvm0101e1.mytenant.sb.eu.ginfra.net |
hardware | object | Physical hardware inventory of the machine. Populated only for bare-metal (physical) machines; absent for virtual machines. |
instance Computed | string | Instance identifier distinguishing a single machine that fills a specific role within its component. Examples: 01 |
internal_interface Computed | object | Internal network interface of the machine, attached to the tenant's datacenter subnet. This is the primary, provisioning interface. Read-only. |
kind DefaultForceNew | string | Whether the machine is a virtual machine (full create/update/delete lifecycle plus power operations) or a physical, bare-metal machine (discovered from inventory and assigned out of band, then provisioned by a PXE install: create/delete plus power operations, but no in-place update). Defaults to virtual. Fixed at creation time. Examples: virtual |
name RequiredForceNew | string | Short hostname of the machine, without domain (lower-case alphanumeric). The fully qualified domain name is derived as <name>.<tenant>.<sb|pp|pr>.<eu|au>.ginfra.net. For a virtual machine it is supplied by the user; for a physical machine it follows the standard bare-metal pattern (srvNNNNN) derived from the discovered device. Fixed at creation time: changing it destroys and recreates the machine. Examples: mycustomvm0101e1 |
operating_system ForceNew | string | Operating system to install, selected from the supported OS catalogue (Linux: e.g. rhel9, rhel8, centos7; Windows: e.g. w2k22_core, w2k22_gui). The chosen OS determines the system disk size and default partitioning. The recommended choices are rhel9 for Linux and w2k22_core for Windows. Fixed at creation time: changing it destroys and recreates the machine. Examples: rhel9 |
partitions Computed | list(object) | Filesystem partitions observed on the machine, each with its mount path and free/total capacity, as reported by the platform's monitoring facts. Read-only and informational: this is the live filesystem view, distinct from the data disks requested under volumes. For a physical machine the entries are the raw system disks (e.g. /dev/sda, /dev/sdb) and only their total capacity is known (free is 0). |
ram Default | integer | Memory of the machine, in MB (virtual machines only). Defaults to 2048. Can be grown in place while the machine is running; reducing it requires the machine to be powered off first (the workflow power-cycles it automatically). A machine created with less than 4096 MB must also be powered off before its memory can be increased. Examples: 4096 |
ram_used_percent Computed | number | Percentage of the machine's memory currently in use (0-100), as reported by the platform's monitoring facts. Refreshed on each inventory scrape, so it may lag the live value by a few minutes; absent (0) when no monitoring fact is available yet, e.g. on a freshly provisioned machine. Examples: 42.5 |
serial_number Computed | string | Unique serial tag of the machine. For a physical machine it is the chassis serial from the inventory record; for a virtual machine it is the BIOS/firmware serial read at boot. Assigned automatically; useful for cross-referencing the machine in inventory and support tickets. Read-only. Examples: CZ2938XY01 |
status Computed | string | Current power state of the machine, as observed on the platform. Reflects the live state, not the desired one: it changes asynchronously after a power action (start/stop/reboot). Typical values are ON when the machine is powered on and running, OFF when it is powered off, and UNKNOWN when the state cannot be read. Examples: ON |
team Default | string | Team that owns the machine. Recorded as machine metadata for accountability and reporting. Examples: sre-i |
volumes | list(object) | Additional data disks attached to the machine, beyond the system disk (whose size comes from the operating-system catalogue). Virtual machines only. Disks cannot be added or removed after the machine is created, but an existing disk can be enlarged (never shrunk). Examples: {"description":"Attach one 50 GB data disk in addition to the system disk.","name":"Single data disk","value":[{"name":"data","size_gb":50}]}{"description":"Attach two data disks, e.g. one for application files and one for logs.","name":"Separate application and log disks","value":[{"name":"app","size_gb":100},{"name":"logs","size_gb":50}]} |
worldline_configuration_management Default | object | Optional CMDB metadata linking the machine to its catalogued service and management group. |
resource "gi_compute_machine" "example" { attributes = { name = "mycustomvm0101e1" }}