Class: Google::Apis::NetworkmanagementV1beta1::Step

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/networkmanagement_v1beta1/classes.rb,
lib/google/apis/networkmanagement_v1beta1/representations.rb,
lib/google/apis/networkmanagement_v1beta1/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.



3454
3455
3456
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3454

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

Instance Attribute Details

#abortGoogle::Apis::NetworkmanagementV1beta1::AbortInfo

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



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

def abort
  @abort
end

#app_engine_versionGoogle::Apis::NetworkmanagementV1beta1::AppEngineVersionInfo

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



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

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)


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

def causes_drop
  @causes_drop
end

#cloud_functionGoogle::Apis::NetworkmanagementV1beta1::CloudFunctionInfo

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



3258
3259
3260
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3258

def cloud_function
  @cloud_function
end

#cloud_run_revisionGoogle::Apis::NetworkmanagementV1beta1::CloudRunRevisionInfo

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



3263
3264
3265
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3263

def cloud_run_revision
  @cloud_run_revision
end

#cloud_sql_instanceGoogle::Apis::NetworkmanagementV1beta1::CloudSqlInstanceInfo

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



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

def cloud_sql_instance
  @cloud_sql_instance
end

#deliverGoogle::Apis::NetworkmanagementV1beta1::DeliverInfo

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



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

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)


3278
3279
3280
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3278

def description
  @description
end

#direct_vpc_egress_connectionGoogle::Apis::NetworkmanagementV1beta1::DirectVpcEgressConnectionInfo

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



3284
3285
3286
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3284

def direct_vpc_egress_connection
  @direct_vpc_egress_connection
end

#dropGoogle::Apis::NetworkmanagementV1beta1::DropInfo

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



3289
3290
3291
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3289

def drop
  @drop
end

#endpointGoogle::Apis::NetworkmanagementV1beta1::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



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

def endpoint
  @endpoint
end

#firewallGoogle::Apis::NetworkmanagementV1beta1::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



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

def firewall
  @firewall
end

#forwardGoogle::Apis::NetworkmanagementV1beta1::ForwardInfo

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



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

def forward
  @forward
end

#forwarding_ruleGoogle::Apis::NetworkmanagementV1beta1::ForwardingRuleInfo

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



3312
3313
3314
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3312

def forwarding_rule
  @forwarding_rule
end

#gke_masterGoogle::Apis::NetworkmanagementV1beta1::GkeMasterInfo

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



3318
3319
3320
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3318

def gke_master
  @gke_master
end

#gke_network_policyGoogle::Apis::NetworkmanagementV1beta1::GkeNetworkPolicyInfo

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



3323
3324
3325
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3323

def gke_network_policy
  @gke_network_policy
end

#gke_network_policy_skippedGoogle::Apis::NetworkmanagementV1beta1::GkeNetworkPolicySkippedInfo

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



3329
3330
3331
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3329

def gke_network_policy_skipped
  @gke_network_policy_skipped
end

#gke_podGoogle::Apis::NetworkmanagementV1beta1::GkePodInfo

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



3335
3336
3337
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3335

def gke_pod
  @gke_pod
end

#google_serviceGoogle::Apis::NetworkmanagementV1beta1::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



3344
3345
3346
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3344

def google_service
  @google_service
end

#hybrid_subnetGoogle::Apis::NetworkmanagementV1beta1::HybridSubnetInfo

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



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

def hybrid_subnet
  @hybrid_subnet
end

#instanceGoogle::Apis::NetworkmanagementV1beta1::InstanceInfo

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



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

def instance
  @instance
end

#interconnect_attachmentGoogle::Apis::NetworkmanagementV1beta1::InterconnectAttachmentInfo

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



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

def interconnect_attachment
  @interconnect_attachment
end

#ip_masquerading_skippedGoogle::Apis::NetworkmanagementV1beta1::IpMasqueradingSkippedInfo

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



3365
3366
3367
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3365

def ip_masquerading_skipped
  @ip_masquerading_skipped
end

#load_balancerGoogle::Apis::NetworkmanagementV1beta1::LoadBalancerInfo

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



3370
3371
3372
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3370

def load_balancer
  @load_balancer
end

#load_balancer_backend_infoGoogle::Apis::NetworkmanagementV1beta1::LoadBalancerBackendInfo

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



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

def load_balancer_backend_info
  @load_balancer_backend_info
end

#natGoogle::Apis::NetworkmanagementV1beta1::NatInfo

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



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

def nat
  @nat
end

#networkGoogle::Apis::NetworkmanagementV1beta1::NetworkInfo

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



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

def network
  @network
end

#ngfw_packet_inspectionGoogle::Apis::NetworkmanagementV1beta1::NgfwPacketInspectionInfo

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



3391
3392
3393
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3391

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)


3396
3397
3398
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3396

def project_id
  @project_id
end

#proxy_connectionGoogle::Apis::NetworkmanagementV1beta1::ProxyConnectionInfo

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



3401
3402
3403
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3401

def proxy_connection
  @proxy_connection
end

#redis_clusterGoogle::Apis::NetworkmanagementV1beta1::RedisClusterInfo

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



3406
3407
3408
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3406

def redis_cluster
  @redis_cluster
end

#redis_instanceGoogle::Apis::NetworkmanagementV1beta1::RedisInstanceInfo

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



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

def redis_instance
  @redis_instance
end

#routeGoogle::Apis::NetworkmanagementV1beta1::RouteInfo

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



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

def route
  @route
end

#serverless_external_connectionGoogle::Apis::NetworkmanagementV1beta1::ServerlessExternalConnectionInfo

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



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

def serverless_external_connection
  @serverless_external_connection
end

#serverless_negGoogle::Apis::NetworkmanagementV1beta1::ServerlessNegInfo

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



3427
3428
3429
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3427

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)


3432
3433
3434
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3432

def state
  @state
end

#storage_bucketGoogle::Apis::NetworkmanagementV1beta1::StorageBucketInfo

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



3437
3438
3439
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3437

def storage_bucket
  @storage_bucket
end

#vpc_connectorGoogle::Apis::NetworkmanagementV1beta1::VpcConnectorInfo

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



3442
3443
3444
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3442

def vpc_connector
  @vpc_connector
end

#vpn_gatewayGoogle::Apis::NetworkmanagementV1beta1::VpnGatewayInfo

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



3447
3448
3449
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3447

def vpn_gateway
  @vpn_gateway
end

#vpn_tunnelGoogle::Apis::NetworkmanagementV1beta1::VpnTunnelInfo

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



3452
3453
3454
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3452

def vpn_tunnel
  @vpn_tunnel
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



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
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
# File 'lib/google/apis/networkmanagement_v1beta1/classes.rb', line 3459

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