1. Packages
  2. Glesys Provider
  3. API Docs
  4. Server
glesys 0.14.2 published on Tuesday, Apr 15, 2025 by glesys

glesys.Server

Explore with Pulumi AI

Create a new GleSYS virtual server.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as glesys from "@pulumi/glesys";

const myParams = {
    name: "Alice",
    numberOfBalloons: 99,
};
const kvmServer = new glesys.Server("kvmServer", {
    datacenter: "Stockholm",
    memory: 1024,
    storage: 20,
    cpu: 1,
    bandwidth: 100,
    hostname: "www1",
    platform: "KVM",
    template: "debian-11",
    cloudconfigparams: myParams,
    cloudconfig: `#cloud-config
bootcmd:
  - echo 'Hello {{params.name}}!'`,
    users: [
        {
            username: "alice",
            publickeys: [
                "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINOCh8br7CwZDMGmINyJgBip943QXgkf7XdXrDMJf5Dl alice@example.com",
                "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOfN4dBsS2p1UX+DP6RicdxAYCCeRK8mzCldCS0W9A+5 alice@ws.example.com",
            ],
            password: "hunter4!",
        },
        {
            username: "bob",
            publickeys: ["ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINOCh8br7CwZDMGmINyJgBip943QXgkf7XdXrDMJf5Dl bob@example.com"],
            password: "hunter444!",
        },
    ],
});
// KVM with backups_schedule
const kvmIndex_serverServer = new glesys.Server("kvmIndex/serverServer", {
    datacenter: "Stockholm",
    memory: 1024,
    storage: 20,
    cpu: 1,
    bandwidth: 100,
    hostname: "www1",
    platform: "KVM",
    template: "debian-11",
    users: [{
        username: "alice",
        publickeys: [
            "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINOCh8br7CwZDMGmINyJgBip943QXgkf7XdXrDMJf5Dl alice@example.com",
            "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOfN4dBsS2p1UX+DP6RicdxAYCCeRK8mzCldCS0W9A+5 alice@ws.example.com",
        ],
        password: "hunter4!",
    }],
    backupsSchedules: [
        {
            frequency: "daily",
            retention: 7,
        },
        {
            frequency: "weekly",
            retention: 4,
        },
    ],
});
const config = new pulumi.Config();
const datacenter = config.get("datacenter") || "Falkenberg";
const description = config.get("description") || "tf-vmware-";
const bw = config.getNumber("bw") || 100;
const mem = config.getNumber("mem") || 1024;
const storage = config.getNumber("storage") || 20;
const platform = config.getObject<{Falkenberg?: string, Stockholm?: string}>("platform") || {
    Falkenberg: "KVM",
    Stockholm: "VMware",
};
const region = config.getObject<{0?: string, 1?: string}>("region") || {
    "0": "Falkenberg",
    "1": "Stockholm",
};
const regionShort = config.getObject<{0?: string, 1?: string}>("regionShort") || {
    "0": "fbg",
    "1": "sth",
};
const regionOs = config.getObject<{Falkenberg?: string, Stockholm?: string}>("regionOs") || {
    Falkenberg: "debian9",
    Stockholm: "debian9",
};
const template = config.getObject<{debian8?: string, debian9?: string}>("template") || {
    debian8: "Debian 8 64-bit",
    debian9: "Debian 9 64-bit",
};
const templatelist = config.getObject<{0?: string, 1?: string, 2?: string, 3?: string, 4?: string, 5?: string, 6?: string, 7?: string, 8?: string}>("templatelist") || {
    "0": "Centos 7 64-bit",
    "1": "Centos 8 64-bit",
    "2": "Debian 8 64-bit",
    "3": "Debian 9 64-bit",
    "4": "Debian 10 64-bit",
    "5": "Ubuntu 14.04 LTS 64-bit",
    "6": "Ubuntu 16.04 LTS 64-bit",
    "7": "Ubuntu 18.04 LTS 64-bit",
    "8": "Ubuntu 20.04 LTS 64-bit",
};
// Create the server resource
let vmware: glesys.Server | undefined;
if (1 == true) {
    vmware = new glesys.Server("vmware", {
        bandwidth: bw,
        cpu: 1,
        datacenter: "Falkenberg",
        description: `${description}-example-${range.value}`,
        hostname: `vmware-vm-${range.value}`,
        memory: mem,
        platform: "VMware",
        storage: storage,
        template: templatelist[range.value],
        password: "hunter2!",
    });
}
Copy
import pulumi
import pulumi_glesys as glesys

my_params = {
    "name": "Alice",
    "numberOfBalloons": 99,
}
kvm_server = glesys.Server("kvmServer",
    datacenter="Stockholm",
    memory=1024,
    storage=20,
    cpu=1,
    bandwidth=100,
    hostname="www1",
    platform="KVM",
    template="debian-11",
    cloudconfigparams=my_params,
    cloudconfig="""#cloud-config
bootcmd:
  - echo 'Hello {{params.name}}!'""",
    users=[
        {
            "username": "alice",
            "publickeys": [
                "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINOCh8br7CwZDMGmINyJgBip943QXgkf7XdXrDMJf5Dl alice@example.com",
                "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOfN4dBsS2p1UX+DP6RicdxAYCCeRK8mzCldCS0W9A+5 alice@ws.example.com",
            ],
            "password": "hunter4!",
        },
        {
            "username": "bob",
            "publickeys": ["ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINOCh8br7CwZDMGmINyJgBip943QXgkf7XdXrDMJf5Dl bob@example.com"],
            "password": "hunter444!",
        },
    ])
# KVM with backups_schedule
kvm_index_server_server = glesys.Server("kvmIndex/serverServer",
    datacenter="Stockholm",
    memory=1024,
    storage=20,
    cpu=1,
    bandwidth=100,
    hostname="www1",
    platform="KVM",
    template="debian-11",
    users=[{
        "username": "alice",
        "publickeys": [
            "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINOCh8br7CwZDMGmINyJgBip943QXgkf7XdXrDMJf5Dl alice@example.com",
            "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOfN4dBsS2p1UX+DP6RicdxAYCCeRK8mzCldCS0W9A+5 alice@ws.example.com",
        ],
        "password": "hunter4!",
    }],
    backups_schedules=[
        {
            "frequency": "daily",
            "retention": 7,
        },
        {
            "frequency": "weekly",
            "retention": 4,
        },
    ])
config = pulumi.Config()
datacenter = config.get("datacenter")
if datacenter is None:
    datacenter = "Falkenberg"
description = config.get("description")
if description is None:
    description = "tf-vmware-"
bw = config.get_float("bw")
if bw is None:
    bw = 100
mem = config.get_float("mem")
if mem is None:
    mem = 1024
storage = config.get_float("storage")
if storage is None:
    storage = 20
platform = config.get_object("platform")
if platform is None:
    platform = {
        "Falkenberg": "KVM",
        "Stockholm": "VMware",
    }
region = config.get_object("region")
if region is None:
    region = {
        "0": "Falkenberg",
        "1": "Stockholm",
    }
region_short = config.get_object("regionShort")
if region_short is None:
    region_short = {
        "0": "fbg",
        "1": "sth",
    }
region_os = config.get_object("regionOs")
if region_os is None:
    region_os = {
        "Falkenberg": "debian9",
        "Stockholm": "debian9",
    }
template = config.get_object("template")
if template is None:
    template = {
        "debian8": "Debian 8 64-bit",
        "debian9": "Debian 9 64-bit",
    }
templatelist = config.get_object("templatelist")
if templatelist is None:
    templatelist = {
        "0": "Centos 7 64-bit",
        "1": "Centos 8 64-bit",
        "2": "Debian 8 64-bit",
        "3": "Debian 9 64-bit",
        "4": "Debian 10 64-bit",
        "5": "Ubuntu 14.04 LTS 64-bit",
        "6": "Ubuntu 16.04 LTS 64-bit",
        "7": "Ubuntu 18.04 LTS 64-bit",
        "8": "Ubuntu 20.04 LTS 64-bit",
    }
# Create the server resource
vmware = None
if 1 == True:
    vmware = glesys.Server("vmware",
        bandwidth=bw,
        cpu=1,
        datacenter="Falkenberg",
        description=f"{description}-example-{range['value']}",
        hostname=f"vmware-vm-{range['value']}",
        memory=mem,
        platform="VMware",
        storage=storage,
        template=templatelist[range["value"]],
        password="hunter2!")
Copy
package main

import (
	"fmt"

	"github.com/pulumi/pulumi-terraform-provider/sdks/go/glesys/glesys"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		myParams := map[string]interface{}{
			"name":             "Alice",
			"numberOfBalloons": 99,
		}
		_, err := glesys.NewServer(ctx, "kvmServer", &glesys.ServerArgs{
			Datacenter:        pulumi.String("Stockholm"),
			Memory:            pulumi.Float64(1024),
			Storage:           pulumi.Float64(20),
			Cpu:               pulumi.Float64(1),
			Bandwidth:         pulumi.Float64(100),
			Hostname:          pulumi.String("www1"),
			Platform:          pulumi.String("KVM"),
			Template:          pulumi.String("debian-11"),
			Cloudconfigparams: pulumi.Map(myParams),
			Cloudconfig:       pulumi.String("#cloud-config\nbootcmd:\n  - echo 'Hello {{params.name}}!'"),
			Users: glesys.ServerUserArray{
				&glesys.ServerUserArgs{
					Username: pulumi.String("alice"),
					Publickeys: pulumi.StringArray{
						pulumi.String("ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINOCh8br7CwZDMGmINyJgBip943QXgkf7XdXrDMJf5Dl alice@example.com"),
						pulumi.String("ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOfN4dBsS2p1UX+DP6RicdxAYCCeRK8mzCldCS0W9A+5 alice@ws.example.com"),
					},
					Password: pulumi.String("hunter4!"),
				},
				&glesys.ServerUserArgs{
					Username: pulumi.String("bob"),
					Publickeys: pulumi.StringArray{
						pulumi.String("ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINOCh8br7CwZDMGmINyJgBip943QXgkf7XdXrDMJf5Dl bob@example.com"),
					},
					Password: pulumi.String("hunter444!"),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = glesys.NewServer(ctx, "kvmIndex/serverServer", &glesys.ServerArgs{
			Datacenter: pulumi.String("Stockholm"),
			Memory:     pulumi.Float64(1024),
			Storage:    pulumi.Float64(20),
			Cpu:        pulumi.Float64(1),
			Bandwidth:  pulumi.Float64(100),
			Hostname:   pulumi.String("www1"),
			Platform:   pulumi.String("KVM"),
			Template:   pulumi.String("debian-11"),
			Users: glesys.ServerUserArray{
				&glesys.ServerUserArgs{
					Username: pulumi.String("alice"),
					Publickeys: pulumi.StringArray{
						pulumi.String("ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINOCh8br7CwZDMGmINyJgBip943QXgkf7XdXrDMJf5Dl alice@example.com"),
						pulumi.String("ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOfN4dBsS2p1UX+DP6RicdxAYCCeRK8mzCldCS0W9A+5 alice@ws.example.com"),
					},
					Password: pulumi.String("hunter4!"),
				},
			},
			BackupsSchedules: glesys.ServerBackupsScheduleArray{
				&glesys.ServerBackupsScheduleArgs{
					Frequency: pulumi.String("daily"),
					Retention: pulumi.Float64(7),
				},
				&glesys.ServerBackupsScheduleArgs{
					Frequency: pulumi.String("weekly"),
					Retention: pulumi.Float64(4),
				},
			},
		})
		if err != nil {
			return err
		}
		cfg := config.New(ctx, "")
		datacenter := "Falkenberg"
		if param := cfg.Get("datacenter"); param != "" {
			datacenter = param
		}
		description := "tf-vmware-"
		if param := cfg.Get("description"); param != "" {
			description = param
		}
		bw := float64(100)
		if param := cfg.GetFloat64("bw"); param != 0 {
			bw = param
		}
		mem := float64(1024)
		if param := cfg.GetFloat64("mem"); param != 0 {
			mem = param
		}
		storage := float64(20)
		if param := cfg.GetFloat64("storage"); param != 0 {
			storage = param
		}
		platform := map[string]interface{}{
			"Falkenberg": "KVM",
			"Stockholm":  "VMware",
		}
		if param := cfg.GetObject("platform"); param != nil {
			platform = param
		}
		region := map[string]interface{}{
			"0": "Falkenberg",
			"1": "Stockholm",
		}
		if param := cfg.GetObject("region"); param != nil {
			region = param
		}
		regionShort := map[string]interface{}{
			"0": "fbg",
			"1": "sth",
		}
		if param := cfg.GetObject("regionShort"); param != nil {
			regionShort = param
		}
		regionOs := map[string]interface{}{
			"Falkenberg": "debian9",
			"Stockholm":  "debian9",
		}
		if param := cfg.GetObject("regionOs"); param != nil {
			regionOs = param
		}
		template := map[string]interface{}{
			"debian8": "Debian 8 64-bit",
			"debian9": "Debian 9 64-bit",
		}
		if param := cfg.GetObject("template"); param != nil {
			template = param
		}
		templatelist := map[string]interface{}{
			"0": "Centos 7 64-bit",
			"1": "Centos 8 64-bit",
			"2": "Debian 8 64-bit",
			"3": "Debian 9 64-bit",
			"4": "Debian 10 64-bit",
			"5": "Ubuntu 14.04 LTS 64-bit",
			"6": "Ubuntu 16.04 LTS 64-bit",
			"7": "Ubuntu 18.04 LTS 64-bit",
			"8": "Ubuntu 20.04 LTS 64-bit",
		}
		if param := cfg.GetObject("templatelist"); param != nil {
			templatelist = param
		}
		// Create the server resource
		var vmware []*glesys.Server
		for index := 0; index < 1 == true; index++ {
			key0 := index
			val0 := index
			__res, err := glesys.NewServer(ctx, fmt.Sprintf("vmware-%v", key0), &glesys.ServerArgs{
				Bandwidth:   pulumi.Float64(bw),
				Cpu:         pulumi.Float64(1),
				Datacenter:  pulumi.String("Falkenberg"),
				Description: pulumi.Sprintf("%v-example-%v", description, val0),
				Hostname:    pulumi.Sprintf("vmware-vm-%v", val0),
				Memory:      pulumi.Float64(mem),
				Platform:    pulumi.String("VMware"),
				Storage:     pulumi.Float64(storage),
				Template:    templatelist[val0],
				Password:    pulumi.String("hunter2!"),
			})
			if err != nil {
				return err
			}
			vmware = append(vmware, __res)
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Glesys = Pulumi.Glesys;

return await Deployment.RunAsync(() => 
{
    var myParams = 
    {
        { "name", "Alice" },
        { "numberOfBalloons", 99 },
    };

    var kvmServer = new Glesys.Server("kvmServer", new()
    {
        Datacenter = "Stockholm",
        Memory = 1024,
        Storage = 20,
        Cpu = 1,
        Bandwidth = 100,
        Hostname = "www1",
        Platform = "KVM",
        Template = "debian-11",
        Cloudconfigparams = myParams,
        Cloudconfig = @"#cloud-config
bootcmd:
  - echo 'Hello {{params.name}}!'",
        Users = new[]
        {
            new Glesys.Inputs.ServerUserArgs
            {
                Username = "alice",
                Publickeys = new[]
                {
                    "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINOCh8br7CwZDMGmINyJgBip943QXgkf7XdXrDMJf5Dl alice@example.com",
                    "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOfN4dBsS2p1UX+DP6RicdxAYCCeRK8mzCldCS0W9A+5 alice@ws.example.com",
                },
                Password = "hunter4!",
            },
            new Glesys.Inputs.ServerUserArgs
            {
                Username = "bob",
                Publickeys = new[]
                {
                    "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINOCh8br7CwZDMGmINyJgBip943QXgkf7XdXrDMJf5Dl bob@example.com",
                },
                Password = "hunter444!",
            },
        },
    });

    // KVM with backups_schedule
    var kvmIndex_serverServer = new Glesys.Server("kvmIndex/serverServer", new()
    {
        Datacenter = "Stockholm",
        Memory = 1024,
        Storage = 20,
        Cpu = 1,
        Bandwidth = 100,
        Hostname = "www1",
        Platform = "KVM",
        Template = "debian-11",
        Users = new[]
        {
            new Glesys.Inputs.ServerUserArgs
            {
                Username = "alice",
                Publickeys = new[]
                {
                    "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINOCh8br7CwZDMGmINyJgBip943QXgkf7XdXrDMJf5Dl alice@example.com",
                    "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOfN4dBsS2p1UX+DP6RicdxAYCCeRK8mzCldCS0W9A+5 alice@ws.example.com",
                },
                Password = "hunter4!",
            },
        },
        BackupsSchedules = new[]
        {
            new Glesys.Inputs.ServerBackupsScheduleArgs
            {
                Frequency = "daily",
                Retention = 7,
            },
            new Glesys.Inputs.ServerBackupsScheduleArgs
            {
                Frequency = "weekly",
                Retention = 4,
            },
        },
    });

    var config = new Config();
    var datacenter = config.Get("datacenter") ?? "Falkenberg";
    var description = config.Get("description") ?? "tf-vmware-";
    var bw = config.GetDouble("bw") ?? 100;
    var mem = config.GetDouble("mem") ?? 1024;
    var storage = config.GetDouble("storage") ?? 20;
    var platform = config.GetObject<Platform>("platform") ?? 
    {
        { "Falkenberg", "KVM" },
        { "Stockholm", "VMware" },
    };
    var region = config.GetObject<Region>("region") ?? 
    {
        { "0", "Falkenberg" },
        { "1", "Stockholm" },
    };
    var regionShort = config.GetObject<RegionShort>("regionShort") ?? 
    {
        { "0", "fbg" },
        { "1", "sth" },
    };
    var regionOs = config.GetObject<RegionOs>("regionOs") ?? 
    {
        { "Falkenberg", "debian9" },
        { "Stockholm", "debian9" },
    };
    var template = config.GetObject<Template>("template") ?? 
    {
        { "debian8", "Debian 8 64-bit" },
        { "debian9", "Debian 9 64-bit" },
    };
    var templatelist = config.GetObject<Templatelist>("templatelist") ?? 
    {
        { "0", "Centos 7 64-bit" },
        { "1", "Centos 8 64-bit" },
        { "2", "Debian 8 64-bit" },
        { "3", "Debian 9 64-bit" },
        { "4", "Debian 10 64-bit" },
        { "5", "Ubuntu 14.04 LTS 64-bit" },
        { "6", "Ubuntu 16.04 LTS 64-bit" },
        { "7", "Ubuntu 18.04 LTS 64-bit" },
        { "8", "Ubuntu 20.04 LTS 64-bit" },
    };
    // Create the server resource
    var vmware = new List<Glesys.Server>();
    for (var rangeIndex = 0; rangeIndex < (1 == true); rangeIndex++)
    {
        var range = new { Value = rangeIndex };
        vmware.Add(new Glesys.Server($"vmware-{range.Value}", new()
        {
            Bandwidth = bw,
            Cpu = 1,
            Datacenter = "Falkenberg",
            Description = $"{description}-example-{range.Value}",
            Hostname = $"vmware-vm-{range.Value}",
            Memory = mem,
            Platform = "VMware",
            Storage = storage,
            Template = templatelist[range.Value],
            Password = "hunter2!",
        }));
    }
});

public class Platform
{
    public string Falkenberg { get; set; }
    public string Stockholm { get; set; }
}

public class Region
{
    public string 0 { get; set; }
    public string 1 { get; set; }
}

public class RegionOs
{
    public string Falkenberg { get; set; }
    public string Stockholm { get; set; }
}

public class RegionShort
{
    public string 0 { get; set; }
    public string 1 { get; set; }
}

public class Template
{
    public string debian8 { get; set; }
    public string debian9 { get; set; }
}

public class Templatelist
{
    public string 0 { get; set; }
    public string 1 { get; set; }
    public string 2 { get; set; }
    public string 3 { get; set; }
    public string 4 { get; set; }
    public string 5 { get; set; }
    public string 6 { get; set; }
    public string 7 { get; set; }
    public string 8 { get; set; }
}
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.glesys.Server;
import com.pulumi.glesys.ServerArgs;
import com.pulumi.glesys.inputs.ServerUserArgs;
import com.pulumi.glesys.inputs.ServerBackupsScheduleArgs;
import com.pulumi.codegen.internal.KeyedValue;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        final var config = ctx.config();
        final var myParams = %!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);

        var kvmServer = new Server("kvmServer", ServerArgs.builder()
            .datacenter("Stockholm")
            .memory(1024)
            .storage(20)
            .cpu(1)
            .bandwidth(100)
            .hostname("www1")
            .platform("KVM")
            .template("debian-11")
            .cloudconfigparams(myParams)
            .cloudconfig("""
#cloud-config
bootcmd:
  - echo 'Hello {{params.name}}!'            """)
            .users(            
                ServerUserArgs.builder()
                    .username("alice")
                    .publickeys(                    
                        "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINOCh8br7CwZDMGmINyJgBip943QXgkf7XdXrDMJf5Dl alice@example.com",
                        "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOfN4dBsS2p1UX+DP6RicdxAYCCeRK8mzCldCS0W9A+5 alice@ws.example.com")
                    .password("hunter4!")
                    .build(),
                ServerUserArgs.builder()
                    .username("bob")
                    .publickeys("ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINOCh8br7CwZDMGmINyJgBip943QXgkf7XdXrDMJf5Dl bob@example.com")
                    .password("hunter444!")
                    .build())
            .build());

        // KVM with backups_schedule
        var kvmIndex_serverServer = new Server("kvmIndex/serverServer", ServerArgs.builder()
            .datacenter("Stockholm")
            .memory(1024)
            .storage(20)
            .cpu(1)
            .bandwidth(100)
            .hostname("www1")
            .platform("KVM")
            .template("debian-11")
            .users(ServerUserArgs.builder()
                .username("alice")
                .publickeys(                
                    "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINOCh8br7CwZDMGmINyJgBip943QXgkf7XdXrDMJf5Dl alice@example.com",
                    "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOfN4dBsS2p1UX+DP6RicdxAYCCeRK8mzCldCS0W9A+5 alice@ws.example.com")
                .password("hunter4!")
                .build())
            .backupsSchedules(            
                ServerBackupsScheduleArgs.builder()
                    .frequency("daily")
                    .retention(7)
                    .build(),
                ServerBackupsScheduleArgs.builder()
                    .frequency("weekly")
                    .retention(4)
                    .build())
            .build());

        final var datacenter = config.get("datacenter").orElse("Falkenberg");
        final var description = config.get("description").orElse("tf-vmware-");
        final var bw = config.get("bw").orElse(100);
        final var mem = config.get("mem").orElse(1024);
        final var storage = config.get("storage").orElse(20);
        final var platform = config.get("platform").orElse(ServerBackupsScheduleArgs.builder()
            .falkenberg("KVM")
            .stockholm("VMware")
            .build());
        final var region = config.get("region").orElse(ServerBackupsScheduleArgs.builder()
%!v(PANIC=Format method: interface conversion: model.Expression is *model.TemplateExpression, not *model.LiteralValueExpression));
            final var regionShort = config.get("regionShort").orElse(ServerBackupsScheduleArgs.builder()
%!v(PANIC=Format method: interface conversion: model.Expression is *model.TemplateExpression, not *model.LiteralValueExpression));
                final var regionOs = config.get("regionOs").orElse(ServerBackupsScheduleArgs.builder()
                    .falkenberg("debian9")
                    .stockholm("debian9")
                    .build());
                final var template = config.get("template").orElse(ServerBackupsScheduleArgs.builder()
                    .debian8("Debian 8 64-bit")
                    .debian9("Debian 9 64-bit")
                    .build());
                final var templatelist = config.get("templatelist").orElse(ServerBackupsScheduleArgs.builder()
%!v(PANIC=Format method: interface conversion: model.Expression is *model.TemplateExpression, not *model.LiteralValueExpression));
                    // Create the server resource
                    for (var i = 0; i < (1 == true); i++) {
                        new Server("vmware-" + i, ServerArgs.builder()
                            .bandwidth(bw)
                            .cpu(1)
                            .datacenter("Falkenberg")
                            .description(String.format("%s-example-%s", description,range.value()))
                            .hostname(String.format("vmware-vm-%s", range.value()))
                            .memory(mem)
                            .platform("VMware")
                            .storage(storage)
                            .template(templatelist[range.value()])
                            .password("hunter2!")
                            .build());

                    
}
                }
}
Copy
Coming soon!

Cloud Config

When using the KVM platform you can provide a custom cloud-config file to configure and provision your server automatically.

Examples can be found in the GleSYS API - Cloud config documentation

Create Server Resource

Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

Constructor syntax

new Server(name: string, args: ServerArgs, opts?: CustomResourceOptions);
@overload
def Server(resource_name: str,
           args: ServerArgs,
           opts: Optional[ResourceOptions] = None)

@overload
def Server(resource_name: str,
           opts: Optional[ResourceOptions] = None,
           datacenter: Optional[str] = None,
           bandwidth: Optional[float] = None,
           storage: Optional[float] = None,
           memory: Optional[float] = None,
           hostname: Optional[str] = None,
           cpu: Optional[float] = None,
           ipv6_address: Optional[str] = None,
           platform: Optional[str] = None,
           cloudconfigparams: Optional[Mapping[str, str]] = None,
           ipv4_address: Optional[str] = None,
           backups_schedules: Optional[Sequence[ServerBackupsScheduleArgs]] = None,
           cloudconfig: Optional[str] = None,
           password: Optional[str] = None,
           description: Optional[str] = None,
           publickey: Optional[str] = None,
           server_id: Optional[str] = None,
           campaigncode: Optional[str] = None,
           template: Optional[str] = None,
           timeouts: Optional[ServerTimeoutsArgs] = None,
           users: Optional[Sequence[ServerUserArgs]] = None)
func NewServer(ctx *Context, name string, args ServerArgs, opts ...ResourceOption) (*Server, error)
public Server(string name, ServerArgs args, CustomResourceOptions? opts = null)
public Server(String name, ServerArgs args)
public Server(String name, ServerArgs args, CustomResourceOptions options)
type: glesys:Server
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. ServerArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. ServerArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. ServerArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. ServerArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. ServerArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

Constructor example

The following reference example uses placeholder values for all input properties.

var serverResource = new Glesys.Server("serverResource", new()
{
    Datacenter = "string",
    Bandwidth = 0,
    Storage = 0,
    Memory = 0,
    Hostname = "string",
    Cpu = 0,
    Ipv6Address = "string",
    Platform = "string",
    Cloudconfigparams = 
    {
        { "string", "string" },
    },
    Ipv4Address = "string",
    BackupsSchedules = new[]
    {
        new Glesys.Inputs.ServerBackupsScheduleArgs
        {
            Frequency = "string",
            Retention = 0,
        },
    },
    Cloudconfig = "string",
    Password = "string",
    Description = "string",
    Publickey = "string",
    ServerId = "string",
    Campaigncode = "string",
    Template = "string",
    Timeouts = new Glesys.Inputs.ServerTimeoutsArgs
    {
        Create = "string",
        Delete = "string",
    },
    Users = new[]
    {
        new Glesys.Inputs.ServerUserArgs
        {
            Password = "string",
            Publickeys = new[]
            {
                "string",
            },
            Username = "string",
        },
    },
});
Copy
example, err := glesys.NewServer(ctx, "serverResource", &glesys.ServerArgs{
Datacenter: pulumi.String("string"),
Bandwidth: pulumi.Float64(0),
Storage: pulumi.Float64(0),
Memory: pulumi.Float64(0),
Hostname: pulumi.String("string"),
Cpu: pulumi.Float64(0),
Ipv6Address: pulumi.String("string"),
Platform: pulumi.String("string"),
Cloudconfigparams: pulumi.StringMap{
"string": pulumi.String("string"),
},
Ipv4Address: pulumi.String("string"),
BackupsSchedules: .ServerBackupsScheduleArray{
&.ServerBackupsScheduleArgs{
Frequency: pulumi.String("string"),
Retention: pulumi.Float64(0),
},
},
Cloudconfig: pulumi.String("string"),
Password: pulumi.String("string"),
Description: pulumi.String("string"),
Publickey: pulumi.String("string"),
ServerId: pulumi.String("string"),
Campaigncode: pulumi.String("string"),
Template: pulumi.String("string"),
Timeouts: &.ServerTimeoutsArgs{
Create: pulumi.String("string"),
Delete: pulumi.String("string"),
},
Users: .ServerUserArray{
&.ServerUserArgs{
Password: pulumi.String("string"),
Publickeys: pulumi.StringArray{
pulumi.String("string"),
},
Username: pulumi.String("string"),
},
},
})
Copy
var serverResource = new Server("serverResource", ServerArgs.builder()
    .datacenter("string")
    .bandwidth(0)
    .storage(0)
    .memory(0)
    .hostname("string")
    .cpu(0)
    .ipv6Address("string")
    .platform("string")
    .cloudconfigparams(Map.of("string", "string"))
    .ipv4Address("string")
    .backupsSchedules(ServerBackupsScheduleArgs.builder()
        .frequency("string")
        .retention(0)
        .build())
    .cloudconfig("string")
    .password("string")
    .description("string")
    .publickey("string")
    .serverId("string")
    .campaigncode("string")
    .template("string")
    .timeouts(ServerTimeoutsArgs.builder()
        .create("string")
        .delete("string")
        .build())
    .users(ServerUserArgs.builder()
        .password("string")
        .publickeys("string")
        .username("string")
        .build())
    .build());
Copy
server_resource = glesys.Server("serverResource",
    datacenter="string",
    bandwidth=0,
    storage=0,
    memory=0,
    hostname="string",
    cpu=0,
    ipv6_address="string",
    platform="string",
    cloudconfigparams={
        "string": "string",
    },
    ipv4_address="string",
    backups_schedules=[{
        "frequency": "string",
        "retention": 0,
    }],
    cloudconfig="string",
    password="string",
    description="string",
    publickey="string",
    server_id="string",
    campaigncode="string",
    template="string",
    timeouts={
        "create": "string",
        "delete": "string",
    },
    users=[{
        "password": "string",
        "publickeys": ["string"],
        "username": "string",
    }])
Copy
const serverResource = new glesys.Server("serverResource", {
    datacenter: "string",
    bandwidth: 0,
    storage: 0,
    memory: 0,
    hostname: "string",
    cpu: 0,
    ipv6Address: "string",
    platform: "string",
    cloudconfigparams: {
        string: "string",
    },
    ipv4Address: "string",
    backupsSchedules: [{
        frequency: "string",
        retention: 0,
    }],
    cloudconfig: "string",
    password: "string",
    description: "string",
    publickey: "string",
    serverId: "string",
    campaigncode: "string",
    template: "string",
    timeouts: {
        create: "string",
        "delete": "string",
    },
    users: [{
        password: "string",
        publickeys: ["string"],
        username: "string",
    }],
});
Copy
type: glesys:Server
properties:
    backupsSchedules:
        - frequency: string
          retention: 0
    bandwidth: 0
    campaigncode: string
    cloudconfig: string
    cloudconfigparams:
        string: string
    cpu: 0
    datacenter: string
    description: string
    hostname: string
    ipv4Address: string
    ipv6Address: string
    memory: 0
    password: string
    platform: string
    publickey: string
    serverId: string
    storage: 0
    template: string
    timeouts:
        create: string
        delete: string
    users:
        - password: string
          publickeys:
            - string
          username: string
Copy

Server Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

The Server resource accepts the following input properties:

Bandwidth This property is required. double
Server network adapter bandwidth
Cpu This property is required. double
Server CPU cores count
Datacenter This property is required. string
Server datacenter placement
Hostname This property is required. string
Server hostname
Memory This property is required. double
Server RAM setting
Storage This property is required. double
Server disk space
BackupsSchedules List<ServerBackupsSchedule>
KVM Server backup schedule definition.
Campaigncode string
Campaigncode used during creation for possible discount
Cloudconfig string
Cloudconfig used to provision server using a provided cloud-config mustache template.
Cloudconfigparams Dictionary<string, string>
Description string
Server description
Ipv4Address string
Server IPv4 address, set none to disable IP allocation
Ipv6Address string
Server IPv6 address, set none to disable IP allocation
Password string
Server root password, VMware only
Platform string
Server virtualisation platform, KVM or VMware
Publickey string
ServerId string
The ID of this resource.
Template string
Server OS template
Timeouts ServerTimeouts
Users List<ServerUser>
Bandwidth This property is required. float64
Server network adapter bandwidth
Cpu This property is required. float64
Server CPU cores count
Datacenter This property is required. string
Server datacenter placement
Hostname This property is required. string
Server hostname
Memory This property is required. float64
Server RAM setting
Storage This property is required. float64
Server disk space
BackupsSchedules []ServerBackupsScheduleArgs
KVM Server backup schedule definition.
Campaigncode string
Campaigncode used during creation for possible discount
Cloudconfig string
Cloudconfig used to provision server using a provided cloud-config mustache template.
Cloudconfigparams map[string]string
Description string
Server description
Ipv4Address string
Server IPv4 address, set none to disable IP allocation
Ipv6Address string
Server IPv6 address, set none to disable IP allocation
Password string
Server root password, VMware only
Platform string
Server virtualisation platform, KVM or VMware
Publickey string
ServerId string
The ID of this resource.
Template string
Server OS template
Timeouts ServerTimeoutsArgs
Users []ServerUserArgs
bandwidth This property is required. Double
Server network adapter bandwidth
cpu This property is required. Double
Server CPU cores count
datacenter This property is required. String
Server datacenter placement
hostname This property is required. String
Server hostname
memory This property is required. Double
Server RAM setting
storage This property is required. Double
Server disk space
backupsSchedules List<ServerBackupsSchedule>
KVM Server backup schedule definition.
campaigncode String
Campaigncode used during creation for possible discount
cloudconfig String
Cloudconfig used to provision server using a provided cloud-config mustache template.
cloudconfigparams Map<String,String>
description String
Server description
ipv4Address String
Server IPv4 address, set none to disable IP allocation
ipv6Address String
Server IPv6 address, set none to disable IP allocation
password String
Server root password, VMware only
platform String
Server virtualisation platform, KVM or VMware
publickey String
serverId String
The ID of this resource.
template String
Server OS template
timeouts ServerTimeouts
users List<ServerUser>
bandwidth This property is required. number
Server network adapter bandwidth
cpu This property is required. number
Server CPU cores count
datacenter This property is required. string
Server datacenter placement
hostname This property is required. string
Server hostname
memory This property is required. number
Server RAM setting
storage This property is required. number
Server disk space
backupsSchedules ServerBackupsSchedule[]
KVM Server backup schedule definition.
campaigncode string
Campaigncode used during creation for possible discount
cloudconfig string
Cloudconfig used to provision server using a provided cloud-config mustache template.
cloudconfigparams {[key: string]: string}
description string
Server description
ipv4Address string
Server IPv4 address, set none to disable IP allocation
ipv6Address string
Server IPv6 address, set none to disable IP allocation
password string
Server root password, VMware only
platform string
Server virtualisation platform, KVM or VMware
publickey string
serverId string
The ID of this resource.
template string
Server OS template
timeouts ServerTimeouts
users ServerUser[]
bandwidth This property is required. float
Server network adapter bandwidth
cpu This property is required. float
Server CPU cores count
datacenter This property is required. str
Server datacenter placement
hostname This property is required. str
Server hostname
memory This property is required. float
Server RAM setting
storage This property is required. float
Server disk space
backups_schedules Sequence[ServerBackupsScheduleArgs]
KVM Server backup schedule definition.
campaigncode str
Campaigncode used during creation for possible discount
cloudconfig str
Cloudconfig used to provision server using a provided cloud-config mustache template.
cloudconfigparams Mapping[str, str]
description str
Server description
ipv4_address str
Server IPv4 address, set none to disable IP allocation
ipv6_address str
Server IPv6 address, set none to disable IP allocation
password str
Server root password, VMware only
platform str
Server virtualisation platform, KVM or VMware
publickey str
server_id str
The ID of this resource.
template str
Server OS template
timeouts ServerTimeoutsArgs
users Sequence[ServerUserArgs]
bandwidth This property is required. Number
Server network adapter bandwidth
cpu This property is required. Number
Server CPU cores count
datacenter This property is required. String
Server datacenter placement
hostname This property is required. String
Server hostname
memory This property is required. Number
Server RAM setting
storage This property is required. Number
Server disk space
backupsSchedules List<Property Map>
KVM Server backup schedule definition.
campaigncode String
Campaigncode used during creation for possible discount
cloudconfig String
Cloudconfig used to provision server using a provided cloud-config mustache template.
cloudconfigparams Map<String>
description String
Server description
ipv4Address String
Server IPv4 address, set none to disable IP allocation
ipv6Address String
Server IPv6 address, set none to disable IP allocation
password String
Server root password, VMware only
platform String
Server virtualisation platform, KVM or VMware
publickey String
serverId String
The ID of this resource.
template String
Server OS template
timeouts Property Map
users List<Property Map>

Outputs

All input properties are implicitly available as output properties. Additionally, the Server resource produces the following output properties:

ExtraDisks List<string>
Disks associated with the server. Use glesys.ServerDisk resource to manage these.
Id string
The provider-assigned unique ID for this managed resource.
Islocked bool
Server locked state
Isrunning bool
Server running state
NetworkAdapters List<ServerNetworkAdapter>
Network adapters associated with the server. glesys.Networkadapter
ExtraDisks []string
Disks associated with the server. Use glesys.ServerDisk resource to manage these.
Id string
The provider-assigned unique ID for this managed resource.
Islocked bool
Server locked state
Isrunning bool
Server running state
NetworkAdapters []ServerNetworkAdapter
Network adapters associated with the server. glesys.Networkadapter
extraDisks List<String>
Disks associated with the server. Use glesys.ServerDisk resource to manage these.
id String
The provider-assigned unique ID for this managed resource.
islocked Boolean
Server locked state
isrunning Boolean
Server running state
networkAdapters List<ServerNetworkAdapter>
Network adapters associated with the server. glesys.Networkadapter
extraDisks string[]
Disks associated with the server. Use glesys.ServerDisk resource to manage these.
id string
The provider-assigned unique ID for this managed resource.
islocked boolean
Server locked state
isrunning boolean
Server running state
networkAdapters ServerNetworkAdapter[]
Network adapters associated with the server. glesys.Networkadapter
extra_disks Sequence[str]
Disks associated with the server. Use glesys.ServerDisk resource to manage these.
id str
The provider-assigned unique ID for this managed resource.
islocked bool
Server locked state
isrunning bool
Server running state
network_adapters Sequence[ServerNetworkAdapter]
Network adapters associated with the server. glesys.Networkadapter
extraDisks List<String>
Disks associated with the server. Use glesys.ServerDisk resource to manage these.
id String
The provider-assigned unique ID for this managed resource.
islocked Boolean
Server locked state
isrunning Boolean
Server running state
networkAdapters List<Property Map>
Network adapters associated with the server. glesys.Networkadapter

Look up Existing Server Resource

Get an existing Server resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: ServerState, opts?: CustomResourceOptions): Server
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        backups_schedules: Optional[Sequence[ServerBackupsScheduleArgs]] = None,
        bandwidth: Optional[float] = None,
        campaigncode: Optional[str] = None,
        cloudconfig: Optional[str] = None,
        cloudconfigparams: Optional[Mapping[str, str]] = None,
        cpu: Optional[float] = None,
        datacenter: Optional[str] = None,
        description: Optional[str] = None,
        extra_disks: Optional[Sequence[str]] = None,
        hostname: Optional[str] = None,
        ipv4_address: Optional[str] = None,
        ipv6_address: Optional[str] = None,
        islocked: Optional[bool] = None,
        isrunning: Optional[bool] = None,
        memory: Optional[float] = None,
        network_adapters: Optional[Sequence[ServerNetworkAdapterArgs]] = None,
        password: Optional[str] = None,
        platform: Optional[str] = None,
        publickey: Optional[str] = None,
        server_id: Optional[str] = None,
        storage: Optional[float] = None,
        template: Optional[str] = None,
        timeouts: Optional[ServerTimeoutsArgs] = None,
        users: Optional[Sequence[ServerUserArgs]] = None) -> Server
func GetServer(ctx *Context, name string, id IDInput, state *ServerState, opts ...ResourceOption) (*Server, error)
public static Server Get(string name, Input<string> id, ServerState? state, CustomResourceOptions? opts = null)
public static Server get(String name, Output<String> id, ServerState state, CustomResourceOptions options)
resources:  _:    type: glesys:Server    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
BackupsSchedules List<ServerBackupsSchedule>
KVM Server backup schedule definition.
Bandwidth double
Server network adapter bandwidth
Campaigncode string
Campaigncode used during creation for possible discount
Cloudconfig string
Cloudconfig used to provision server using a provided cloud-config mustache template.
Cloudconfigparams Dictionary<string, string>
Cpu double
Server CPU cores count
Datacenter string
Server datacenter placement
Description string
Server description
ExtraDisks List<string>
Disks associated with the server. Use glesys.ServerDisk resource to manage these.
Hostname string
Server hostname
Ipv4Address string
Server IPv4 address, set none to disable IP allocation
Ipv6Address string
Server IPv6 address, set none to disable IP allocation
Islocked bool
Server locked state
Isrunning bool
Server running state
Memory double
Server RAM setting
NetworkAdapters List<ServerNetworkAdapter>
Network adapters associated with the server. glesys.Networkadapter
Password string
Server root password, VMware only
Platform string
Server virtualisation platform, KVM or VMware
Publickey string
ServerId string
The ID of this resource.
Storage double
Server disk space
Template string
Server OS template
Timeouts ServerTimeouts
Users List<ServerUser>
BackupsSchedules []ServerBackupsScheduleArgs
KVM Server backup schedule definition.
Bandwidth float64
Server network adapter bandwidth
Campaigncode string
Campaigncode used during creation for possible discount
Cloudconfig string
Cloudconfig used to provision server using a provided cloud-config mustache template.
Cloudconfigparams map[string]string
Cpu float64
Server CPU cores count
Datacenter string
Server datacenter placement
Description string
Server description
ExtraDisks []string
Disks associated with the server. Use glesys.ServerDisk resource to manage these.
Hostname string
Server hostname
Ipv4Address string
Server IPv4 address, set none to disable IP allocation
Ipv6Address string
Server IPv6 address, set none to disable IP allocation
Islocked bool
Server locked state
Isrunning bool
Server running state
Memory float64
Server RAM setting
NetworkAdapters []ServerNetworkAdapterArgs
Network adapters associated with the server. glesys.Networkadapter
Password string
Server root password, VMware only
Platform string
Server virtualisation platform, KVM or VMware
Publickey string
ServerId string
The ID of this resource.
Storage float64
Server disk space
Template string
Server OS template
Timeouts ServerTimeoutsArgs
Users []ServerUserArgs
backupsSchedules List<ServerBackupsSchedule>
KVM Server backup schedule definition.
bandwidth Double
Server network adapter bandwidth
campaigncode String
Campaigncode used during creation for possible discount
cloudconfig String
Cloudconfig used to provision server using a provided cloud-config mustache template.
cloudconfigparams Map<String,String>
cpu Double
Server CPU cores count
datacenter String
Server datacenter placement
description String
Server description
extraDisks List<String>
Disks associated with the server. Use glesys.ServerDisk resource to manage these.
hostname String
Server hostname
ipv4Address String
Server IPv4 address, set none to disable IP allocation
ipv6Address String
Server IPv6 address, set none to disable IP allocation
islocked Boolean
Server locked state
isrunning Boolean
Server running state
memory Double
Server RAM setting
networkAdapters List<ServerNetworkAdapter>
Network adapters associated with the server. glesys.Networkadapter
password String
Server root password, VMware only
platform String
Server virtualisation platform, KVM or VMware
publickey String
serverId String
The ID of this resource.
storage Double
Server disk space
template String
Server OS template
timeouts ServerTimeouts
users List<ServerUser>
backupsSchedules ServerBackupsSchedule[]
KVM Server backup schedule definition.
bandwidth number
Server network adapter bandwidth
campaigncode string
Campaigncode used during creation for possible discount
cloudconfig string
Cloudconfig used to provision server using a provided cloud-config mustache template.
cloudconfigparams {[key: string]: string}
cpu number
Server CPU cores count
datacenter string
Server datacenter placement
description string
Server description
extraDisks string[]
Disks associated with the server. Use glesys.ServerDisk resource to manage these.
hostname string
Server hostname
ipv4Address string
Server IPv4 address, set none to disable IP allocation
ipv6Address string
Server IPv6 address, set none to disable IP allocation
islocked boolean
Server locked state
isrunning boolean
Server running state
memory number
Server RAM setting
networkAdapters ServerNetworkAdapter[]
Network adapters associated with the server. glesys.Networkadapter
password string
Server root password, VMware only
platform string
Server virtualisation platform, KVM or VMware
publickey string
serverId string
The ID of this resource.
storage number
Server disk space
template string
Server OS template
timeouts ServerTimeouts
users ServerUser[]
backups_schedules Sequence[ServerBackupsScheduleArgs]
KVM Server backup schedule definition.
bandwidth float
Server network adapter bandwidth
campaigncode str
Campaigncode used during creation for possible discount
cloudconfig str
Cloudconfig used to provision server using a provided cloud-config mustache template.
cloudconfigparams Mapping[str, str]
cpu float
Server CPU cores count
datacenter str
Server datacenter placement
description str
Server description
extra_disks Sequence[str]
Disks associated with the server. Use glesys.ServerDisk resource to manage these.
hostname str
Server hostname
ipv4_address str
Server IPv4 address, set none to disable IP allocation
ipv6_address str
Server IPv6 address, set none to disable IP allocation
islocked bool
Server locked state
isrunning bool
Server running state
memory float
Server RAM setting
network_adapters Sequence[ServerNetworkAdapterArgs]
Network adapters associated with the server. glesys.Networkadapter
password str
Server root password, VMware only
platform str
Server virtualisation platform, KVM or VMware
publickey str
server_id str
The ID of this resource.
storage float
Server disk space
template str
Server OS template
timeouts ServerTimeoutsArgs
users Sequence[ServerUserArgs]
backupsSchedules List<Property Map>
KVM Server backup schedule definition.
bandwidth Number
Server network adapter bandwidth
campaigncode String
Campaigncode used during creation for possible discount
cloudconfig String
Cloudconfig used to provision server using a provided cloud-config mustache template.
cloudconfigparams Map<String>
cpu Number
Server CPU cores count
datacenter String
Server datacenter placement
description String
Server description
extraDisks List<String>
Disks associated with the server. Use glesys.ServerDisk resource to manage these.
hostname String
Server hostname
ipv4Address String
Server IPv4 address, set none to disable IP allocation
ipv6Address String
Server IPv6 address, set none to disable IP allocation
islocked Boolean
Server locked state
isrunning Boolean
Server running state
memory Number
Server RAM setting
networkAdapters List<Property Map>
Network adapters associated with the server. glesys.Networkadapter
password String
Server root password, VMware only
platform String
Server virtualisation platform, KVM or VMware
publickey String
serverId String
The ID of this resource.
storage Number
Server disk space
template String
Server OS template
timeouts Property Map
users List<Property Map>

Supporting Types

ServerBackupsSchedule
, ServerBackupsScheduleArgs

Frequency This property is required. string
Retention This property is required. double
Frequency This property is required. string
Retention This property is required. float64
frequency This property is required. String
retention This property is required. Double
frequency This property is required. string
retention This property is required. number
frequency This property is required. str
retention This property is required. float
frequency This property is required. String
retention This property is required. Number

ServerNetworkAdapter
, ServerNetworkAdapterArgs

Adaptertype This property is required. string
Bandwidth This property is required. double
Id This property is required. string
Name This property is required. string
Networkid This property is required. string
Adaptertype This property is required. string
Bandwidth This property is required. float64
Id This property is required. string
Name This property is required. string
Networkid This property is required. string
adaptertype This property is required. String
bandwidth This property is required. Double
id This property is required. String
name This property is required. String
networkid This property is required. String
adaptertype This property is required. string
bandwidth This property is required. number
id This property is required. string
name This property is required. string
networkid This property is required. string
adaptertype This property is required. str
bandwidth This property is required. float
id This property is required. str
name This property is required. str
networkid This property is required. str
adaptertype This property is required. String
bandwidth This property is required. Number
id This property is required. String
name This property is required. String
networkid This property is required. String

ServerTimeouts
, ServerTimeoutsArgs

Create string
Delete string
Create string
Delete string
create String
delete String
create string
delete string
create str
delete str
create String
delete String

ServerUser
, ServerUserArgs

Password This property is required. string
Publickeys This property is required. List<string>
User SSH key(s), as a list. '["ssh-rsa abc...", "ssh-rsa foo..."]'
Username This property is required. string
Password This property is required. string
Publickeys This property is required. []string
User SSH key(s), as a list. '["ssh-rsa abc...", "ssh-rsa foo..."]'
Username This property is required. string
password This property is required. String
publickeys This property is required. List<String>
User SSH key(s), as a list. '["ssh-rsa abc...", "ssh-rsa foo..."]'
username This property is required. String
password This property is required. string
publickeys This property is required. string[]
User SSH key(s), as a list. '["ssh-rsa abc...", "ssh-rsa foo..."]'
username This property is required. string
password This property is required. str
publickeys This property is required. Sequence[str]
User SSH key(s), as a list. '["ssh-rsa abc...", "ssh-rsa foo..."]'
username This property is required. str
password This property is required. String
publickeys This property is required. List<String>
User SSH key(s), as a list. '["ssh-rsa abc...", "ssh-rsa foo..."]'
username This property is required. String

Import

glesys_server Import

$ pulumi import glesys:index/server:Server example kvm123456
Copy

To learn more about importing existing cloud resources, see Importing resources.

Package Details

Repository
glesys glesys/terraform-provider-glesys
License
Notes
This Pulumi package is based on the glesys Terraform Provider.