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.



4130
4131
4132
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4130

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



3908
3909
3910
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3908

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



3913
3914
3915
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3913

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)


3918
3919
3920
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3918

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



3924
3925
3926
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3924

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



3929
3930
3931
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3929

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



3934
3935
3936
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3934

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



3939
3940
3941
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3939

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



3944
3945
3946
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3944

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)


3949
3950
3951
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3949

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



3955
3956
3957
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3955

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



3960
3961
3962
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3960

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



3965
3966
3967
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3965

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



3972
3973
3974
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3972

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



3978
3979
3980
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3978

def firewall
  @firewall
end

#forwardGoogle::Apis::NetworkmanagementV1::ForwardInfo

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



3983
3984
3985
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3983

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



3988
3989
3990
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3988

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



3994
3995
3996
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3994

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



3999
4000
4001
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 3999

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



4005
4006
4007
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4005

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



4011
4012
4013
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4011

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



4020
4021
4022
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4020

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



4025
4026
4027
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4025

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



4030
4031
4032
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4030

def instance
  @instance
end

#interconnect_attachmentGoogle::Apis::NetworkmanagementV1::InterconnectAttachmentInfo

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



4035
4036
4037
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4035

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



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

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



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

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



4051
4052
4053
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4051

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



4056
4057
4058
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4056

def nat
  @nat
end

#networkGoogle::Apis::NetworkmanagementV1::NetworkInfo

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



4061
4062
4063
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4061

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



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

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)


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

def project_id
  @project_id
end

#proxy_connectionGoogle::Apis::NetworkmanagementV1::ProxyConnectionInfo

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



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

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



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

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



4087
4088
4089
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4087

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



4092
4093
4094
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4092

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



4097
4098
4099
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4097

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



4103
4104
4105
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4103

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)


4108
4109
4110
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4108

def state
  @state
end

#storage_bucketGoogle::Apis::NetworkmanagementV1::StorageBucketInfo

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



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

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



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

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



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

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



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

def vpn_tunnel
  @vpn_tunnel
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



4135
4136
4137
4138
4139
4140
4141
4142
4143
4144
4145
4146
4147
4148
4149
4150
4151
4152
4153
4154
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4165
4166
4167
4168
4169
4170
4171
4172
4173
4174
4175
4176
4177
4178
# File 'lib/google/apis/networkmanagement_v1/classes.rb', line 4135

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