# Copyright 2017 Google Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # NOTE: This class is auto generated by the swagger code generator program. # https://github.com/swagger-api/swagger-codegen.git # Do not edit the class manually. defmodule GoogleApi.Compute.V1.Model.InstanceGroup do @moduledoc """ InstanceGroups (== resource_for beta.instanceGroups ==) (== resource_for v1.instanceGroups ==) (== resource_for beta.regionInstanceGroups ==) (== resource_for v1.regionInstanceGroups ==) ## Attributes - creationTimestamp (String.t): [Output Only] The creation timestamp for this instance group in RFC3339 text format. Defaults to: `null`. - description (String.t): An optional description of this resource. Provide this property when you create the resource. Defaults to: `null`. - fingerprint (binary()): [Output Only] The fingerprint of the named ports. The system uses this fingerprint to detect conflicts when multiple users change the named ports concurrently. Defaults to: `null`. - id (String.t): [Output Only] A unique identifier for this instance group, generated by the server. Defaults to: `null`. - kind (String.t): [Output Only] The resource type, which is always compute#instanceGroup for instance groups. Defaults to: `null`. - name (String.t): The name of the instance group. The name must be 1-63 characters long, and comply with RFC1035. Defaults to: `null`. - namedPorts ([NamedPort]): Assigns a name to a port number. For example: {name: \"http\", port: 80} This allows the system to reference ports by the assigned name instead of a port number. Named ports can also contain multiple ports. For example: [{name: \"http\", port: 80},{name: \"http\", port: 8080}] Named ports apply to all instances in this instance group. Defaults to: `null`. - network (String.t): The URL of the network to which all instances in the instance group belong. Defaults to: `null`. - region (String.t): [Output Only] The URL of the region where the instance group is located (for regional resources). Defaults to: `null`. - selfLink (String.t): [Output Only] The URL for this instance group. The server generates this URL. Defaults to: `null`. - size (integer()): [Output Only] The total number of instances in the instance group. Defaults to: `null`. - subnetwork (String.t): [Output Only] The URL of the subnetwork to which all instances in the instance group belong. Defaults to: `null`. - zone (String.t): [Output Only] The URL of the zone where the instance group is located (for zonal resources). Defaults to: `null`. """ use GoogleApi.Gax.ModelBase @type t :: %__MODULE__{ :creationTimestamp => any(), :description => any(), :fingerprint => any(), :id => any(), :kind => any(), :name => any(), :namedPorts => list(GoogleApi.Compute.V1.Model.NamedPort.t()), :network => any(), :region => any(), :selfLink => any(), :size => any(), :subnetwork => any(), :zone => any() } field(:creationTimestamp) field(:description) field(:fingerprint) field(:id) field(:kind) field(:name) field(:namedPorts, as: GoogleApi.Compute.V1.Model.NamedPort, type: :list) field(:network) field(:region) field(:selfLink) field(:size) field(:subnetwork) field(:zone) end defimpl Poison.Decoder, for: GoogleApi.Compute.V1.Model.InstanceGroup do def decode(value, options) do GoogleApi.Compute.V1.Model.InstanceGroup.decode(value, options) end end defimpl Poison.Encoder, for: GoogleApi.Compute.V1.Model.InstanceGroup do def encode(value, options) do GoogleApi.Gax.ModelBase.encode(value, options) end end