forked from GoogleCloudPlatform/magic-modules
-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathinstance_networkinterfaces.yaml
121 lines (120 loc) · 5.42 KB
/
instance_networkinterfaces.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
# Copyright 2017 Google Inc.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
- !ruby/object:Api::Type::Array
name: 'networkInterfaces'
description: |
An array of configurations for this interface. This specifies
how this interface is configured to interact with other
network services, such as connecting to the internet. Only
one network interface is supported per instance.
item_type: !ruby/object:Api::Type::NestedObject
properties:
- !ruby/object:Api::Type::Array
name: 'accessConfigs'
description: |
An array of configurations for this interface. Currently, only
one access config, ONE_TO_ONE_NAT, is supported. If there are no
accessConfigs specified, then this instance will have no
external internet access.
item_type: !ruby/object:Api::Type::NestedObject
properties:
# 'kind' is not needed for object convergence
- !ruby/object:Api::Type::String
name: 'name'
description: |
The name of this access configuration. The
default and recommended name is External NAT but you can
use any arbitrary string you would like. For example, My
external IP or Network Access.
required: true
- !ruby/object:Api::Type::ResourceRef
name: 'natIP'
resource: 'Address'
imports: 'address'
description: |
Specifies the title of a gcompute_address.
An external IP address associated with this instance.
Specify an unused static external IP address available to
the project or leave this field undefined to use an IP
from a shared ephemeral IP address pool. If you specify a
static external IP address, it must live in the same
region as the zone of the instance.
required: true
- !ruby/object:Api::Type::Enum
name: 'type'
description: |
The type of configuration. The default and only option is
ONE_TO_ONE_NAT.
values:
- :ONE_TO_ONE_NAT
required: true
- !ruby/object:Api::Type::Array
name: 'aliasIpRanges'
description: |
An array of alias IP ranges for this network interface. Can
only be specified for network interfaces on subnet-mode
networks.
item_type: !ruby/object:Api::Type::NestedObject
properties:
- !ruby/object:Api::Type::String
name: 'ipCidrRange'
description: |
The IP CIDR range represented by this alias IP range.
This IP CIDR range must belong to the specified
subnetwork and cannot contain IP addresses reserved by
system or used by other network interfaces. This range
may be a single IP address (e.g. 10.2.3.4), a netmask
(e.g. /24) or a CIDR format string (e.g. 10.1.2.0/24).
- !ruby/object:Api::Type::String
name: 'subnetworkRangeName'
description: |
Optional subnetwork secondary range name specifying
the secondary range from which to allocate the IP
CIDR range for this alias IP range. If left
unspecified, the primary range of the subnetwork will
be used.
- !ruby/object:Api::Type::String
name: 'name'
description: |
The name of the network interface, generated by the
server. For network devices, these are eth0, eth1, etc
output: true
- !ruby/object:Api::Type::ResourceRef
name: 'network'
resource: 'Network'
imports: 'selfLink'
description: |
Specifies the title of an existing gcompute_network. When creating
an instance, if neither the network nor the subnetwork is specified,
the default network global/networks/default is used; if the network
is not specified but the subnetwork is specified, the network is
inferred.
- !ruby/object:Api::Type::String
name: 'networkIP'
description: |
An IPv4 internal network address to assign to the
instance for this network interface. If not specified
by the user, an unused internal IP is assigned by the
system.
- !ruby/object:Api::Type::ResourceRef
name: 'subnetwork'
resource: 'Subnetwork'
imports: 'selfLink'
description: |
Reference to a gcompute_subnetwork resource.
If the network resource is in legacy mode, do not
provide this property. If the network is in auto
subnet mode, providing the subnetwork is optional. If
the network is in custom subnet mode, then this field
should be specified.
# networkInterfaces.kind is not necessary for convergence.