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.



3438
3439
3440
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3438

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



3226
3227
3228
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3226

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



3231
3232
3233
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3231

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)


3236
3237
3238
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3236

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



3242
3243
3244
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3242

def cloud_function
  @cloud_function
end

#cloud_run_revisionGoogle::Apis::NetworkmanagementV1::CloudRunRevisionInfo

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



3247
3248
3249
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3247

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



3252
3253
3254
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3252

def cloud_sql_instance
  @cloud_sql_instance
end

#deliverGoogle::Apis::NetworkmanagementV1::DeliverInfo

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



3257
3258
3259
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3257

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)


3262
3263
3264
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3262

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



3268
3269
3270
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3268

def direct_vpc_egress_connection
  @direct_vpc_egress_connection
end

#dropGoogle::Apis::NetworkmanagementV1::DropInfo

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



3273
3274
3275
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3273

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



3280
3281
3282
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3280

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



3286
3287
3288
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3286

def firewall
  @firewall
end

#forwardGoogle::Apis::NetworkmanagementV1::ForwardInfo

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



3291
3292
3293
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3291

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



3296
3297
3298
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3296

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



3302
3303
3304
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3302

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



3307
3308
3309
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3307

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



3313
3314
3315
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3313

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



3319
3320
3321
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3319

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



3328
3329
3330
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3328

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



3333
3334
3335
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3333

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



3338
3339
3340
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3338

def instance
  @instance
end

#interconnect_attachmentGoogle::Apis::NetworkmanagementV1::InterconnectAttachmentInfo

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



3343
3344
3345
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3343

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



3349
3350
3351
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3349

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



3354
3355
3356
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3354

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



3359
3360
3361
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3359

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



3364
3365
3366
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3364

def nat
  @nat
end

#networkGoogle::Apis::NetworkmanagementV1::NetworkInfo

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



3369
3370
3371
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3369

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



3375
3376
3377
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3375

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)


3380
3381
3382
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3380

def project_id
  @project_id
end

#proxy_connectionGoogle::Apis::NetworkmanagementV1::ProxyConnectionInfo

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



3385
3386
3387
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3385

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



3390
3391
3392
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3390

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



3395
3396
3397
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3395

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



3400
3401
3402
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3400

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



3405
3406
3407
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3405

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



3411
3412
3413
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3411

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)


3416
3417
3418
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3416

def state
  @state
end

#storage_bucketGoogle::Apis::NetworkmanagementV1::StorageBucketInfo

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



3421
3422
3423
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3421

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



3426
3427
3428
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3426

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



3431
3432
3433
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3431

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



3436
3437
3438
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3436

def vpn_tunnel
  @vpn_tunnel
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3443

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_revision = args[:cloud_run_revision] if args.key?(:cloud_run_revision)
  @cloud_sql_instance = args[:cloud_sql_instance] if args.key?(:cloud_sql_instance)
  @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)
  @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