ionoscloud.vpn.WireguardGateway
Explore with Pulumi AI
Overview
The ionoscloud.vpn.WireguardGateway
resource manages a WireGuard Gateway within the IONOS Cloud infrastructure.
This resource facilitates the creation, management, and deletion of WireGuard VPN Gateways, enabling secure connections between your network resources.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as ionoscloud from "@ionos-cloud/sdk-pulumi";
const datacenterExample = new ionoscloud.compute.Datacenter("datacenter_example", {
name: "datacenter_example",
location: "de/fra",
});
const ipblockExample = new ionoscloud.compute.IPBlock("ipblock_example", {
location: "de/fra",
size: 1,
name: "ipblock_example",
});
const lanExample = new ionoscloud.compute.Lan("lan_example", {
name: "lan_example",
datacenterId: datacenterExample.id,
});
const gateway = new ionoscloud.vpn.WireguardGateway("gateway", {
location: "de/fra",
name: "gateway_example",
description: "description",
privateKey: "private",
gatewayIp: ipblockExample.ips[0],
interfaceIpv4Cidr: "192.168.1.100/24",
connections: [{
datacenterId: datacenterExample.id,
lanId: lanExample.id,
ipv4Cidr: "192.168.1.108/24",
}],
maintenanceWindow: {
dayOfTheWeek: "Monday",
time: "09:00:00",
},
tier: "STANDARD",
});
import pulumi
import pulumi_ionoscloud as ionoscloud
datacenter_example = ionoscloud.compute.Datacenter("datacenter_example",
name="datacenter_example",
location="de/fra")
ipblock_example = ionoscloud.compute.IPBlock("ipblock_example",
location="de/fra",
size=1,
name="ipblock_example")
lan_example = ionoscloud.compute.Lan("lan_example",
name="lan_example",
datacenter_id=datacenter_example.id)
gateway = ionoscloud.vpn.WireguardGateway("gateway",
location="de/fra",
name="gateway_example",
description="description",
private_key="private",
gateway_ip=ipblock_example.ips[0],
interface_ipv4_cidr="192.168.1.100/24",
connections=[{
"datacenter_id": datacenter_example.id,
"lan_id": lan_example.id,
"ipv4_cidr": "192.168.1.108/24",
}],
maintenance_window={
"day_of_the_week": "Monday",
"time": "09:00:00",
},
tier="STANDARD")
package main
import (
"github.com/ionos-cloud/pulumi-ionoscloud/sdk/go/ionoscloud/compute"
"github.com/ionos-cloud/pulumi-ionoscloud/sdk/go/ionoscloud/vpn"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
datacenterExample, err := compute.NewDatacenter(ctx, "datacenter_example", &compute.DatacenterArgs{
Name: pulumi.String("datacenter_example"),
Location: pulumi.String("de/fra"),
})
if err != nil {
return err
}
ipblockExample, err := compute.NewIPBlock(ctx, "ipblock_example", &compute.IPBlockArgs{
Location: pulumi.String("de/fra"),
Size: pulumi.Int(1),
Name: pulumi.String("ipblock_example"),
})
if err != nil {
return err
}
lanExample, err := compute.NewLan(ctx, "lan_example", &compute.LanArgs{
Name: pulumi.String("lan_example"),
DatacenterId: datacenterExample.ID(),
})
if err != nil {
return err
}
_, err = vpn.NewWireguardGateway(ctx, "gateway", &vpn.WireguardGatewayArgs{
Location: pulumi.String("de/fra"),
Name: pulumi.String("gateway_example"),
Description: pulumi.String("description"),
PrivateKey: pulumi.String("private"),
GatewayIp: ipblockExample.Ips.ApplyT(func(ips []string) (string, error) {
return ips[0], nil
}).(pulumi.StringOutput),
InterfaceIpv4Cidr: pulumi.String("192.168.1.100/24"),
Connections: vpn.WireguardGatewayConnectionArray{
&vpn.WireguardGatewayConnectionArgs{
DatacenterId: datacenterExample.ID(),
LanId: lanExample.ID(),
Ipv4Cidr: pulumi.String("192.168.1.108/24"),
},
},
MaintenanceWindow: &vpn.WireguardGatewayMaintenanceWindowArgs{
DayOfTheWeek: pulumi.String("Monday"),
Time: pulumi.String("09:00:00"),
},
Tier: pulumi.String("STANDARD"),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Ionoscloud = Ionoscloud.Pulumi.Ionoscloud;
return await Deployment.RunAsync(() =>
{
var datacenterExample = new Ionoscloud.Compute.Datacenter("datacenter_example", new()
{
Name = "datacenter_example",
Location = "de/fra",
});
var ipblockExample = new Ionoscloud.Compute.IPBlock("ipblock_example", new()
{
Location = "de/fra",
Size = 1,
Name = "ipblock_example",
});
var lanExample = new Ionoscloud.Compute.Lan("lan_example", new()
{
Name = "lan_example",
DatacenterId = datacenterExample.Id,
});
var gateway = new Ionoscloud.Vpn.WireguardGateway("gateway", new()
{
Location = "de/fra",
Name = "gateway_example",
Description = "description",
PrivateKey = "private",
GatewayIp = ipblockExample.Ips.Apply(ips => ips[0]),
InterfaceIpv4Cidr = "192.168.1.100/24",
Connections = new[]
{
new Ionoscloud.Vpn.Inputs.WireguardGatewayConnectionArgs
{
DatacenterId = datacenterExample.Id,
LanId = lanExample.Id,
Ipv4Cidr = "192.168.1.108/24",
},
},
MaintenanceWindow = new Ionoscloud.Vpn.Inputs.WireguardGatewayMaintenanceWindowArgs
{
DayOfTheWeek = "Monday",
Time = "09:00:00",
},
Tier = "STANDARD",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.ionoscloud.compute.Datacenter;
import com.pulumi.ionoscloud.compute.DatacenterArgs;
import com.pulumi.ionoscloud.compute.IPBlock;
import com.pulumi.ionoscloud.compute.IPBlockArgs;
import com.pulumi.ionoscloud.compute.Lan;
import com.pulumi.ionoscloud.compute.LanArgs;
import com.pulumi.ionoscloud.vpn.WireguardGateway;
import com.pulumi.ionoscloud.vpn.WireguardGatewayArgs;
import com.pulumi.ionoscloud.vpn.inputs.WireguardGatewayConnectionArgs;
import com.pulumi.ionoscloud.vpn.inputs.WireguardGatewayMaintenanceWindowArgs;
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) {
var datacenterExample = new Datacenter("datacenterExample", DatacenterArgs.builder()
.name("datacenter_example")
.location("de/fra")
.build());
var ipblockExample = new IPBlock("ipblockExample", IPBlockArgs.builder()
.location("de/fra")
.size(1)
.name("ipblock_example")
.build());
var lanExample = new Lan("lanExample", LanArgs.builder()
.name("lan_example")
.datacenterId(datacenterExample.id())
.build());
var gateway = new WireguardGateway("gateway", WireguardGatewayArgs.builder()
.location("de/fra")
.name("gateway_example")
.description("description")
.privateKey("private")
.gatewayIp(ipblockExample.ips().applyValue(ips -> ips[0]))
.interfaceIpv4Cidr("192.168.1.100/24")
.connections(WireguardGatewayConnectionArgs.builder()
.datacenterId(datacenterExample.id())
.lanId(lanExample.id())
.ipv4Cidr("192.168.1.108/24")
.build())
.maintenanceWindow(WireguardGatewayMaintenanceWindowArgs.builder()
.dayOfTheWeek("Monday")
.time("09:00:00")
.build())
.tier("STANDARD")
.build());
}
}
resources:
datacenterExample:
type: ionoscloud:compute:Datacenter
name: datacenter_example
properties:
name: datacenter_example
location: de/fra
ipblockExample:
type: ionoscloud:compute:IPBlock
name: ipblock_example
properties:
location: de/fra
size: 1
name: ipblock_example
lanExample:
type: ionoscloud:compute:Lan
name: lan_example
properties:
name: lan_example
datacenterId: ${datacenterExample.id}
gateway:
type: ionoscloud:vpn:WireguardGateway
properties:
location: de/fra
name: gateway_example
description: description
privateKey: private
gatewayIp: ${ipblockExample.ips[0]}
interfaceIpv4Cidr: 192.168.1.100/24
connections:
- datacenterId: ${datacenterExample.id}
lanId: ${lanExample.id}
ipv4Cidr: 192.168.1.108/24
maintenanceWindow:
dayOfTheWeek: Monday
time: 09:00:00
tier: STANDARD
Create WireguardGateway Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new WireguardGateway(name: string, args: WireguardGatewayArgs, opts?: CustomResourceOptions);
@overload
def WireguardGateway(resource_name: str,
args: WireguardGatewayArgs,
opts: Optional[ResourceOptions] = None)
@overload
def WireguardGateway(resource_name: str,
opts: Optional[ResourceOptions] = None,
connections: Optional[Sequence[WireguardGatewayConnectionArgs]] = None,
gateway_ip: Optional[str] = None,
private_key: Optional[str] = None,
description: Optional[str] = None,
interface_ipv4_cidr: Optional[str] = None,
interface_ipv6_cidr: Optional[str] = None,
listen_port: Optional[int] = None,
location: Optional[str] = None,
maintenance_window: Optional[WireguardGatewayMaintenanceWindowArgs] = None,
name: Optional[str] = None,
tier: Optional[str] = None)
func NewWireguardGateway(ctx *Context, name string, args WireguardGatewayArgs, opts ...ResourceOption) (*WireguardGateway, error)
public WireguardGateway(string name, WireguardGatewayArgs args, CustomResourceOptions? opts = null)
public WireguardGateway(String name, WireguardGatewayArgs args)
public WireguardGateway(String name, WireguardGatewayArgs args, CustomResourceOptions options)
type: ionoscloud:vpn:WireguardGateway
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 WireguardGatewayArgs
- 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 WireguardGatewayArgs
- 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 WireguardGatewayArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args WireguardGatewayArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args WireguardGatewayArgs
- 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 wireguardGatewayResource = new Ionoscloud.Vpn.WireguardGateway("wireguardGatewayResource", new()
{
Connections = new[]
{
new Ionoscloud.Vpn.Inputs.WireguardGatewayConnectionArgs
{
DatacenterId = "string",
LanId = "string",
Ipv4Cidr = "string",
Ipv6Cidr = "string",
},
},
GatewayIp = "string",
PrivateKey = "string",
Description = "string",
InterfaceIpv4Cidr = "string",
InterfaceIpv6Cidr = "string",
ListenPort = 0,
Location = "string",
MaintenanceWindow = new Ionoscloud.Vpn.Inputs.WireguardGatewayMaintenanceWindowArgs
{
DayOfTheWeek = "string",
Time = "string",
},
Name = "string",
Tier = "string",
});
example, err := vpn.NewWireguardGateway(ctx, "wireguardGatewayResource", &vpn.WireguardGatewayArgs{
Connections: vpn.WireguardGatewayConnectionArray{
&vpn.WireguardGatewayConnectionArgs{
DatacenterId: pulumi.String("string"),
LanId: pulumi.String("string"),
Ipv4Cidr: pulumi.String("string"),
Ipv6Cidr: pulumi.String("string"),
},
},
GatewayIp: pulumi.String("string"),
PrivateKey: pulumi.String("string"),
Description: pulumi.String("string"),
InterfaceIpv4Cidr: pulumi.String("string"),
InterfaceIpv6Cidr: pulumi.String("string"),
ListenPort: pulumi.Int(0),
Location: pulumi.String("string"),
MaintenanceWindow: &vpn.WireguardGatewayMaintenanceWindowArgs{
DayOfTheWeek: pulumi.String("string"),
Time: pulumi.String("string"),
},
Name: pulumi.String("string"),
Tier: pulumi.String("string"),
})
var wireguardGatewayResource = new WireguardGateway("wireguardGatewayResource", WireguardGatewayArgs.builder()
.connections(WireguardGatewayConnectionArgs.builder()
.datacenterId("string")
.lanId("string")
.ipv4Cidr("string")
.ipv6Cidr("string")
.build())
.gatewayIp("string")
.privateKey("string")
.description("string")
.interfaceIpv4Cidr("string")
.interfaceIpv6Cidr("string")
.listenPort(0)
.location("string")
.maintenanceWindow(WireguardGatewayMaintenanceWindowArgs.builder()
.dayOfTheWeek("string")
.time("string")
.build())
.name("string")
.tier("string")
.build());
wireguard_gateway_resource = ionoscloud.vpn.WireguardGateway("wireguardGatewayResource",
connections=[{
"datacenter_id": "string",
"lan_id": "string",
"ipv4_cidr": "string",
"ipv6_cidr": "string",
}],
gateway_ip="string",
private_key="string",
description="string",
interface_ipv4_cidr="string",
interface_ipv6_cidr="string",
listen_port=0,
location="string",
maintenance_window={
"day_of_the_week": "string",
"time": "string",
},
name="string",
tier="string")
const wireguardGatewayResource = new ionoscloud.vpn.WireguardGateway("wireguardGatewayResource", {
connections: [{
datacenterId: "string",
lanId: "string",
ipv4Cidr: "string",
ipv6Cidr: "string",
}],
gatewayIp: "string",
privateKey: "string",
description: "string",
interfaceIpv4Cidr: "string",
interfaceIpv6Cidr: "string",
listenPort: 0,
location: "string",
maintenanceWindow: {
dayOfTheWeek: "string",
time: "string",
},
name: "string",
tier: "string",
});
type: ionoscloud:vpn:WireguardGateway
properties:
connections:
- datacenterId: string
ipv4Cidr: string
ipv6Cidr: string
lanId: string
description: string
gatewayIp: string
interfaceIpv4Cidr: string
interfaceIpv6Cidr: string
listenPort: 0
location: string
maintenanceWindow:
dayOfTheWeek: string
time: string
name: string
privateKey: string
tier: string
WireguardGateway 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 WireguardGateway resource accepts the following input properties:
- Connections
List<Ionoscloud.
Wireguard Gateway Connection> - [Block] The connection configuration for the WireGuard Gateway. This block supports fields documented below.
- Gateway
Ip string - [String] The IP address of the WireGuard Gateway.
- Private
Key string - [String] The private key for the WireGuard Gateway. To be created with the wg utility.
- Description string
- [String] A description of the WireGuard Gateway.
- Interface
Ipv4Cidr string - [String] The IPv4 CIDR for the WireGuard Gateway interface.
- Interface
Ipv6Cidr string - [String] The IPv6 CIDR for the WireGuard Gateway interface.
- Listen
Port int - Location string
- [String] The location of the WireGuard Gateway. Supported locations: de/fra, de/txl, es/vit, gb/bhx, gb/lhr, us/ewr, us/las, us/mci, fr/par.
- Maintenance
Window Ionoscloud.Wireguard Gateway Maintenance Window - (Computed) A weekly 4 hour-long window, during which maintenance might occur.
- Name string
- [String] The name of the WireGuard Gateway.
- Tier string
- (Computed)[string] Gateway performance options. See product documentation for full details. Options: STANDARD, STANDARD_HA, ENHANCED, ENHANCED_HA, PREMIUM, PREMIUM_HA.
- Connections
[]Wireguard
Gateway Connection Args - [Block] The connection configuration for the WireGuard Gateway. This block supports fields documented below.
- Gateway
Ip string - [String] The IP address of the WireGuard Gateway.
- Private
Key string - [String] The private key for the WireGuard Gateway. To be created with the wg utility.
- Description string
- [String] A description of the WireGuard Gateway.
- Interface
Ipv4Cidr string - [String] The IPv4 CIDR for the WireGuard Gateway interface.
- Interface
Ipv6Cidr string - [String] The IPv6 CIDR for the WireGuard Gateway interface.
- Listen
Port int - Location string
- [String] The location of the WireGuard Gateway. Supported locations: de/fra, de/txl, es/vit, gb/bhx, gb/lhr, us/ewr, us/las, us/mci, fr/par.
- Maintenance
Window WireguardGateway Maintenance Window Args - (Computed) A weekly 4 hour-long window, during which maintenance might occur.
- Name string
- [String] The name of the WireGuard Gateway.
- Tier string
- (Computed)[string] Gateway performance options. See product documentation for full details. Options: STANDARD, STANDARD_HA, ENHANCED, ENHANCED_HA, PREMIUM, PREMIUM_HA.
- connections
List<Wireguard
Gateway Connection> - [Block] The connection configuration for the WireGuard Gateway. This block supports fields documented below.
- gateway
Ip String - [String] The IP address of the WireGuard Gateway.
- private
Key String - [String] The private key for the WireGuard Gateway. To be created with the wg utility.
- description String
- [String] A description of the WireGuard Gateway.
- interface
Ipv4Cidr String - [String] The IPv4 CIDR for the WireGuard Gateway interface.
- interface
Ipv6Cidr String - [String] The IPv6 CIDR for the WireGuard Gateway interface.
- listen
Port Integer - location String
- [String] The location of the WireGuard Gateway. Supported locations: de/fra, de/txl, es/vit, gb/bhx, gb/lhr, us/ewr, us/las, us/mci, fr/par.
- maintenance
Window WireguardGateway Maintenance Window - (Computed) A weekly 4 hour-long window, during which maintenance might occur.
- name String
- [String] The name of the WireGuard Gateway.
- tier String
- (Computed)[string] Gateway performance options. See product documentation for full details. Options: STANDARD, STANDARD_HA, ENHANCED, ENHANCED_HA, PREMIUM, PREMIUM_HA.
- connections
Wireguard
Gateway Connection[] - [Block] The connection configuration for the WireGuard Gateway. This block supports fields documented below.
- gateway
Ip string - [String] The IP address of the WireGuard Gateway.
- private
Key string - [String] The private key for the WireGuard Gateway. To be created with the wg utility.
- description string
- [String] A description of the WireGuard Gateway.
- interface
Ipv4Cidr string - [String] The IPv4 CIDR for the WireGuard Gateway interface.
- interface
Ipv6Cidr string - [String] The IPv6 CIDR for the WireGuard Gateway interface.
- listen
Port number - location string
- [String] The location of the WireGuard Gateway. Supported locations: de/fra, de/txl, es/vit, gb/bhx, gb/lhr, us/ewr, us/las, us/mci, fr/par.
- maintenance
Window WireguardGateway Maintenance Window - (Computed) A weekly 4 hour-long window, during which maintenance might occur.
- name string
- [String] The name of the WireGuard Gateway.
- tier string
- (Computed)[string] Gateway performance options. See product documentation for full details. Options: STANDARD, STANDARD_HA, ENHANCED, ENHANCED_HA, PREMIUM, PREMIUM_HA.
- connections
Sequence[Wireguard
Gateway Connection Args] - [Block] The connection configuration for the WireGuard Gateway. This block supports fields documented below.
- gateway_
ip str - [String] The IP address of the WireGuard Gateway.
- private_
key str - [String] The private key for the WireGuard Gateway. To be created with the wg utility.
- description str
- [String] A description of the WireGuard Gateway.
- interface_
ipv4_ strcidr - [String] The IPv4 CIDR for the WireGuard Gateway interface.
- interface_
ipv6_ strcidr - [String] The IPv6 CIDR for the WireGuard Gateway interface.
- listen_
port int - location str
- [String] The location of the WireGuard Gateway. Supported locations: de/fra, de/txl, es/vit, gb/bhx, gb/lhr, us/ewr, us/las, us/mci, fr/par.
- maintenance_
window WireguardGateway Maintenance Window Args - (Computed) A weekly 4 hour-long window, during which maintenance might occur.
- name str
- [String] The name of the WireGuard Gateway.
- tier str
- (Computed)[string] Gateway performance options. See product documentation for full details. Options: STANDARD, STANDARD_HA, ENHANCED, ENHANCED_HA, PREMIUM, PREMIUM_HA.
- connections List<Property Map>
- [Block] The connection configuration for the WireGuard Gateway. This block supports fields documented below.
- gateway
Ip String - [String] The IP address of the WireGuard Gateway.
- private
Key String - [String] The private key for the WireGuard Gateway. To be created with the wg utility.
- description String
- [String] A description of the WireGuard Gateway.
- interface
Ipv4Cidr String - [String] The IPv4 CIDR for the WireGuard Gateway interface.
- interface
Ipv6Cidr String - [String] The IPv6 CIDR for the WireGuard Gateway interface.
- listen
Port Number - location String
- [String] The location of the WireGuard Gateway. Supported locations: de/fra, de/txl, es/vit, gb/bhx, gb/lhr, us/ewr, us/las, us/mci, fr/par.
- maintenance
Window Property Map - (Computed) A weekly 4 hour-long window, during which maintenance might occur.
- name String
- [String] The name of the WireGuard Gateway.
- tier String
- (Computed)[string] Gateway performance options. See product documentation for full details. Options: STANDARD, STANDARD_HA, ENHANCED, ENHANCED_HA, PREMIUM, PREMIUM_HA.
Outputs
All input properties are implicitly available as output properties. Additionally, the WireguardGateway resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Public
Key string (Computed)[String] The public key for the WireGuard Gateway.
⚠ NOTE:
IONOS_API_URL_VPN
can be used to set a custom API URL for the resource.location
field needs to be empty, otherwise it will override the custom API URL. Settingendpoint
orIONOS_API_URL
does not have any effect.- Status string
- (Computed)[String] The current status of the WireGuard Gateway.
- Id string
- The provider-assigned unique ID for this managed resource.
- Public
Key string (Computed)[String] The public key for the WireGuard Gateway.
⚠ NOTE:
IONOS_API_URL_VPN
can be used to set a custom API URL for the resource.location
field needs to be empty, otherwise it will override the custom API URL. Settingendpoint
orIONOS_API_URL
does not have any effect.- Status string
- (Computed)[String] The current status of the WireGuard Gateway.
- id String
- The provider-assigned unique ID for this managed resource.
- public
Key String (Computed)[String] The public key for the WireGuard Gateway.
⚠ NOTE:
IONOS_API_URL_VPN
can be used to set a custom API URL for the resource.location
field needs to be empty, otherwise it will override the custom API URL. Settingendpoint
orIONOS_API_URL
does not have any effect.- status String
- (Computed)[String] The current status of the WireGuard Gateway.
- id string
- The provider-assigned unique ID for this managed resource.
- public
Key string (Computed)[String] The public key for the WireGuard Gateway.
⚠ NOTE:
IONOS_API_URL_VPN
can be used to set a custom API URL for the resource.location
field needs to be empty, otherwise it will override the custom API URL. Settingendpoint
orIONOS_API_URL
does not have any effect.- status string
- (Computed)[String] The current status of the WireGuard Gateway.
- id str
- The provider-assigned unique ID for this managed resource.
- public_
key str (Computed)[String] The public key for the WireGuard Gateway.
⚠ NOTE:
IONOS_API_URL_VPN
can be used to set a custom API URL for the resource.location
field needs to be empty, otherwise it will override the custom API URL. Settingendpoint
orIONOS_API_URL
does not have any effect.- status str
- (Computed)[String] The current status of the WireGuard Gateway.
- id String
- The provider-assigned unique ID for this managed resource.
- public
Key String (Computed)[String] The public key for the WireGuard Gateway.
⚠ NOTE:
IONOS_API_URL_VPN
can be used to set a custom API URL for the resource.location
field needs to be empty, otherwise it will override the custom API URL. Settingendpoint
orIONOS_API_URL
does not have any effect.- status String
- (Computed)[String] The current status of the WireGuard Gateway.
Look up Existing WireguardGateway Resource
Get an existing WireguardGateway 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?: WireguardGatewayState, opts?: CustomResourceOptions): WireguardGateway
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
connections: Optional[Sequence[WireguardGatewayConnectionArgs]] = None,
description: Optional[str] = None,
gateway_ip: Optional[str] = None,
interface_ipv4_cidr: Optional[str] = None,
interface_ipv6_cidr: Optional[str] = None,
listen_port: Optional[int] = None,
location: Optional[str] = None,
maintenance_window: Optional[WireguardGatewayMaintenanceWindowArgs] = None,
name: Optional[str] = None,
private_key: Optional[str] = None,
public_key: Optional[str] = None,
status: Optional[str] = None,
tier: Optional[str] = None) -> WireguardGateway
func GetWireguardGateway(ctx *Context, name string, id IDInput, state *WireguardGatewayState, opts ...ResourceOption) (*WireguardGateway, error)
public static WireguardGateway Get(string name, Input<string> id, WireguardGatewayState? state, CustomResourceOptions? opts = null)
public static WireguardGateway get(String name, Output<String> id, WireguardGatewayState state, CustomResourceOptions options)
resources: _: type: ionoscloud:vpn:WireguardGateway 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.
- Connections
List<Ionoscloud.
Wireguard Gateway Connection> - [Block] The connection configuration for the WireGuard Gateway. This block supports fields documented below.
- Description string
- [String] A description of the WireGuard Gateway.
- Gateway
Ip string - [String] The IP address of the WireGuard Gateway.
- Interface
Ipv4Cidr string - [String] The IPv4 CIDR for the WireGuard Gateway interface.
- Interface
Ipv6Cidr string - [String] The IPv6 CIDR for the WireGuard Gateway interface.
- Listen
Port int - Location string
- [String] The location of the WireGuard Gateway. Supported locations: de/fra, de/txl, es/vit, gb/bhx, gb/lhr, us/ewr, us/las, us/mci, fr/par.
- Maintenance
Window Ionoscloud.Wireguard Gateway Maintenance Window - (Computed) A weekly 4 hour-long window, during which maintenance might occur.
- Name string
- [String] The name of the WireGuard Gateway.
- Private
Key string - [String] The private key for the WireGuard Gateway. To be created with the wg utility.
- Public
Key string (Computed)[String] The public key for the WireGuard Gateway.
⚠ NOTE:
IONOS_API_URL_VPN
can be used to set a custom API URL for the resource.location
field needs to be empty, otherwise it will override the custom API URL. Settingendpoint
orIONOS_API_URL
does not have any effect.- Status string
- (Computed)[String] The current status of the WireGuard Gateway.
- Tier string
- (Computed)[string] Gateway performance options. See product documentation for full details. Options: STANDARD, STANDARD_HA, ENHANCED, ENHANCED_HA, PREMIUM, PREMIUM_HA.
- Connections
[]Wireguard
Gateway Connection Args - [Block] The connection configuration for the WireGuard Gateway. This block supports fields documented below.
- Description string
- [String] A description of the WireGuard Gateway.
- Gateway
Ip string - [String] The IP address of the WireGuard Gateway.
- Interface
Ipv4Cidr string - [String] The IPv4 CIDR for the WireGuard Gateway interface.
- Interface
Ipv6Cidr string - [String] The IPv6 CIDR for the WireGuard Gateway interface.
- Listen
Port int - Location string
- [String] The location of the WireGuard Gateway. Supported locations: de/fra, de/txl, es/vit, gb/bhx, gb/lhr, us/ewr, us/las, us/mci, fr/par.
- Maintenance
Window WireguardGateway Maintenance Window Args - (Computed) A weekly 4 hour-long window, during which maintenance might occur.
- Name string
- [String] The name of the WireGuard Gateway.
- Private
Key string - [String] The private key for the WireGuard Gateway. To be created with the wg utility.
- Public
Key string (Computed)[String] The public key for the WireGuard Gateway.
⚠ NOTE:
IONOS_API_URL_VPN
can be used to set a custom API URL for the resource.location
field needs to be empty, otherwise it will override the custom API URL. Settingendpoint
orIONOS_API_URL
does not have any effect.- Status string
- (Computed)[String] The current status of the WireGuard Gateway.
- Tier string
- (Computed)[string] Gateway performance options. See product documentation for full details. Options: STANDARD, STANDARD_HA, ENHANCED, ENHANCED_HA, PREMIUM, PREMIUM_HA.
- connections
List<Wireguard
Gateway Connection> - [Block] The connection configuration for the WireGuard Gateway. This block supports fields documented below.
- description String
- [String] A description of the WireGuard Gateway.
- gateway
Ip String - [String] The IP address of the WireGuard Gateway.
- interface
Ipv4Cidr String - [String] The IPv4 CIDR for the WireGuard Gateway interface.
- interface
Ipv6Cidr String - [String] The IPv6 CIDR for the WireGuard Gateway interface.
- listen
Port Integer - location String
- [String] The location of the WireGuard Gateway. Supported locations: de/fra, de/txl, es/vit, gb/bhx, gb/lhr, us/ewr, us/las, us/mci, fr/par.
- maintenance
Window WireguardGateway Maintenance Window - (Computed) A weekly 4 hour-long window, during which maintenance might occur.
- name String
- [String] The name of the WireGuard Gateway.
- private
Key String - [String] The private key for the WireGuard Gateway. To be created with the wg utility.
- public
Key String (Computed)[String] The public key for the WireGuard Gateway.
⚠ NOTE:
IONOS_API_URL_VPN
can be used to set a custom API URL for the resource.location
field needs to be empty, otherwise it will override the custom API URL. Settingendpoint
orIONOS_API_URL
does not have any effect.- status String
- (Computed)[String] The current status of the WireGuard Gateway.
- tier String
- (Computed)[string] Gateway performance options. See product documentation for full details. Options: STANDARD, STANDARD_HA, ENHANCED, ENHANCED_HA, PREMIUM, PREMIUM_HA.
- connections
Wireguard
Gateway Connection[] - [Block] The connection configuration for the WireGuard Gateway. This block supports fields documented below.
- description string
- [String] A description of the WireGuard Gateway.
- gateway
Ip string - [String] The IP address of the WireGuard Gateway.
- interface
Ipv4Cidr string - [String] The IPv4 CIDR for the WireGuard Gateway interface.
- interface
Ipv6Cidr string - [String] The IPv6 CIDR for the WireGuard Gateway interface.
- listen
Port number - location string
- [String] The location of the WireGuard Gateway. Supported locations: de/fra, de/txl, es/vit, gb/bhx, gb/lhr, us/ewr, us/las, us/mci, fr/par.
- maintenance
Window WireguardGateway Maintenance Window - (Computed) A weekly 4 hour-long window, during which maintenance might occur.
- name string
- [String] The name of the WireGuard Gateway.
- private
Key string - [String] The private key for the WireGuard Gateway. To be created with the wg utility.
- public
Key string (Computed)[String] The public key for the WireGuard Gateway.
⚠ NOTE:
IONOS_API_URL_VPN
can be used to set a custom API URL for the resource.location
field needs to be empty, otherwise it will override the custom API URL. Settingendpoint
orIONOS_API_URL
does not have any effect.- status string
- (Computed)[String] The current status of the WireGuard Gateway.
- tier string
- (Computed)[string] Gateway performance options. See product documentation for full details. Options: STANDARD, STANDARD_HA, ENHANCED, ENHANCED_HA, PREMIUM, PREMIUM_HA.
- connections
Sequence[Wireguard
Gateway Connection Args] - [Block] The connection configuration for the WireGuard Gateway. This block supports fields documented below.
- description str
- [String] A description of the WireGuard Gateway.
- gateway_
ip str - [String] The IP address of the WireGuard Gateway.
- interface_
ipv4_ strcidr - [String] The IPv4 CIDR for the WireGuard Gateway interface.
- interface_
ipv6_ strcidr - [String] The IPv6 CIDR for the WireGuard Gateway interface.
- listen_
port int - location str
- [String] The location of the WireGuard Gateway. Supported locations: de/fra, de/txl, es/vit, gb/bhx, gb/lhr, us/ewr, us/las, us/mci, fr/par.
- maintenance_
window WireguardGateway Maintenance Window Args - (Computed) A weekly 4 hour-long window, during which maintenance might occur.
- name str
- [String] The name of the WireGuard Gateway.
- private_
key str - [String] The private key for the WireGuard Gateway. To be created with the wg utility.
- public_
key str (Computed)[String] The public key for the WireGuard Gateway.
⚠ NOTE:
IONOS_API_URL_VPN
can be used to set a custom API URL for the resource.location
field needs to be empty, otherwise it will override the custom API URL. Settingendpoint
orIONOS_API_URL
does not have any effect.- status str
- (Computed)[String] The current status of the WireGuard Gateway.
- tier str
- (Computed)[string] Gateway performance options. See product documentation for full details. Options: STANDARD, STANDARD_HA, ENHANCED, ENHANCED_HA, PREMIUM, PREMIUM_HA.
- connections List<Property Map>
- [Block] The connection configuration for the WireGuard Gateway. This block supports fields documented below.
- description String
- [String] A description of the WireGuard Gateway.
- gateway
Ip String - [String] The IP address of the WireGuard Gateway.
- interface
Ipv4Cidr String - [String] The IPv4 CIDR for the WireGuard Gateway interface.
- interface
Ipv6Cidr String - [String] The IPv6 CIDR for the WireGuard Gateway interface.
- listen
Port Number - location String
- [String] The location of the WireGuard Gateway. Supported locations: de/fra, de/txl, es/vit, gb/bhx, gb/lhr, us/ewr, us/las, us/mci, fr/par.
- maintenance
Window Property Map - (Computed) A weekly 4 hour-long window, during which maintenance might occur.
- name String
- [String] The name of the WireGuard Gateway.
- private
Key String - [String] The private key for the WireGuard Gateway. To be created with the wg utility.
- public
Key String (Computed)[String] The public key for the WireGuard Gateway.
⚠ NOTE:
IONOS_API_URL_VPN
can be used to set a custom API URL for the resource.location
field needs to be empty, otherwise it will override the custom API URL. Settingendpoint
orIONOS_API_URL
does not have any effect.- status String
- (Computed)[String] The current status of the WireGuard Gateway.
- tier String
- (Computed)[string] Gateway performance options. See product documentation for full details. Options: STANDARD, STANDARD_HA, ENHANCED, ENHANCED_HA, PREMIUM, PREMIUM_HA.
Supporting Types
WireguardGatewayConnection, WireguardGatewayConnectionArgs
- Datacenter
Id string - [String] The ID of the datacenter where the WireGuard Gateway is located.
- Lan
Id string - [String] The ID of the LAN where the WireGuard Gateway is connected.
- Ipv4Cidr string
- [String] The IPv4 CIDR for the WireGuard Gateway connection.
- Ipv6Cidr string
- [String] The IPv6 CIDR for the WireGuard Gateway connection.
- Datacenter
Id string - [String] The ID of the datacenter where the WireGuard Gateway is located.
- Lan
Id string - [String] The ID of the LAN where the WireGuard Gateway is connected.
- Ipv4Cidr string
- [String] The IPv4 CIDR for the WireGuard Gateway connection.
- Ipv6Cidr string
- [String] The IPv6 CIDR for the WireGuard Gateway connection.
- datacenter
Id String - [String] The ID of the datacenter where the WireGuard Gateway is located.
- lan
Id String - [String] The ID of the LAN where the WireGuard Gateway is connected.
- ipv4Cidr String
- [String] The IPv4 CIDR for the WireGuard Gateway connection.
- ipv6Cidr String
- [String] The IPv6 CIDR for the WireGuard Gateway connection.
- datacenter
Id string - [String] The ID of the datacenter where the WireGuard Gateway is located.
- lan
Id string - [String] The ID of the LAN where the WireGuard Gateway is connected.
- ipv4Cidr string
- [String] The IPv4 CIDR for the WireGuard Gateway connection.
- ipv6Cidr string
- [String] The IPv6 CIDR for the WireGuard Gateway connection.
- datacenter_
id str - [String] The ID of the datacenter where the WireGuard Gateway is located.
- lan_
id str - [String] The ID of the LAN where the WireGuard Gateway is connected.
- ipv4_
cidr str - [String] The IPv4 CIDR for the WireGuard Gateway connection.
- ipv6_
cidr str - [String] The IPv6 CIDR for the WireGuard Gateway connection.
- datacenter
Id String - [String] The ID of the datacenter where the WireGuard Gateway is located.
- lan
Id String - [String] The ID of the LAN where the WireGuard Gateway is connected.
- ipv4Cidr String
- [String] The IPv4 CIDR for the WireGuard Gateway connection.
- ipv6Cidr String
- [String] The IPv6 CIDR for the WireGuard Gateway connection.
WireguardGatewayMaintenanceWindow, WireguardGatewayMaintenanceWindowArgs
- Day
Of stringThe Week - [string] The name of the week day.
- Time string
- [string] Start of the maintenance window in UTC time.
- Day
Of stringThe Week - [string] The name of the week day.
- Time string
- [string] Start of the maintenance window in UTC time.
- day
Of StringThe Week - [string] The name of the week day.
- time String
- [string] Start of the maintenance window in UTC time.
- day
Of stringThe Week - [string] The name of the week day.
- time string
- [string] Start of the maintenance window in UTC time.
- day_
of_ strthe_ week - [string] The name of the week day.
- time str
- [string] Start of the maintenance window in UTC time.
- day
Of StringThe Week - [string] The name of the week day.
- time String
- [string] Start of the maintenance window in UTC time.
Import
WireGuard Gateways can be imported using their ID:
$ pulumi import ionoscloud:vpn/wireguardGateway:WireguardGateway example_gateway location:id
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- ionoscloud ionos-cloud/pulumi-ionoscloud
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
ionoscloud
Terraform Provider.