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.



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

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



3069
3070
3071
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3069

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



3074
3075
3076
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3074

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)


3079
3080
3081
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3079

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



3085
3086
3087
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3085

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



3090
3091
3092
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3090

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



3095
3096
3097
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3095

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



3100
3101
3102
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3100

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)


3105
3106
3107
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3105

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



3111
3112
3113
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3111

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



3116
3117
3118
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3116

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



3123
3124
3125
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3123

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



3129
3130
3131
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3129

def firewall
  @firewall
end

#forwardGoogle::Apis::NetworkmanagementV1::ForwardInfo

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



3134
3135
3136
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3134

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



3139
3140
3141
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3139

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



3145
3146
3147
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3145

def gke_master
  @gke_master
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



3154
3155
3156
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3154

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



3159
3160
3161
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3159

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



3164
3165
3166
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3164

def instance
  @instance
end

#interconnect_attachmentGoogle::Apis::NetworkmanagementV1::InterconnectAttachmentInfo

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



3169
3170
3171
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3169

def interconnect_attachment
  @interconnect_attachment
end

#load_balancerGoogle::Apis::NetworkmanagementV1::LoadBalancerInfo

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



3174
3175
3176
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3174

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



3179
3180
3181
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3179

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



3184
3185
3186
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3184

def nat
  @nat
end

#networkGoogle::Apis::NetworkmanagementV1::NetworkInfo

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



3189
3190
3191
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3189

def network
  @network
end

#project_idString

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

Returns:

  • (String)


3194
3195
3196
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3194

def project_id
  @project_id
end

#proxy_connectionGoogle::Apis::NetworkmanagementV1::ProxyConnectionInfo

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



3199
3200
3201
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3199

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



3204
3205
3206
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3204

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



3209
3210
3211
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3209

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



3214
3215
3216
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3214

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



3219
3220
3221
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3219

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



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

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)


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

def state
  @state
end

#storage_bucketGoogle::Apis::NetworkmanagementV1::StorageBucketInfo

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



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

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



3240
3241
3242
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3240

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



3245
3246
3247
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3245

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



3250
3251
3252
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3250

def vpn_tunnel
  @vpn_tunnel
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3257

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)
  @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)
  @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)
  @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