Class: Google::Apis::NetworkmanagementV1::Step

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/networkmanagement_v1/classes.rb,
lib/google/apis/networkmanagement_v1/representations.rb,
lib/google/apis/networkmanagement_v1/representations.rb

Overview

A simulated forwarding path is composed of multiple steps. Each step has a well-defined state and an associated configuration.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Step

Returns a new instance of Step.



4264
4265
4266
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4264

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#abortGoogle::Apis::NetworkmanagementV1::AbortInfo

Details of the final state "abort" and associated resource. Corresponds to the JSON property abort



4037
4038
4039
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4037

def abort
  @abort
end

#app_engine_versionGoogle::Apis::NetworkmanagementV1::AppEngineVersionInfo

For display only. Metadata associated with an App Engine version. Corresponds to the JSON property appEngineVersion



4042
4043
4044
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4042

def app_engine_version
  @app_engine_version
end

#causes_dropBoolean Also known as: causes_drop?

This is a step that leads to the final state Drop. Corresponds to the JSON property causesDrop

Returns:

  • (Boolean)


4047
4048
4049
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4047

def causes_drop
  @causes_drop
end

#cloud_functionGoogle::Apis::NetworkmanagementV1::CloudFunctionInfo

For display only. Metadata associated with a Cloud Function. Corresponds to the JSON property cloudFunction



4053
4054
4055
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4053

def cloud_function
  @cloud_function
end

#cloud_run_jobGoogle::Apis::NetworkmanagementV1::CloudRunJobInfo

For display only. Metadata associated with a Cloud Run job. Corresponds to the JSON property cloudRunJob



4058
4059
4060
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4058

def cloud_run_job
  @cloud_run_job
end

#cloud_run_revisionGoogle::Apis::NetworkmanagementV1::CloudRunRevisionInfo

For display only. Metadata associated with a Cloud Run revision. Corresponds to the JSON property cloudRunRevision



4063
4064
4065
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4063

def cloud_run_revision
  @cloud_run_revision
end

#cloud_sql_instanceGoogle::Apis::NetworkmanagementV1::CloudSqlInstanceInfo

For display only. Metadata associated with a Cloud SQL instance. Corresponds to the JSON property cloudSqlInstance



4068
4069
4070
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4068

def cloud_sql_instance
  @cloud_sql_instance
end

#datastream_private_connectionGoogle::Apis::NetworkmanagementV1::PrivateConnectionInfo

For display only. Metadata associated with a Private Connection. Corresponds to the JSON property datastreamPrivateConnection



4073
4074
4075
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4073

def datastream_private_connection
  @datastream_private_connection
end

#deliverGoogle::Apis::NetworkmanagementV1::DeliverInfo

Details of the final state "deliver" and associated resource. Corresponds to the JSON property deliver



4078
4079
4080
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4078

def deliver
  @deliver
end

#descriptionString

A description of the step. Usually this is a summary of the state. Corresponds to the JSON property description

Returns:

  • (String)


4083
4084
4085
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4083

def description
  @description
end

#direct_vpc_egress_connectionGoogle::Apis::NetworkmanagementV1::DirectVpcEgressConnectionInfo

For display only. Metadata associated with a serverless direct VPC egress connection. Corresponds to the JSON property directVpcEgressConnection



4089
4090
4091
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4089

def direct_vpc_egress_connection
  @direct_vpc_egress_connection
end

#dms_private_connectionGoogle::Apis::NetworkmanagementV1::PrivateConnectionInfo

For display only. Metadata associated with a Private Connection. Corresponds to the JSON property dmsPrivateConnection



4094
4095
4096
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4094

def dms_private_connection
  @dms_private_connection
end

#dropGoogle::Apis::NetworkmanagementV1::DropInfo

Details of the final state "drop" and associated resource. Corresponds to the JSON property drop



4099
4100
4101
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4099

def drop
  @drop
end

#endpointGoogle::Apis::NetworkmanagementV1::EndpointInfo

For display only. The specification of the endpoints for the test. EndpointInfo is derived from source and destination Endpoint and validated by the backend data plane model. Corresponds to the JSON property endpoint



4106
4107
4108
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4106

def endpoint
  @endpoint
end

#firewallGoogle::Apis::NetworkmanagementV1::FirewallInfo

For display only. Metadata associated with a VPC firewall rule, an implied VPC firewall rule, or a firewall policy rule. Corresponds to the JSON property firewall



4112
4113
4114
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4112

def firewall
  @firewall
end

#forwardGoogle::Apis::NetworkmanagementV1::ForwardInfo

Details of the final state "forward" and associated resource. Corresponds to the JSON property forward



4117
4118
4119
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4117

def forward
  @forward
end

#forwarding_ruleGoogle::Apis::NetworkmanagementV1::ForwardingRuleInfo

For display only. Metadata associated with a Compute Engine forwarding rule. Corresponds to the JSON property forwardingRule



4122
4123
4124
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4122

def forwarding_rule
  @forwarding_rule
end

#gke_masterGoogle::Apis::NetworkmanagementV1::GkeMasterInfo

For display only. Metadata associated with a Google Kubernetes Engine (GKE) cluster master. Corresponds to the JSON property gkeMaster



4128
4129
4130
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4128

def gke_master
  @gke_master
end

#gke_network_policyGoogle::Apis::NetworkmanagementV1::GkeNetworkPolicyInfo

For display only. Metadata associated with a GKE Network Policy. Corresponds to the JSON property gkeNetworkPolicy



4133
4134
4135
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4133

def gke_network_policy
  @gke_network_policy
end

#gke_network_policy_skippedGoogle::Apis::NetworkmanagementV1::GkeNetworkPolicySkippedInfo

For display only. Contains information about why GKE Network Policy evaluation was skipped. Corresponds to the JSON property gkeNetworkPolicySkipped



4139
4140
4141
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4139

def gke_network_policy_skipped
  @gke_network_policy_skipped
end

#gke_podGoogle::Apis::NetworkmanagementV1::GkePodInfo

For display only. Metadata associated with a Google Kubernetes Engine (GKE) Pod. Corresponds to the JSON property gkePod



4145
4146
4147
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4145

def gke_pod
  @gke_pod
end

#google_serviceGoogle::Apis::NetworkmanagementV1::GoogleServiceInfo

For display only. Details of a Google Service sending packets to a VPC network. Although the source IP might be a publicly routable address, some Google Services use special routes within Google production infrastructure to reach Compute Engine Instances. https://cloud.google.com/vpc/docs/routes# special_return_paths Corresponds to the JSON property googleService



4154
4155
4156
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4154

def google_service
  @google_service
end

#hybrid_subnetGoogle::Apis::NetworkmanagementV1::HybridSubnetInfo

For display only. Metadata associated with a hybrid subnet. Corresponds to the JSON property hybridSubnet



4159
4160
4161
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4159

def hybrid_subnet
  @hybrid_subnet
end

#instanceGoogle::Apis::NetworkmanagementV1::InstanceInfo

For display only. Metadata associated with a Compute Engine instance. Corresponds to the JSON property instance



4164
4165
4166
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4164

def instance
  @instance
end

#interconnect_attachmentGoogle::Apis::NetworkmanagementV1::InterconnectAttachmentInfo

For display only. Metadata associated with an Interconnect attachment. Corresponds to the JSON property interconnectAttachment



4169
4170
4171
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4169

def interconnect_attachment
  @interconnect_attachment
end

#ip_masquerading_skippedGoogle::Apis::NetworkmanagementV1::IpMasqueradingSkippedInfo

For display only. Contains information about why IP masquerading was skipped for the packet. Corresponds to the JSON property ipMasqueradingSkipped



4175
4176
4177
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4175

def ip_masquerading_skipped
  @ip_masquerading_skipped
end

#load_balancerGoogle::Apis::NetworkmanagementV1::LoadBalancerInfo

For display only. Metadata associated with a load balancer. Corresponds to the JSON property loadBalancer



4180
4181
4182
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4180

def load_balancer
  @load_balancer
end

#load_balancer_backend_infoGoogle::Apis::NetworkmanagementV1::LoadBalancerBackendInfo

For display only. Metadata associated with the load balancer backend. Corresponds to the JSON property loadBalancerBackendInfo



4185
4186
4187
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4185

def load_balancer_backend_info
  @load_balancer_backend_info
end

#natGoogle::Apis::NetworkmanagementV1::NatInfo

For display only. Metadata associated with NAT. Corresponds to the JSON property nat



4190
4191
4192
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4190

def nat
  @nat
end

#networkGoogle::Apis::NetworkmanagementV1::NetworkInfo

For display only. Metadata associated with a Compute Engine network. Corresponds to the JSON property network



4195
4196
4197
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4195

def network
  @network
end

#ngfw_packet_inspectionGoogle::Apis::NetworkmanagementV1::NgfwPacketInspectionInfo

For display only. Metadata associated with a layer 7 packet inspection by the firewall. Corresponds to the JSON property ngfwPacketInspection



4201
4202
4203
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4201

def ngfw_packet_inspection
  @ngfw_packet_inspection
end

#project_idString

Project ID that contains the configuration this step is validating. Corresponds to the JSON property projectId

Returns:

  • (String)


4206
4207
4208
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4206

def project_id
  @project_id
end

#proxy_connectionGoogle::Apis::NetworkmanagementV1::ProxyConnectionInfo

For display only. Metadata associated with ProxyConnection. Corresponds to the JSON property proxyConnection



4211
4212
4213
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4211

def proxy_connection
  @proxy_connection
end

#redis_clusterGoogle::Apis::NetworkmanagementV1::RedisClusterInfo

For display only. Metadata associated with a Redis Cluster. Corresponds to the JSON property redisCluster



4216
4217
4218
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4216

def redis_cluster
  @redis_cluster
end

#redis_instanceGoogle::Apis::NetworkmanagementV1::RedisInstanceInfo

For display only. Metadata associated with a Cloud Redis Instance. Corresponds to the JSON property redisInstance



4221
4222
4223
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4221

def redis_instance
  @redis_instance
end

#routeGoogle::Apis::NetworkmanagementV1::RouteInfo

For display only. Metadata associated with a Compute Engine route. Corresponds to the JSON property route



4226
4227
4228
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4226

def route
  @route
end

#serverless_external_connectionGoogle::Apis::NetworkmanagementV1::ServerlessExternalConnectionInfo

For display only. Metadata associated with a serverless public connection. Corresponds to the JSON property serverlessExternalConnection



4231
4232
4233
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4231

def serverless_external_connection
  @serverless_external_connection
end

#serverless_negGoogle::Apis::NetworkmanagementV1::ServerlessNegInfo

For display only. Metadata associated with the serverless network endpoint group backend. Corresponds to the JSON property serverlessNeg



4237
4238
4239
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4237

def serverless_neg
  @serverless_neg
end

#stateString

Each step is in one of the pre-defined states. Corresponds to the JSON property state

Returns:

  • (String)


4242
4243
4244
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4242

def state
  @state
end

#storage_bucketGoogle::Apis::NetworkmanagementV1::StorageBucketInfo

For display only. Metadata associated with Storage Bucket. Corresponds to the JSON property storageBucket



4247
4248
4249
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4247

def storage_bucket
  @storage_bucket
end

#vpc_connectorGoogle::Apis::NetworkmanagementV1::VpcConnectorInfo

For display only. Metadata associated with a VPC connector. Corresponds to the JSON property vpcConnector



4252
4253
4254
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4252

def vpc_connector
  @vpc_connector
end

#vpn_gatewayGoogle::Apis::NetworkmanagementV1::VpnGatewayInfo

For display only. Metadata associated with a Compute Engine VPN gateway. Corresponds to the JSON property vpnGateway



4257
4258
4259
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4257

def vpn_gateway
  @vpn_gateway
end

#vpn_tunnelGoogle::Apis::NetworkmanagementV1::VpnTunnelInfo

For display only. Metadata associated with a Compute Engine VPN tunnel. Corresponds to the JSON property vpnTunnel



4262
4263
4264
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4262

def vpn_tunnel
  @vpn_tunnel
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



4269
4270
4271
4272
4273
4274
4275
4276
4277
4278
4279
4280
4281
4282
4283
4284
4285
4286
4287
4288
4289
4290
4291
4292
4293
4294
4295
4296
4297
4298
4299
4300
4301
4302
4303
4304
4305
4306
4307
4308
4309
4310
4311
4312
4313
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4269

def update!(**args)
  @abort = args[:abort] if args.key?(:abort)
  @app_engine_version = args[:app_engine_version] if args.key?(:app_engine_version)
  @causes_drop = args[:causes_drop] if args.key?(:causes_drop)
  @cloud_function = args[:cloud_function] if args.key?(:cloud_function)
  @cloud_run_job = args[:cloud_run_job] if args.key?(:cloud_run_job)
  @cloud_run_revision = args[:cloud_run_revision] if args.key?(:cloud_run_revision)
  @cloud_sql_instance = args[:cloud_sql_instance] if args.key?(:cloud_sql_instance)
  @datastream_private_connection = args[:datastream_private_connection] if args.key?(:datastream_private_connection)
  @deliver = args[:deliver] if args.key?(:deliver)
  @description = args[:description] if args.key?(:description)
  @direct_vpc_egress_connection = args[:direct_vpc_egress_connection] if args.key?(:direct_vpc_egress_connection)
  @dms_private_connection = args[:dms_private_connection] if args.key?(:dms_private_connection)
  @drop = args[:drop] if args.key?(:drop)
  @endpoint = args[:endpoint] if args.key?(:endpoint)
  @firewall = args[:firewall] if args.key?(:firewall)
  @forward = args[:forward] if args.key?(:forward)
  @forwarding_rule = args[:forwarding_rule] if args.key?(:forwarding_rule)
  @gke_master = args[:gke_master] if args.key?(:gke_master)
  @gke_network_policy = args[:gke_network_policy] if args.key?(:gke_network_policy)
  @gke_network_policy_skipped = args[:gke_network_policy_skipped] if args.key?(:gke_network_policy_skipped)
  @gke_pod = args[:gke_pod] if args.key?(:gke_pod)
  @google_service = args[:google_service] if args.key?(:google_service)
  @hybrid_subnet = args[:hybrid_subnet] if args.key?(:hybrid_subnet)
  @instance = args[:instance] if args.key?(:instance)
  @interconnect_attachment = args[:interconnect_attachment] if args.key?(:interconnect_attachment)
  @ip_masquerading_skipped = args[:ip_masquerading_skipped] if args.key?(:ip_masquerading_skipped)
  @load_balancer = args[:load_balancer] if args.key?(:load_balancer)
  @load_balancer_backend_info = args[:load_balancer_backend_info] if args.key?(:load_balancer_backend_info)
  @nat = args[:nat] if args.key?(:nat)
  @network = args[:network] if args.key?(:network)
  @ngfw_packet_inspection = args[:ngfw_packet_inspection] if args.key?(:ngfw_packet_inspection)
  @project_id = args[:project_id] if args.key?(:project_id)
  @proxy_connection = args[:proxy_connection] if args.key?(:proxy_connection)
  @redis_cluster = args[:redis_cluster] if args.key?(:redis_cluster)
  @redis_instance = args[:redis_instance] if args.key?(:redis_instance)
  @route = args[:route] if args.key?(:route)
  @serverless_external_connection = args[:serverless_external_connection] if args.key?(:serverless_external_connection)
  @serverless_neg = args[:serverless_neg] if args.key?(:serverless_neg)
  @state = args[:state] if args.key?(:state)
  @storage_bucket = args[:storage_bucket] if args.key?(:storage_bucket)
  @vpc_connector = args[:vpc_connector] if args.key?(:vpc_connector)
  @vpn_gateway = args[:vpn_gateway] if args.key?(:vpn_gateway)
  @vpn_tunnel = args[:vpn_tunnel] if args.key?(:vpn_tunnel)
end