1. Packages
  2. Scaleway
  3. API Docs
  4. BaremetalServer
Viewing docs for Scaleway v1.44.1
published on Monday, Mar 9, 2026 by pulumiverse
scaleway logo
Viewing docs for Scaleway v1.44.1
published on Monday, Mar 9, 2026 by pulumiverse
    Deprecated: scaleway.index/baremetalserver.BaremetalServer has been deprecated in favor of scaleway.elasticmetal/server.Server

    Example Usage

    Example coming soon!
    
    Example coming soon!
    
    Example coming soon!
    
    Example coming soon!
    
    Example coming soon!
    
    resources:
      myServer:
        type: scaleway:elasticmetal:Server
        name: my_server
        properties:
          zone: fr-par-2
          offer: ${myOffer.offerId}
          os: ${myOs.id}
          sshKeyIds:
            - ${mySshKey.id}
    variables:
      ### Basic
      mySshKey:
        fn::invoke:
          function: scaleway:iam:getSshKey
          arguments:
            name: main
            publicKey: ssh XXXXXXXXXXX
      myOs:
        fn::invoke:
          function: scaleway:elasticmetal:getOs
          arguments:
            zone: fr-par-2
            name: Ubuntu
            version: 22.04 LTS (Jammy Jellyfish)
      myOffer:
        fn::invoke:
          function: scaleway:elasticmetal:getOffer
          arguments:
            zone: fr-par-2
            name: EM-I220E-NVME
    
    import * as pulumi from "@pulumi/pulumi";
    import * as scaleway from "@pulumiverse/scaleway";
    import * as std from "@pulumi/std";
    
    //## With cloud-init
    const mySshKey = scaleway.iam.getSshKey({
        name: "main",
    });
    const myOs = scaleway.elasticmetal.getOs({
        zone: "fr-par-1",
        name: "Ubuntu",
        version: "22.04 LTS (Jammy Jellyfish)",
    });
    const myOffer = scaleway.elasticmetal.getOffer({
        zone: "fr-par-2",
        name: "EM-I220E-NVME",
    });
    const myServerCi = new scaleway.elasticmetal.Server("my_server_ci", {
        zone: "fr-par-2",
        offer: myOffer.then(myOffer => myOffer.offerId),
        os: myOs.then(myOs => myOs.osId),
        sshKeyIds: [mySshKey.then(mySshKey => mySshKey.id)],
        cloudInit: std.index.file({
            input: "userdata.yaml",
        }).result,
    });
    
    import pulumi
    import pulumi_scaleway as scaleway
    import pulumi_std as std
    import pulumiverse_scaleway as scaleway
    
    ### With cloud-init
    my_ssh_key = scaleway.iam.get_ssh_key(name="main")
    my_os = scaleway.elasticmetal.get_os(zone="fr-par-1",
        name="Ubuntu",
        version="22.04 LTS (Jammy Jellyfish)")
    my_offer = scaleway.elasticmetal.get_offer(zone="fr-par-2",
        name="EM-I220E-NVME")
    my_server_ci = scaleway.elasticmetal.Server("my_server_ci",
        zone="fr-par-2",
        offer=my_offer.offer_id,
        os=my_os.os_id,
        ssh_key_ids=[my_ssh_key.id],
        cloud_init=std.index.file(input="userdata.yaml")["result"])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-std/sdk/go/std"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway/elasticmetal"
    	"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway/iam"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// ## With cloud-init
    		mySshKey, err := iam.LookupSshKey(ctx, &iam.LookupSshKeyArgs{
    			Name: pulumi.StringRef("main"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		myOs, err := elasticmetal.GetOs(ctx, &elasticmetal.GetOsArgs{
    			Zone:    pulumi.StringRef("fr-par-1"),
    			Name:    pulumi.StringRef("Ubuntu"),
    			Version: pulumi.StringRef("22.04 LTS (Jammy Jellyfish)"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		myOffer, err := elasticmetal.GetOffer(ctx, &elasticmetal.GetOfferArgs{
    			Zone: pulumi.StringRef("fr-par-2"),
    			Name: pulumi.StringRef("EM-I220E-NVME"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		invokeFile, err := std.File(ctx, map[string]interface{}{
    			"input": "userdata.yaml",
    		}, nil)
    		if err != nil {
    			return err
    		}
    		_, err = elasticmetal.NewServer(ctx, "my_server_ci", &elasticmetal.ServerArgs{
    			Zone:  pulumi.String("fr-par-2"),
    			Offer: pulumi.String(myOffer.OfferId),
    			Os:    pulumi.String(myOs.OsId),
    			SshKeyIds: pulumi.StringArray{
    				pulumi.String(mySshKey.Id),
    			},
    			CloudInit: invokeFile.Result,
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Scaleway = Pulumi.Scaleway;
    using Scaleway = Pulumiverse.Scaleway;
    using Std = Pulumi.Std;
    
    return await Deployment.RunAsync(() => 
    {
        //## With cloud-init
        var mySshKey = Scaleway.Iam.GetSshKey.Invoke(new()
        {
            Name = "main",
        });
    
        var myOs = Scaleway.Elasticmetal.GetOs.Invoke(new()
        {
            Zone = "fr-par-1",
            Name = "Ubuntu",
            Version = "22.04 LTS (Jammy Jellyfish)",
        });
    
        var myOffer = Scaleway.Elasticmetal.GetOffer.Invoke(new()
        {
            Zone = "fr-par-2",
            Name = "EM-I220E-NVME",
        });
    
        var myServerCi = new Scaleway.Elasticmetal.Server("my_server_ci", new()
        {
            Zone = "fr-par-2",
            Offer = myOffer.Apply(getOfferResult => getOfferResult.OfferId),
            Os = myOs.Apply(getOsResult => getOsResult.OsId),
            SshKeyIds = new[]
            {
                mySshKey.Apply(getSshKeyResult => getSshKeyResult.Id),
            },
            CloudInit = Std.Index.File.Invoke(new()
            {
                Input = "userdata.yaml",
            }).Result,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.scaleway.iam.IamFunctions;
    import com.pulumi.scaleway.iam.inputs.GetSshKeyArgs;
    import com.pulumi.scaleway.elasticmetal.ElasticmetalFunctions;
    import com.pulumi.scaleway.elasticmetal.inputs.GetOsArgs;
    import com.pulumi.scaleway.elasticmetal.inputs.GetOfferArgs;
    import com.pulumi.scaleway.elasticmetal.Server;
    import com.pulumi.scaleway.elasticmetal.ServerArgs;
    import com.pulumi.std.StdFunctions;
    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) {
            //## With cloud-init
            final var mySshKey = IamFunctions.getSshKey(GetSshKeyArgs.builder()
                .name("main")
                .build());
    
            final var myOs = ElasticmetalFunctions.getOs(GetOsArgs.builder()
                .zone("fr-par-1")
                .name("Ubuntu")
                .version("22.04 LTS (Jammy Jellyfish)")
                .build());
    
            final var myOffer = ElasticmetalFunctions.getOffer(GetOfferArgs.builder()
                .zone("fr-par-2")
                .name("EM-I220E-NVME")
                .build());
    
            var myServerCi = new Server("myServerCi", ServerArgs.builder()
                .zone("fr-par-2")
                .offer(myOffer.offerId())
                .os(myOs.osId())
                .sshKeyIds(mySshKey.id())
                .cloudInit(StdFunctions.file(Map.of("input", "userdata.yaml")).result())
                .build());
    
        }
    }
    
    resources:
      myServerCi:
        type: scaleway:elasticmetal:Server
        name: my_server_ci
        properties:
          zone: fr-par-2
          offer: ${myOffer.offerId}
          os: ${myOs.osId}
          sshKeyIds:
            - ${mySshKey.id}
          cloudInit:
            fn::invoke:
              function: std:file
              arguments:
                input: userdata.yaml
              return: result
    variables:
      ### With cloud-init
      mySshKey:
        fn::invoke:
          function: scaleway:iam:getSshKey
          arguments:
            name: main
      myOs:
        fn::invoke:
          function: scaleway:elasticmetal:getOs
          arguments:
            zone: fr-par-1
            name: Ubuntu
            version: 22.04 LTS (Jammy Jellyfish)
      myOffer:
        fn::invoke:
          function: scaleway:elasticmetal:getOffer
          arguments:
            zone: fr-par-2
            name: EM-I220E-NVME
    
    Example coming soon!
    
    Example coming soon!
    
    Example coming soon!
    
    Example coming soon!
    
    Example coming soon!
    
    resources:
      myServer:
        type: scaleway:elasticmetal:Server
        name: my_server
        properties:
          zone: fr-par-2
          offer: ${myOffer.offerId}
          os: ${myOs.osId}
          partitioning: |
            {
              \"disks\": [
                {
                  \"device\": \"/dev/nvme0n1\",
                  \"partitions\": [
                    {
                      \"label\": \"uefi\",
                      \"number\": 1,
                      \"size\": 536870912
                    },
                    {
                      \"label\": \"swap\",
                      \"number\": 2,
                      \"size\": 4294967296
                    },
                    {
                      \"label\": \"boot\",
                      \"number\": 3,
                      \"size\": 1073741824
                    },
                    {
                      \"label\": \"root\",
                      \"number\": 4,
                      \"size\": 1017827045376
                    }
                  ]
                },
                {
                  \"device\": \"/dev/nvme1n1\",
                  \"partitions\": [
                    {
                      \"label\": \"swap\",
                      \"number\": 1,
                      \"size\": 4294967296
                    },
                    {
                      \"label\": \"boot\",
                      \"number\": 2,
                      \"size\": 1073741824
                    },
                    {
                      \"label\": \"root\",
                      \"number\": 3,
                      \"size\": 1017827045376
                    }
                  ]
                }
              ],
              \"filesystems\": [
                {
                  \"device\": \"/dev/nvme0n1p1\",
                  \"format\": \"fat32\",
                  \"mountpoint\": \"/boot/efi\"
                },
                {
                  \"device\": \"/dev/md0\",
                  \"format\": \"ext4\",
                  \"mountpoint\": \"/boot\"
                },
                {
                  \"device\": \"/dev/md1\",
                  \"format\": \"ext4\",
                  \"mountpoint\": \"/\"
                }
              ],
              \"raids\": [
                {
                  \"devices\": [\"/dev/nvme0n1p3\", \"/dev/nvme1n1p2\"],
                  \"level\": \"raid_level_1\",
                  \"name\": \"/dev/md0\"
                },
                {
                  \"devices\": [\"/dev/nvme0n1p4\", \"/dev/nvme1n1p3\"],
                  \"level\": \"raid_level_1\",
                  \"name\": \"/dev/md1\"
                }
              ],
              \"zfs\": {
                \"pools\": []
              }
            }
          sshKeyIds:
            - ${mySshKey.id}
    variables:
      ### With custom partitioning
      mySshKey:
        fn::invoke:
          function: scaleway:iam:getSshKey
          arguments:
            name: main
            publicKey: ssh XXXXXXXXXXX
      myOs:
        fn::invoke:
          function: scaleway:elasticmetal:getOs
          arguments:
            zone: fr-par-2
            name: Ubuntu
            version: 22.04 LTS (Jammy Jellyfish)
      myOffer:
        fn::invoke:
          function: scaleway:elasticmetal:getOffer
          arguments:
            zone: fr-par-2
            name: EM-I215E-NVME
    
    Example coming soon!
    
    Example coming soon!
    
    Example coming soon!
    
    Example coming soon!
    
    Example coming soon!
    
    resources:
      ### With IPAM IP IDs
      vpc01:
        type: scaleway:network:Vpc
        properties:
          name: vpc_baremetal
      pn01:
        type: scaleway:network:PrivateNetwork
        properties:
          name: private_network_baremetal
          ipv4Subnet:
            subnet: 172.16.64.0/22
          vpcId: ${vpc01.id}
      ip01:
        type: scaleway:ipam:Ip
        properties:
          address: 172.16.64.7
          sources:
            - privateNetworkId: ${pn01.id}
      myServer:
        type: scaleway:elasticmetal:Server
        name: my_server
        properties:
          zone: fr-par-2
          offer: ${myOffer.offerId}
          os: ${myOs.osId}
          sshKeyIds:
            - ${mySshKey.id}
          options:
            - id: ${privateNetwork.optionId}
          privateNetworks:
            - id: ${pn01.id}
              ipamIpIds:
                - ${ip01.id}
    variables:
      mySshKey:
        fn::invoke:
          function: scaleway:iam:getSshKey
          arguments:
            name: main
            publicKey: ssh XXXXXXXXXXX
      myOs:
        fn::invoke:
          function: scaleway:elasticmetal:getOs
          arguments:
            zone: fr-par-1
            name: Ubuntu
            version: 22.04 LTS (Jammy Jellyfish)
      myOffer:
        fn::invoke:
          function: scaleway:elasticmetal:getOffer
          arguments:
            zone: fr-par-1
            name: EM-A115X-SSD
      privateNetwork:
        fn::invoke:
          function: scaleway:elasticmetal:getOption
          arguments:
            zone: fr-par-1
            name: Private Network
    

    Create BaremetalServer Resource

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

    Constructor syntax

    new BaremetalServer(name: string, args: BaremetalServerArgs, opts?: CustomResourceOptions);
    @overload
    def BaremetalServer(resource_name: str,
                        args: BaremetalServerArgs,
                        opts: Optional[ResourceOptions] = None)
    
    @overload
    def BaremetalServer(resource_name: str,
                        opts: Optional[ResourceOptions] = None,
                        cloud_init: Optional[str] = None,
                        description: Optional[str] = None,
                        hostname: Optional[str] = None,
                        install_config_afterward: Optional[bool] = None,
                        name: Optional[str] = None,
                        offer: Optional[str] = None,
                        options: Optional[Sequence[BaremetalServerOptionArgs]] = None,
                        os: Optional[str] = None,
                        partitioning: Optional[str] = None,
                        password: Optional[str] = None,
                        password_wo: Optional[str] = None,
                        password_wo_version: Optional[int] = None,
                        private_ips: Optional[Sequence[BaremetalServerPrivateIpArgs]] = None,
                        private_networks: Optional[Sequence[BaremetalServerPrivateNetworkArgs]] = None,
                        project_id: Optional[str] = None,
                        protected: Optional[bool] = None,
                        reinstall_on_config_changes: Optional[bool] = None,
                        service_password: Optional[str] = None,
                        service_password_wo: Optional[str] = None,
                        service_password_wo_version: Optional[int] = None,
                        service_user: Optional[str] = None,
                        ssh_key_ids: Optional[Sequence[str]] = None,
                        tags: Optional[Sequence[str]] = None,
                        user: Optional[str] = None,
                        zone: Optional[str] = None)
    func NewBaremetalServer(ctx *Context, name string, args BaremetalServerArgs, opts ...ResourceOption) (*BaremetalServer, error)
    public BaremetalServer(string name, BaremetalServerArgs args, CustomResourceOptions? opts = null)
    public BaremetalServer(String name, BaremetalServerArgs args)
    public BaremetalServer(String name, BaremetalServerArgs args, CustomResourceOptions options)
    
    type: scaleway:BaremetalServer
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

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

    BaremetalServer 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 BaremetalServer resource accepts the following input properties:

    Offer string

    The offer UUID of the baremetal server. Use this endpoint to find the right offer.

    Important: Updates to offer will recreate the server. Important If you migrate to a monthly subscription, you cannot downgrade back to an hourly plan. Ensure that the monthly plan meets your needs before making the switch.

    CloudInit string
    Configuration data to pass to cloud-init such as a YAML cloud config or a user-data script. Accepts either a string containing the content or a path to a file (for example file("cloud-init.yml")). Max length: 127998 characters. Updates to cloud_init will update the server user-data via the API and do not trigger a reinstall; however, a reboot of the server is required for the OS to re-run cloud-init and apply the changes. Only supported for Offers that have cloud-init enabled. You can check available offers with scw baremetal list offers command.
    Description string
    A description for the server.
    Hostname string
    The hostname of the server.
    InstallConfigAfterward bool
    If True, this boolean allows to create a server without the install config if you want to provide it later.
    Name string
    The name of the server.
    Options List<Pulumiverse.Scaleway.Inputs.BaremetalServerOption>

    The options to enable on the server.

    The options block supports:

    Os string

    The UUID of the os to install on the server. Use this endpoint to find the right OS ID.

    Important: Updates to os will reinstall the server.

    Partitioning string
    The partitioning schema in JSON format
    Password string
    Password used for the installation. May be required depending on used os. Only one of password or password_wo should be specified.
    PasswordWo string
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    PasswordWoVersion int
    The version of the write-only password. To update the password_wo, you must also update the password_wo_version.
    PrivateIps List<Pulumiverse.Scaleway.Inputs.BaremetalServerPrivateIp>
    The list of private IPv4 and IPv6 addresses associated with the resource.
    PrivateNetworks List<Pulumiverse.Scaleway.Inputs.BaremetalServerPrivateNetwork>
    The private networks to attach to the server. For more information, see the documentation
    ProjectId string
    project_id) The ID of the project the server is associated with.
    Protected bool
    Set to true to activate server protection option.
    ReinstallOnConfigChanges bool

    If True, this boolean allows to reinstall the server on install config changes.

    Important: Updates to ssh_key_ids, user, password, service_user or service_password will not take effect on the server, it requires to reinstall it. To do so please set 'reinstall_on_config_changes' argument to true.

    ServicePassword string
    Password used for the service to install. May be required depending on used os. Only one of service_password or service_password_wo should be specified.
    ServicePasswordWo string
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    ServicePasswordWoVersion int
    The version of the write-only service password. To update the service_password_wo, you must also update the service_password_wo_version.
    ServiceUser string
    User used for the service to install.
    SshKeyIds List<string>
    List of SSH keys allowed to connect to the server.
    Tags List<string>
    The tags associated with the server.
    User string
    User used for the installation.
    Zone string
    zone) The zone in which the server should be created.
    Offer string

    The offer UUID of the baremetal server. Use this endpoint to find the right offer.

    Important: Updates to offer will recreate the server. Important If you migrate to a monthly subscription, you cannot downgrade back to an hourly plan. Ensure that the monthly plan meets your needs before making the switch.

    CloudInit string
    Configuration data to pass to cloud-init such as a YAML cloud config or a user-data script. Accepts either a string containing the content or a path to a file (for example file("cloud-init.yml")). Max length: 127998 characters. Updates to cloud_init will update the server user-data via the API and do not trigger a reinstall; however, a reboot of the server is required for the OS to re-run cloud-init and apply the changes. Only supported for Offers that have cloud-init enabled. You can check available offers with scw baremetal list offers command.
    Description string
    A description for the server.
    Hostname string
    The hostname of the server.
    InstallConfigAfterward bool
    If True, this boolean allows to create a server without the install config if you want to provide it later.
    Name string
    The name of the server.
    Options []BaremetalServerOptionArgs

    The options to enable on the server.

    The options block supports:

    Os string

    The UUID of the os to install on the server. Use this endpoint to find the right OS ID.

    Important: Updates to os will reinstall the server.

    Partitioning string
    The partitioning schema in JSON format
    Password string
    Password used for the installation. May be required depending on used os. Only one of password or password_wo should be specified.
    PasswordWo string
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    PasswordWoVersion int
    The version of the write-only password. To update the password_wo, you must also update the password_wo_version.
    PrivateIps []BaremetalServerPrivateIpArgs
    The list of private IPv4 and IPv6 addresses associated with the resource.
    PrivateNetworks []BaremetalServerPrivateNetworkArgs
    The private networks to attach to the server. For more information, see the documentation
    ProjectId string
    project_id) The ID of the project the server is associated with.
    Protected bool
    Set to true to activate server protection option.
    ReinstallOnConfigChanges bool

    If True, this boolean allows to reinstall the server on install config changes.

    Important: Updates to ssh_key_ids, user, password, service_user or service_password will not take effect on the server, it requires to reinstall it. To do so please set 'reinstall_on_config_changes' argument to true.

    ServicePassword string
    Password used for the service to install. May be required depending on used os. Only one of service_password or service_password_wo should be specified.
    ServicePasswordWo string
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    ServicePasswordWoVersion int
    The version of the write-only service password. To update the service_password_wo, you must also update the service_password_wo_version.
    ServiceUser string
    User used for the service to install.
    SshKeyIds []string
    List of SSH keys allowed to connect to the server.
    Tags []string
    The tags associated with the server.
    User string
    User used for the installation.
    Zone string
    zone) The zone in which the server should be created.
    offer String

    The offer UUID of the baremetal server. Use this endpoint to find the right offer.

    Important: Updates to offer will recreate the server. Important If you migrate to a monthly subscription, you cannot downgrade back to an hourly plan. Ensure that the monthly plan meets your needs before making the switch.

    cloudInit String
    Configuration data to pass to cloud-init such as a YAML cloud config or a user-data script. Accepts either a string containing the content or a path to a file (for example file("cloud-init.yml")). Max length: 127998 characters. Updates to cloud_init will update the server user-data via the API and do not trigger a reinstall; however, a reboot of the server is required for the OS to re-run cloud-init and apply the changes. Only supported for Offers that have cloud-init enabled. You can check available offers with scw baremetal list offers command.
    description String
    A description for the server.
    hostname String
    The hostname of the server.
    installConfigAfterward Boolean
    If True, this boolean allows to create a server without the install config if you want to provide it later.
    name String
    The name of the server.
    options List<BaremetalServerOption>

    The options to enable on the server.

    The options block supports:

    os String

    The UUID of the os to install on the server. Use this endpoint to find the right OS ID.

    Important: Updates to os will reinstall the server.

    partitioning String
    The partitioning schema in JSON format
    password String
    Password used for the installation. May be required depending on used os. Only one of password or password_wo should be specified.
    passwordWo String
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    passwordWoVersion Integer
    The version of the write-only password. To update the password_wo, you must also update the password_wo_version.
    privateIps List<BaremetalServerPrivateIp>
    The list of private IPv4 and IPv6 addresses associated with the resource.
    privateNetworks List<BaremetalServerPrivateNetwork>
    The private networks to attach to the server. For more information, see the documentation
    projectId String
    project_id) The ID of the project the server is associated with.
    protected_ Boolean
    Set to true to activate server protection option.
    reinstallOnConfigChanges Boolean

    If True, this boolean allows to reinstall the server on install config changes.

    Important: Updates to ssh_key_ids, user, password, service_user or service_password will not take effect on the server, it requires to reinstall it. To do so please set 'reinstall_on_config_changes' argument to true.

    servicePassword String
    Password used for the service to install. May be required depending on used os. Only one of service_password or service_password_wo should be specified.
    servicePasswordWo String
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    servicePasswordWoVersion Integer
    The version of the write-only service password. To update the service_password_wo, you must also update the service_password_wo_version.
    serviceUser String
    User used for the service to install.
    sshKeyIds List<String>
    List of SSH keys allowed to connect to the server.
    tags List<String>
    The tags associated with the server.
    user String
    User used for the installation.
    zone String
    zone) The zone in which the server should be created.
    offer string

    The offer UUID of the baremetal server. Use this endpoint to find the right offer.

    Important: Updates to offer will recreate the server. Important If you migrate to a monthly subscription, you cannot downgrade back to an hourly plan. Ensure that the monthly plan meets your needs before making the switch.

    cloudInit string
    Configuration data to pass to cloud-init such as a YAML cloud config or a user-data script. Accepts either a string containing the content or a path to a file (for example file("cloud-init.yml")). Max length: 127998 characters. Updates to cloud_init will update the server user-data via the API and do not trigger a reinstall; however, a reboot of the server is required for the OS to re-run cloud-init and apply the changes. Only supported for Offers that have cloud-init enabled. You can check available offers with scw baremetal list offers command.
    description string
    A description for the server.
    hostname string
    The hostname of the server.
    installConfigAfterward boolean
    If True, this boolean allows to create a server without the install config if you want to provide it later.
    name string
    The name of the server.
    options BaremetalServerOption[]

    The options to enable on the server.

    The options block supports:

    os string

    The UUID of the os to install on the server. Use this endpoint to find the right OS ID.

    Important: Updates to os will reinstall the server.

    partitioning string
    The partitioning schema in JSON format
    password string
    Password used for the installation. May be required depending on used os. Only one of password or password_wo should be specified.
    passwordWo string
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    passwordWoVersion number
    The version of the write-only password. To update the password_wo, you must also update the password_wo_version.
    privateIps BaremetalServerPrivateIp[]
    The list of private IPv4 and IPv6 addresses associated with the resource.
    privateNetworks BaremetalServerPrivateNetwork[]
    The private networks to attach to the server. For more information, see the documentation
    projectId string
    project_id) The ID of the project the server is associated with.
    protected boolean
    Set to true to activate server protection option.
    reinstallOnConfigChanges boolean

    If True, this boolean allows to reinstall the server on install config changes.

    Important: Updates to ssh_key_ids, user, password, service_user or service_password will not take effect on the server, it requires to reinstall it. To do so please set 'reinstall_on_config_changes' argument to true.

    servicePassword string
    Password used for the service to install. May be required depending on used os. Only one of service_password or service_password_wo should be specified.
    servicePasswordWo string
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    servicePasswordWoVersion number
    The version of the write-only service password. To update the service_password_wo, you must also update the service_password_wo_version.
    serviceUser string
    User used for the service to install.
    sshKeyIds string[]
    List of SSH keys allowed to connect to the server.
    tags string[]
    The tags associated with the server.
    user string
    User used for the installation.
    zone string
    zone) The zone in which the server should be created.
    offer str

    The offer UUID of the baremetal server. Use this endpoint to find the right offer.

    Important: Updates to offer will recreate the server. Important If you migrate to a monthly subscription, you cannot downgrade back to an hourly plan. Ensure that the monthly plan meets your needs before making the switch.

    cloud_init str
    Configuration data to pass to cloud-init such as a YAML cloud config or a user-data script. Accepts either a string containing the content or a path to a file (for example file("cloud-init.yml")). Max length: 127998 characters. Updates to cloud_init will update the server user-data via the API and do not trigger a reinstall; however, a reboot of the server is required for the OS to re-run cloud-init and apply the changes. Only supported for Offers that have cloud-init enabled. You can check available offers with scw baremetal list offers command.
    description str
    A description for the server.
    hostname str
    The hostname of the server.
    install_config_afterward bool
    If True, this boolean allows to create a server without the install config if you want to provide it later.
    name str
    The name of the server.
    options Sequence[BaremetalServerOptionArgs]

    The options to enable on the server.

    The options block supports:

    os str

    The UUID of the os to install on the server. Use this endpoint to find the right OS ID.

    Important: Updates to os will reinstall the server.

    partitioning str
    The partitioning schema in JSON format
    password str
    Password used for the installation. May be required depending on used os. Only one of password or password_wo should be specified.
    password_wo str
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    password_wo_version int
    The version of the write-only password. To update the password_wo, you must also update the password_wo_version.
    private_ips Sequence[BaremetalServerPrivateIpArgs]
    The list of private IPv4 and IPv6 addresses associated with the resource.
    private_networks Sequence[BaremetalServerPrivateNetworkArgs]
    The private networks to attach to the server. For more information, see the documentation
    project_id str
    project_id) The ID of the project the server is associated with.
    protected bool
    Set to true to activate server protection option.
    reinstall_on_config_changes bool

    If True, this boolean allows to reinstall the server on install config changes.

    Important: Updates to ssh_key_ids, user, password, service_user or service_password will not take effect on the server, it requires to reinstall it. To do so please set 'reinstall_on_config_changes' argument to true.

    service_password str
    Password used for the service to install. May be required depending on used os. Only one of service_password or service_password_wo should be specified.
    service_password_wo str
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    service_password_wo_version int
    The version of the write-only service password. To update the service_password_wo, you must also update the service_password_wo_version.
    service_user str
    User used for the service to install.
    ssh_key_ids Sequence[str]
    List of SSH keys allowed to connect to the server.
    tags Sequence[str]
    The tags associated with the server.
    user str
    User used for the installation.
    zone str
    zone) The zone in which the server should be created.
    offer String

    The offer UUID of the baremetal server. Use this endpoint to find the right offer.

    Important: Updates to offer will recreate the server. Important If you migrate to a monthly subscription, you cannot downgrade back to an hourly plan. Ensure that the monthly plan meets your needs before making the switch.

    cloudInit String
    Configuration data to pass to cloud-init such as a YAML cloud config or a user-data script. Accepts either a string containing the content or a path to a file (for example file("cloud-init.yml")). Max length: 127998 characters. Updates to cloud_init will update the server user-data via the API and do not trigger a reinstall; however, a reboot of the server is required for the OS to re-run cloud-init and apply the changes. Only supported for Offers that have cloud-init enabled. You can check available offers with scw baremetal list offers command.
    description String
    A description for the server.
    hostname String
    The hostname of the server.
    installConfigAfterward Boolean
    If True, this boolean allows to create a server without the install config if you want to provide it later.
    name String
    The name of the server.
    options List<Property Map>

    The options to enable on the server.

    The options block supports:

    os String

    The UUID of the os to install on the server. Use this endpoint to find the right OS ID.

    Important: Updates to os will reinstall the server.

    partitioning String
    The partitioning schema in JSON format
    password String
    Password used for the installation. May be required depending on used os. Only one of password or password_wo should be specified.
    passwordWo String
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    passwordWoVersion Number
    The version of the write-only password. To update the password_wo, you must also update the password_wo_version.
    privateIps List<Property Map>
    The list of private IPv4 and IPv6 addresses associated with the resource.
    privateNetworks List<Property Map>
    The private networks to attach to the server. For more information, see the documentation
    projectId String
    project_id) The ID of the project the server is associated with.
    protected Boolean
    Set to true to activate server protection option.
    reinstallOnConfigChanges Boolean

    If True, this boolean allows to reinstall the server on install config changes.

    Important: Updates to ssh_key_ids, user, password, service_user or service_password will not take effect on the server, it requires to reinstall it. To do so please set 'reinstall_on_config_changes' argument to true.

    servicePassword String
    Password used for the service to install. May be required depending on used os. Only one of service_password or service_password_wo should be specified.
    servicePasswordWo String
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    servicePasswordWoVersion Number
    The version of the write-only service password. To update the service_password_wo, you must also update the service_password_wo_version.
    serviceUser String
    User used for the service to install.
    sshKeyIds List<String>
    List of SSH keys allowed to connect to the server.
    tags List<String>
    The tags associated with the server.
    user String
    User used for the installation.
    zone String
    zone) The zone in which the server should be created.

    Outputs

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

    Domain string
    The domain of the server.
    Id string
    The provider-assigned unique ID for this managed resource.
    Ips List<Pulumiverse.Scaleway.Outputs.BaremetalServerIp>
    (List of) The IPs of the server.
    Ipv4s List<Pulumiverse.Scaleway.Outputs.BaremetalServerIpv4>
    (List of) The IPv4 addresses of the server.
    Ipv6s List<Pulumiverse.Scaleway.Outputs.BaremetalServerIpv6>
    (List of) The IPv6 addresses of the server.
    OfferId string
    The ID of the offer.
    OfferName string
    The name of the offer.
    OrganizationId string
    The organization ID the server is associated with.
    OsName string
    The name of the os.
    Domain string
    The domain of the server.
    Id string
    The provider-assigned unique ID for this managed resource.
    Ips []BaremetalServerIp
    (List of) The IPs of the server.
    Ipv4s []BaremetalServerIpv4
    (List of) The IPv4 addresses of the server.
    Ipv6s []BaremetalServerIpv6
    (List of) The IPv6 addresses of the server.
    OfferId string
    The ID of the offer.
    OfferName string
    The name of the offer.
    OrganizationId string
    The organization ID the server is associated with.
    OsName string
    The name of the os.
    domain String
    The domain of the server.
    id String
    The provider-assigned unique ID for this managed resource.
    ips List<BaremetalServerIp>
    (List of) The IPs of the server.
    ipv4s List<BaremetalServerIpv4>
    (List of) The IPv4 addresses of the server.
    ipv6s List<BaremetalServerIpv6>
    (List of) The IPv6 addresses of the server.
    offerId String
    The ID of the offer.
    offerName String
    The name of the offer.
    organizationId String
    The organization ID the server is associated with.
    osName String
    The name of the os.
    domain string
    The domain of the server.
    id string
    The provider-assigned unique ID for this managed resource.
    ips BaremetalServerIp[]
    (List of) The IPs of the server.
    ipv4s BaremetalServerIpv4[]
    (List of) The IPv4 addresses of the server.
    ipv6s BaremetalServerIpv6[]
    (List of) The IPv6 addresses of the server.
    offerId string
    The ID of the offer.
    offerName string
    The name of the offer.
    organizationId string
    The organization ID the server is associated with.
    osName string
    The name of the os.
    domain str
    The domain of the server.
    id str
    The provider-assigned unique ID for this managed resource.
    ips Sequence[BaremetalServerIp]
    (List of) The IPs of the server.
    ipv4s Sequence[BaremetalServerIpv4]
    (List of) The IPv4 addresses of the server.
    ipv6s Sequence[BaremetalServerIpv6]
    (List of) The IPv6 addresses of the server.
    offer_id str
    The ID of the offer.
    offer_name str
    The name of the offer.
    organization_id str
    The organization ID the server is associated with.
    os_name str
    The name of the os.
    domain String
    The domain of the server.
    id String
    The provider-assigned unique ID for this managed resource.
    ips List<Property Map>
    (List of) The IPs of the server.
    ipv4s List<Property Map>
    (List of) The IPv4 addresses of the server.
    ipv6s List<Property Map>
    (List of) The IPv6 addresses of the server.
    offerId String
    The ID of the offer.
    offerName String
    The name of the offer.
    organizationId String
    The organization ID the server is associated with.
    osName String
    The name of the os.

    Look up Existing BaremetalServer Resource

    Get an existing BaremetalServer 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?: BaremetalServerState, opts?: CustomResourceOptions): BaremetalServer
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            cloud_init: Optional[str] = None,
            description: Optional[str] = None,
            domain: Optional[str] = None,
            hostname: Optional[str] = None,
            install_config_afterward: Optional[bool] = None,
            ips: Optional[Sequence[BaremetalServerIpArgs]] = None,
            ipv4s: Optional[Sequence[BaremetalServerIpv4Args]] = None,
            ipv6s: Optional[Sequence[BaremetalServerIpv6Args]] = None,
            name: Optional[str] = None,
            offer: Optional[str] = None,
            offer_id: Optional[str] = None,
            offer_name: Optional[str] = None,
            options: Optional[Sequence[BaremetalServerOptionArgs]] = None,
            organization_id: Optional[str] = None,
            os: Optional[str] = None,
            os_name: Optional[str] = None,
            partitioning: Optional[str] = None,
            password: Optional[str] = None,
            password_wo: Optional[str] = None,
            password_wo_version: Optional[int] = None,
            private_ips: Optional[Sequence[BaremetalServerPrivateIpArgs]] = None,
            private_networks: Optional[Sequence[BaremetalServerPrivateNetworkArgs]] = None,
            project_id: Optional[str] = None,
            protected: Optional[bool] = None,
            reinstall_on_config_changes: Optional[bool] = None,
            service_password: Optional[str] = None,
            service_password_wo: Optional[str] = None,
            service_password_wo_version: Optional[int] = None,
            service_user: Optional[str] = None,
            ssh_key_ids: Optional[Sequence[str]] = None,
            tags: Optional[Sequence[str]] = None,
            user: Optional[str] = None,
            zone: Optional[str] = None) -> BaremetalServer
    func GetBaremetalServer(ctx *Context, name string, id IDInput, state *BaremetalServerState, opts ...ResourceOption) (*BaremetalServer, error)
    public static BaremetalServer Get(string name, Input<string> id, BaremetalServerState? state, CustomResourceOptions? opts = null)
    public static BaremetalServer get(String name, Output<String> id, BaremetalServerState state, CustomResourceOptions options)
    resources:  _:    type: scaleway:BaremetalServer    get:      id: ${id}
    name
    The unique name of the resulting resource.
    id
    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
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    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
    The unique name of the resulting resource.
    id
    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
    The unique name of the resulting resource.
    id
    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:
    CloudInit string
    Configuration data to pass to cloud-init such as a YAML cloud config or a user-data script. Accepts either a string containing the content or a path to a file (for example file("cloud-init.yml")). Max length: 127998 characters. Updates to cloud_init will update the server user-data via the API and do not trigger a reinstall; however, a reboot of the server is required for the OS to re-run cloud-init and apply the changes. Only supported for Offers that have cloud-init enabled. You can check available offers with scw baremetal list offers command.
    Description string
    A description for the server.
    Domain string
    The domain of the server.
    Hostname string
    The hostname of the server.
    InstallConfigAfterward bool
    If True, this boolean allows to create a server without the install config if you want to provide it later.
    Ips List<Pulumiverse.Scaleway.Inputs.BaremetalServerIp>
    (List of) The IPs of the server.
    Ipv4s List<Pulumiverse.Scaleway.Inputs.BaremetalServerIpv4>
    (List of) The IPv4 addresses of the server.
    Ipv6s List<Pulumiverse.Scaleway.Inputs.BaremetalServerIpv6>
    (List of) The IPv6 addresses of the server.
    Name string
    The name of the server.
    Offer string

    The offer UUID of the baremetal server. Use this endpoint to find the right offer.

    Important: Updates to offer will recreate the server. Important If you migrate to a monthly subscription, you cannot downgrade back to an hourly plan. Ensure that the monthly plan meets your needs before making the switch.

    OfferId string
    The ID of the offer.
    OfferName string
    The name of the offer.
    Options List<Pulumiverse.Scaleway.Inputs.BaremetalServerOption>

    The options to enable on the server.

    The options block supports:

    OrganizationId string
    The organization ID the server is associated with.
    Os string

    The UUID of the os to install on the server. Use this endpoint to find the right OS ID.

    Important: Updates to os will reinstall the server.

    OsName string
    The name of the os.
    Partitioning string
    The partitioning schema in JSON format
    Password string
    Password used for the installation. May be required depending on used os. Only one of password or password_wo should be specified.
    PasswordWo string
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    PasswordWoVersion int
    The version of the write-only password. To update the password_wo, you must also update the password_wo_version.
    PrivateIps List<Pulumiverse.Scaleway.Inputs.BaremetalServerPrivateIp>
    The list of private IPv4 and IPv6 addresses associated with the resource.
    PrivateNetworks List<Pulumiverse.Scaleway.Inputs.BaremetalServerPrivateNetwork>
    The private networks to attach to the server. For more information, see the documentation
    ProjectId string
    project_id) The ID of the project the server is associated with.
    Protected bool
    Set to true to activate server protection option.
    ReinstallOnConfigChanges bool

    If True, this boolean allows to reinstall the server on install config changes.

    Important: Updates to ssh_key_ids, user, password, service_user or service_password will not take effect on the server, it requires to reinstall it. To do so please set 'reinstall_on_config_changes' argument to true.

    ServicePassword string
    Password used for the service to install. May be required depending on used os. Only one of service_password or service_password_wo should be specified.
    ServicePasswordWo string
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    ServicePasswordWoVersion int
    The version of the write-only service password. To update the service_password_wo, you must also update the service_password_wo_version.
    ServiceUser string
    User used for the service to install.
    SshKeyIds List<string>
    List of SSH keys allowed to connect to the server.
    Tags List<string>
    The tags associated with the server.
    User string
    User used for the installation.
    Zone string
    zone) The zone in which the server should be created.
    CloudInit string
    Configuration data to pass to cloud-init such as a YAML cloud config or a user-data script. Accepts either a string containing the content or a path to a file (for example file("cloud-init.yml")). Max length: 127998 characters. Updates to cloud_init will update the server user-data via the API and do not trigger a reinstall; however, a reboot of the server is required for the OS to re-run cloud-init and apply the changes. Only supported for Offers that have cloud-init enabled. You can check available offers with scw baremetal list offers command.
    Description string
    A description for the server.
    Domain string
    The domain of the server.
    Hostname string
    The hostname of the server.
    InstallConfigAfterward bool
    If True, this boolean allows to create a server without the install config if you want to provide it later.
    Ips []BaremetalServerIpArgs
    (List of) The IPs of the server.
    Ipv4s []BaremetalServerIpv4Args
    (List of) The IPv4 addresses of the server.
    Ipv6s []BaremetalServerIpv6Args
    (List of) The IPv6 addresses of the server.
    Name string
    The name of the server.
    Offer string

    The offer UUID of the baremetal server. Use this endpoint to find the right offer.

    Important: Updates to offer will recreate the server. Important If you migrate to a monthly subscription, you cannot downgrade back to an hourly plan. Ensure that the monthly plan meets your needs before making the switch.

    OfferId string
    The ID of the offer.
    OfferName string
    The name of the offer.
    Options []BaremetalServerOptionArgs

    The options to enable on the server.

    The options block supports:

    OrganizationId string
    The organization ID the server is associated with.
    Os string

    The UUID of the os to install on the server. Use this endpoint to find the right OS ID.

    Important: Updates to os will reinstall the server.

    OsName string
    The name of the os.
    Partitioning string
    The partitioning schema in JSON format
    Password string
    Password used for the installation. May be required depending on used os. Only one of password or password_wo should be specified.
    PasswordWo string
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    PasswordWoVersion int
    The version of the write-only password. To update the password_wo, you must also update the password_wo_version.
    PrivateIps []BaremetalServerPrivateIpArgs
    The list of private IPv4 and IPv6 addresses associated with the resource.
    PrivateNetworks []BaremetalServerPrivateNetworkArgs
    The private networks to attach to the server. For more information, see the documentation
    ProjectId string
    project_id) The ID of the project the server is associated with.
    Protected bool
    Set to true to activate server protection option.
    ReinstallOnConfigChanges bool

    If True, this boolean allows to reinstall the server on install config changes.

    Important: Updates to ssh_key_ids, user, password, service_user or service_password will not take effect on the server, it requires to reinstall it. To do so please set 'reinstall_on_config_changes' argument to true.

    ServicePassword string
    Password used for the service to install. May be required depending on used os. Only one of service_password or service_password_wo should be specified.
    ServicePasswordWo string
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    ServicePasswordWoVersion int
    The version of the write-only service password. To update the service_password_wo, you must also update the service_password_wo_version.
    ServiceUser string
    User used for the service to install.
    SshKeyIds []string
    List of SSH keys allowed to connect to the server.
    Tags []string
    The tags associated with the server.
    User string
    User used for the installation.
    Zone string
    zone) The zone in which the server should be created.
    cloudInit String
    Configuration data to pass to cloud-init such as a YAML cloud config or a user-data script. Accepts either a string containing the content or a path to a file (for example file("cloud-init.yml")). Max length: 127998 characters. Updates to cloud_init will update the server user-data via the API and do not trigger a reinstall; however, a reboot of the server is required for the OS to re-run cloud-init and apply the changes. Only supported for Offers that have cloud-init enabled. You can check available offers with scw baremetal list offers command.
    description String
    A description for the server.
    domain String
    The domain of the server.
    hostname String
    The hostname of the server.
    installConfigAfterward Boolean
    If True, this boolean allows to create a server without the install config if you want to provide it later.
    ips List<BaremetalServerIp>
    (List of) The IPs of the server.
    ipv4s List<BaremetalServerIpv4>
    (List of) The IPv4 addresses of the server.
    ipv6s List<BaremetalServerIpv6>
    (List of) The IPv6 addresses of the server.
    name String
    The name of the server.
    offer String

    The offer UUID of the baremetal server. Use this endpoint to find the right offer.

    Important: Updates to offer will recreate the server. Important If you migrate to a monthly subscription, you cannot downgrade back to an hourly plan. Ensure that the monthly plan meets your needs before making the switch.

    offerId String
    The ID of the offer.
    offerName String
    The name of the offer.
    options List<BaremetalServerOption>

    The options to enable on the server.

    The options block supports:

    organizationId String
    The organization ID the server is associated with.
    os String

    The UUID of the os to install on the server. Use this endpoint to find the right OS ID.

    Important: Updates to os will reinstall the server.

    osName String
    The name of the os.
    partitioning String
    The partitioning schema in JSON format
    password String
    Password used for the installation. May be required depending on used os. Only one of password or password_wo should be specified.
    passwordWo String
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    passwordWoVersion Integer
    The version of the write-only password. To update the password_wo, you must also update the password_wo_version.
    privateIps List<BaremetalServerPrivateIp>
    The list of private IPv4 and IPv6 addresses associated with the resource.
    privateNetworks List<BaremetalServerPrivateNetwork>
    The private networks to attach to the server. For more information, see the documentation
    projectId String
    project_id) The ID of the project the server is associated with.
    protected_ Boolean
    Set to true to activate server protection option.
    reinstallOnConfigChanges Boolean

    If True, this boolean allows to reinstall the server on install config changes.

    Important: Updates to ssh_key_ids, user, password, service_user or service_password will not take effect on the server, it requires to reinstall it. To do so please set 'reinstall_on_config_changes' argument to true.

    servicePassword String
    Password used for the service to install. May be required depending on used os. Only one of service_password or service_password_wo should be specified.
    servicePasswordWo String
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    servicePasswordWoVersion Integer
    The version of the write-only service password. To update the service_password_wo, you must also update the service_password_wo_version.
    serviceUser String
    User used for the service to install.
    sshKeyIds List<String>
    List of SSH keys allowed to connect to the server.
    tags List<String>
    The tags associated with the server.
    user String
    User used for the installation.
    zone String
    zone) The zone in which the server should be created.
    cloudInit string
    Configuration data to pass to cloud-init such as a YAML cloud config or a user-data script. Accepts either a string containing the content or a path to a file (for example file("cloud-init.yml")). Max length: 127998 characters. Updates to cloud_init will update the server user-data via the API and do not trigger a reinstall; however, a reboot of the server is required for the OS to re-run cloud-init and apply the changes. Only supported for Offers that have cloud-init enabled. You can check available offers with scw baremetal list offers command.
    description string
    A description for the server.
    domain string
    The domain of the server.
    hostname string
    The hostname of the server.
    installConfigAfterward boolean
    If True, this boolean allows to create a server without the install config if you want to provide it later.
    ips BaremetalServerIp[]
    (List of) The IPs of the server.
    ipv4s BaremetalServerIpv4[]
    (List of) The IPv4 addresses of the server.
    ipv6s BaremetalServerIpv6[]
    (List of) The IPv6 addresses of the server.
    name string
    The name of the server.
    offer string

    The offer UUID of the baremetal server. Use this endpoint to find the right offer.

    Important: Updates to offer will recreate the server. Important If you migrate to a monthly subscription, you cannot downgrade back to an hourly plan. Ensure that the monthly plan meets your needs before making the switch.

    offerId string
    The ID of the offer.
    offerName string
    The name of the offer.
    options BaremetalServerOption[]

    The options to enable on the server.

    The options block supports:

    organizationId string
    The organization ID the server is associated with.
    os string

    The UUID of the os to install on the server. Use this endpoint to find the right OS ID.

    Important: Updates to os will reinstall the server.

    osName string
    The name of the os.
    partitioning string
    The partitioning schema in JSON format
    password string
    Password used for the installation. May be required depending on used os. Only one of password or password_wo should be specified.
    passwordWo string
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    passwordWoVersion number
    The version of the write-only password. To update the password_wo, you must also update the password_wo_version.
    privateIps BaremetalServerPrivateIp[]
    The list of private IPv4 and IPv6 addresses associated with the resource.
    privateNetworks BaremetalServerPrivateNetwork[]
    The private networks to attach to the server. For more information, see the documentation
    projectId string
    project_id) The ID of the project the server is associated with.
    protected boolean
    Set to true to activate server protection option.
    reinstallOnConfigChanges boolean

    If True, this boolean allows to reinstall the server on install config changes.

    Important: Updates to ssh_key_ids, user, password, service_user or service_password will not take effect on the server, it requires to reinstall it. To do so please set 'reinstall_on_config_changes' argument to true.

    servicePassword string
    Password used for the service to install. May be required depending on used os. Only one of service_password or service_password_wo should be specified.
    servicePasswordWo string
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    servicePasswordWoVersion number
    The version of the write-only service password. To update the service_password_wo, you must also update the service_password_wo_version.
    serviceUser string
    User used for the service to install.
    sshKeyIds string[]
    List of SSH keys allowed to connect to the server.
    tags string[]
    The tags associated with the server.
    user string
    User used for the installation.
    zone string
    zone) The zone in which the server should be created.
    cloud_init str
    Configuration data to pass to cloud-init such as a YAML cloud config or a user-data script. Accepts either a string containing the content or a path to a file (for example file("cloud-init.yml")). Max length: 127998 characters. Updates to cloud_init will update the server user-data via the API and do not trigger a reinstall; however, a reboot of the server is required for the OS to re-run cloud-init and apply the changes. Only supported for Offers that have cloud-init enabled. You can check available offers with scw baremetal list offers command.
    description str
    A description for the server.
    domain str
    The domain of the server.
    hostname str
    The hostname of the server.
    install_config_afterward bool
    If True, this boolean allows to create a server without the install config if you want to provide it later.
    ips Sequence[BaremetalServerIpArgs]
    (List of) The IPs of the server.
    ipv4s Sequence[BaremetalServerIpv4Args]
    (List of) The IPv4 addresses of the server.
    ipv6s Sequence[BaremetalServerIpv6Args]
    (List of) The IPv6 addresses of the server.
    name str
    The name of the server.
    offer str

    The offer UUID of the baremetal server. Use this endpoint to find the right offer.

    Important: Updates to offer will recreate the server. Important If you migrate to a monthly subscription, you cannot downgrade back to an hourly plan. Ensure that the monthly plan meets your needs before making the switch.

    offer_id str
    The ID of the offer.
    offer_name str
    The name of the offer.
    options Sequence[BaremetalServerOptionArgs]

    The options to enable on the server.

    The options block supports:

    organization_id str
    The organization ID the server is associated with.
    os str

    The UUID of the os to install on the server. Use this endpoint to find the right OS ID.

    Important: Updates to os will reinstall the server.

    os_name str
    The name of the os.
    partitioning str
    The partitioning schema in JSON format
    password str
    Password used for the installation. May be required depending on used os. Only one of password or password_wo should be specified.
    password_wo str
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    password_wo_version int
    The version of the write-only password. To update the password_wo, you must also update the password_wo_version.
    private_ips Sequence[BaremetalServerPrivateIpArgs]
    The list of private IPv4 and IPv6 addresses associated with the resource.
    private_networks Sequence[BaremetalServerPrivateNetworkArgs]
    The private networks to attach to the server. For more information, see the documentation
    project_id str
    project_id) The ID of the project the server is associated with.
    protected bool
    Set to true to activate server protection option.
    reinstall_on_config_changes bool

    If True, this boolean allows to reinstall the server on install config changes.

    Important: Updates to ssh_key_ids, user, password, service_user or service_password will not take effect on the server, it requires to reinstall it. To do so please set 'reinstall_on_config_changes' argument to true.

    service_password str
    Password used for the service to install. May be required depending on used os. Only one of service_password or service_password_wo should be specified.
    service_password_wo str
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    service_password_wo_version int
    The version of the write-only service password. To update the service_password_wo, you must also update the service_password_wo_version.
    service_user str
    User used for the service to install.
    ssh_key_ids Sequence[str]
    List of SSH keys allowed to connect to the server.
    tags Sequence[str]
    The tags associated with the server.
    user str
    User used for the installation.
    zone str
    zone) The zone in which the server should be created.
    cloudInit String
    Configuration data to pass to cloud-init such as a YAML cloud config or a user-data script. Accepts either a string containing the content or a path to a file (for example file("cloud-init.yml")). Max length: 127998 characters. Updates to cloud_init will update the server user-data via the API and do not trigger a reinstall; however, a reboot of the server is required for the OS to re-run cloud-init and apply the changes. Only supported for Offers that have cloud-init enabled. You can check available offers with scw baremetal list offers command.
    description String
    A description for the server.
    domain String
    The domain of the server.
    hostname String
    The hostname of the server.
    installConfigAfterward Boolean
    If True, this boolean allows to create a server without the install config if you want to provide it later.
    ips List<Property Map>
    (List of) The IPs of the server.
    ipv4s List<Property Map>
    (List of) The IPv4 addresses of the server.
    ipv6s List<Property Map>
    (List of) The IPv6 addresses of the server.
    name String
    The name of the server.
    offer String

    The offer UUID of the baremetal server. Use this endpoint to find the right offer.

    Important: Updates to offer will recreate the server. Important If you migrate to a monthly subscription, you cannot downgrade back to an hourly plan. Ensure that the monthly plan meets your needs before making the switch.

    offerId String
    The ID of the offer.
    offerName String
    The name of the offer.
    options List<Property Map>

    The options to enable on the server.

    The options block supports:

    organizationId String
    The organization ID the server is associated with.
    os String

    The UUID of the os to install on the server. Use this endpoint to find the right OS ID.

    Important: Updates to os will reinstall the server.

    osName String
    The name of the os.
    partitioning String
    The partitioning schema in JSON format
    password String
    Password used for the installation. May be required depending on used os. Only one of password or password_wo should be specified.
    passwordWo String
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    passwordWoVersion Number
    The version of the write-only password. To update the password_wo, you must also update the password_wo_version.
    privateIps List<Property Map>
    The list of private IPv4 and IPv6 addresses associated with the resource.
    privateNetworks List<Property Map>
    The private networks to attach to the server. For more information, see the documentation
    projectId String
    project_id) The ID of the project the server is associated with.
    protected Boolean
    Set to true to activate server protection option.
    reinstallOnConfigChanges Boolean

    If True, this boolean allows to reinstall the server on install config changes.

    Important: Updates to ssh_key_ids, user, password, service_user or service_password will not take effect on the server, it requires to reinstall it. To do so please set 'reinstall_on_config_changes' argument to true.

    servicePassword String
    Password used for the service to install. May be required depending on used os. Only one of service_password or service_password_wo should be specified.
    servicePasswordWo String
    NOTE: This field is write-only and its value will not be updated in state as part of read operations.
    servicePasswordWoVersion Number
    The version of the write-only service password. To update the service_password_wo, you must also update the service_password_wo_version.
    serviceUser String
    User used for the service to install.
    sshKeyIds List<String>
    List of SSH keys allowed to connect to the server.
    tags List<String>
    The tags associated with the server.
    user String
    User used for the installation.
    zone String
    zone) The zone in which the server should be created.

    Supporting Types

    BaremetalServerIp, BaremetalServerIpArgs

    Address string
    The address of the IPv6.
    Id string
    The ID of the IPv6.
    Reverse string
    The reverse of the IPv6.
    Version string
    The type of the IPv6.
    Address string
    The address of the IPv6.
    Id string
    The ID of the IPv6.
    Reverse string
    The reverse of the IPv6.
    Version string
    The type of the IPv6.
    address String
    The address of the IPv6.
    id String
    The ID of the IPv6.
    reverse String
    The reverse of the IPv6.
    version String
    The type of the IPv6.
    address string
    The address of the IPv6.
    id string
    The ID of the IPv6.
    reverse string
    The reverse of the IPv6.
    version string
    The type of the IPv6.
    address str
    The address of the IPv6.
    id str
    The ID of the IPv6.
    reverse str
    The reverse of the IPv6.
    version str
    The type of the IPv6.
    address String
    The address of the IPv6.
    id String
    The ID of the IPv6.
    reverse String
    The reverse of the IPv6.
    version String
    The type of the IPv6.

    BaremetalServerIpv4, BaremetalServerIpv4Args

    Address string
    The address of the IPv6.
    Id string
    The ID of the IPv6.
    Reverse string
    The reverse of the IPv6.
    Version string
    The type of the IPv6.
    Address string
    The address of the IPv6.
    Id string
    The ID of the IPv6.
    Reverse string
    The reverse of the IPv6.
    Version string
    The type of the IPv6.
    address String
    The address of the IPv6.
    id String
    The ID of the IPv6.
    reverse String
    The reverse of the IPv6.
    version String
    The type of the IPv6.
    address string
    The address of the IPv6.
    id string
    The ID of the IPv6.
    reverse string
    The reverse of the IPv6.
    version string
    The type of the IPv6.
    address str
    The address of the IPv6.
    id str
    The ID of the IPv6.
    reverse str
    The reverse of the IPv6.
    version str
    The type of the IPv6.
    address String
    The address of the IPv6.
    id String
    The ID of the IPv6.
    reverse String
    The reverse of the IPv6.
    version String
    The type of the IPv6.

    BaremetalServerIpv6, BaremetalServerIpv6Args

    Address string
    The address of the IPv6.
    Id string
    The ID of the IPv6.
    Reverse string
    The reverse of the IPv6.
    Version string
    The type of the IPv6.
    Address string
    The address of the IPv6.
    Id string
    The ID of the IPv6.
    Reverse string
    The reverse of the IPv6.
    Version string
    The type of the IPv6.
    address String
    The address of the IPv6.
    id String
    The ID of the IPv6.
    reverse String
    The reverse of the IPv6.
    version String
    The type of the IPv6.
    address string
    The address of the IPv6.
    id string
    The ID of the IPv6.
    reverse string
    The reverse of the IPv6.
    version string
    The type of the IPv6.
    address str
    The address of the IPv6.
    id str
    The ID of the IPv6.
    reverse str
    The reverse of the IPv6.
    version str
    The type of the IPv6.
    address String
    The address of the IPv6.
    id String
    The ID of the IPv6.
    reverse String
    The reverse of the IPv6.
    version String
    The type of the IPv6.

    BaremetalServerOption, BaremetalServerOptionArgs

    Id string
    The id of the option to enable. Use this endpoint to find the available options IDs.
    ExpiresAt string
    The auto expiration date for compatible options
    Name string
    The name of the server.
    Id string
    The id of the option to enable. Use this endpoint to find the available options IDs.
    ExpiresAt string
    The auto expiration date for compatible options
    Name string
    The name of the server.
    id String
    The id of the option to enable. Use this endpoint to find the available options IDs.
    expiresAt String
    The auto expiration date for compatible options
    name String
    The name of the server.
    id string
    The id of the option to enable. Use this endpoint to find the available options IDs.
    expiresAt string
    The auto expiration date for compatible options
    name string
    The name of the server.
    id str
    The id of the option to enable. Use this endpoint to find the available options IDs.
    expires_at str
    The auto expiration date for compatible options
    name str
    The name of the server.
    id String
    The id of the option to enable. Use this endpoint to find the available options IDs.
    expiresAt String
    The auto expiration date for compatible options
    name String
    The name of the server.

    BaremetalServerPrivateIp, BaremetalServerPrivateIpArgs

    Address string
    The address of the IPv6.
    Id string
    The ID of the IPv6.
    Address string
    The address of the IPv6.
    Id string
    The ID of the IPv6.
    address String
    The address of the IPv6.
    id String
    The ID of the IPv6.
    address string
    The address of the IPv6.
    id string
    The ID of the IPv6.
    address str
    The address of the IPv6.
    id str
    The ID of the IPv6.
    address String
    The address of the IPv6.
    id String
    The ID of the IPv6.

    BaremetalServerPrivateNetwork, BaremetalServerPrivateNetworkArgs

    Id string
    The id of the private network to attach.
    CreatedAt string
    The date and time of the creation of the private network.
    IpamIpIds List<string>
    List of IPAM IP IDs to assign to the server in the requested private network.
    MappingId string
    The ID of the Server-to-Private Network mapping.
    Status string
    The private network status.
    UpdatedAt string
    The date and time of the last update of the private network.
    Vlan int
    The VLAN ID associated to the private network.
    Id string
    The id of the private network to attach.
    CreatedAt string
    The date and time of the creation of the private network.
    IpamIpIds []string
    List of IPAM IP IDs to assign to the server in the requested private network.
    MappingId string
    The ID of the Server-to-Private Network mapping.
    Status string
    The private network status.
    UpdatedAt string
    The date and time of the last update of the private network.
    Vlan int
    The VLAN ID associated to the private network.
    id String
    The id of the private network to attach.
    createdAt String
    The date and time of the creation of the private network.
    ipamIpIds List<String>
    List of IPAM IP IDs to assign to the server in the requested private network.
    mappingId String
    The ID of the Server-to-Private Network mapping.
    status String
    The private network status.
    updatedAt String
    The date and time of the last update of the private network.
    vlan Integer
    The VLAN ID associated to the private network.
    id string
    The id of the private network to attach.
    createdAt string
    The date and time of the creation of the private network.
    ipamIpIds string[]
    List of IPAM IP IDs to assign to the server in the requested private network.
    mappingId string
    The ID of the Server-to-Private Network mapping.
    status string
    The private network status.
    updatedAt string
    The date and time of the last update of the private network.
    vlan number
    The VLAN ID associated to the private network.
    id str
    The id of the private network to attach.
    created_at str
    The date and time of the creation of the private network.
    ipam_ip_ids Sequence[str]
    List of IPAM IP IDs to assign to the server in the requested private network.
    mapping_id str
    The ID of the Server-to-Private Network mapping.
    status str
    The private network status.
    updated_at str
    The date and time of the last update of the private network.
    vlan int
    The VLAN ID associated to the private network.
    id String
    The id of the private network to attach.
    createdAt String
    The date and time of the creation of the private network.
    ipamIpIds List<String>
    List of IPAM IP IDs to assign to the server in the requested private network.
    mappingId String
    The ID of the Server-to-Private Network mapping.
    status String
    The private network status.
    updatedAt String
    The date and time of the last update of the private network.
    vlan Number
    The VLAN ID associated to the private network.

    Import

    Baremetal servers can be imported using the {zone}/{id}, e.g.

    bash

    $ pulumi import scaleway:index/baremetalServer:BaremetalServer web fr-par-2/11111111-1111-1111-1111-111111111111
    

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

    Package Details

    Repository
    scaleway pulumiverse/pulumi-scaleway
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the scaleway Terraform Provider.
    scaleway logo
    Viewing docs for Scaleway v1.44.1
    published on Monday, Mar 9, 2026 by pulumiverse
      Try Pulumi Cloud free. Your team will thank you.