Packages
google_api_compute
0.41.0
0.71.0
0.70.0
0.69.0
0.68.0
0.67.0
0.66.0
0.65.0
0.64.1
0.64.0
0.63.0
0.62.0
0.61.0
0.60.0
0.59.0
0.58.0
0.57.0
0.56.2
0.56.1
0.56.0
0.55.0
0.54.0
0.53.0
0.52.0
0.51.0
0.50.0
0.49.0
0.48.0
0.47.0
0.46.0
0.45.0
0.44.0
0.43.0
0.42.0
0.41.0
0.40.2
0.40.1
0.40.0
0.39.1
0.39.0
0.38.0
0.37.0
0.36.0
0.35.0
0.34.0
0.33.0
0.32.0
0.31.0
0.30.0
0.29.0
0.28.0
0.27.0
0.26.1
0.26.0
0.25.0
0.24.0
0.23.1
0.23.0
0.22.0
0.21.0
0.20.0
0.19.0
0.18.0
0.17.0
0.16.0
0.15.0
0.14.0
0.13.0
0.12.0
0.11.0
0.10.0
0.9.0
0.7.0
0.6.0
0.4.0
0.3.0
0.2.0
0.1.0
0.0.1
Compute Engine API client library. Creates and runs virtual machines on Google Cloud Platform.
Current section
Files
Jump to
Current section
Files
lib/google_api/compute/v1/model/resource_policy.ex
# Copyright 2019 Google LLC
#
# 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 file is auto generated by the elixir code generator program.
# Do not edit this file manually.
defmodule GoogleApi.Compute.V1.Model.ResourcePolicy do
@moduledoc """
Represents a Resource Policy resource. You can use resource policies to schedule actions for some Compute Engine resources. For example, you can use them to schedule persistent disk snapshots.
## Attributes
* `creationTimestamp` (*type:* `String.t`, *default:* `nil`) - [Output Only] Creation timestamp in RFC3339 text format.
* `description` (*type:* `String.t`, *default:* `nil`) -
* `groupPlacementPolicy` (*type:* `GoogleApi.Compute.V1.Model.ResourcePolicyGroupPlacementPolicy.t`, *default:* `nil`) - Resource policy for instances for placement configuration.
* `id` (*type:* `String.t`, *default:* `nil`) - [Output Only] The unique identifier for the resource. This identifier is defined by the server.
* `instanceSchedulePolicy` (*type:* `GoogleApi.Compute.V1.Model.ResourcePolicyInstanceSchedulePolicy.t`, *default:* `nil`) - Resource policy for scheduling instance operations.
* `kind` (*type:* `String.t`, *default:* `compute#resourcePolicy`) - [Output Only] Type of the resource. Always compute#resource_policies for resource policies.
* `name` (*type:* `String.t`, *default:* `nil`) - The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
* `region` (*type:* `String.t`, *default:* `nil`) -
* `resourceStatus` (*type:* `GoogleApi.Compute.V1.Model.ResourcePolicyResourceStatus.t`, *default:* `nil`) - [Output Only] The system status of the resource policy.
* `selfLink` (*type:* `String.t`, *default:* `nil`) - [Output Only] Server-defined fully-qualified URL for this resource.
* `snapshotSchedulePolicy` (*type:* `GoogleApi.Compute.V1.Model.ResourcePolicySnapshotSchedulePolicy.t`, *default:* `nil`) - Resource policy for persistent disks for creating snapshots.
* `status` (*type:* `String.t`, *default:* `nil`) - [Output Only] The status of resource policy creation.
"""
use GoogleApi.Gax.ModelBase
@type t :: %__MODULE__{
:creationTimestamp => String.t() | nil,
:description => String.t() | nil,
:groupPlacementPolicy =>
GoogleApi.Compute.V1.Model.ResourcePolicyGroupPlacementPolicy.t() | nil,
:id => String.t() | nil,
:instanceSchedulePolicy =>
GoogleApi.Compute.V1.Model.ResourcePolicyInstanceSchedulePolicy.t() | nil,
:kind => String.t() | nil,
:name => String.t() | nil,
:region => String.t() | nil,
:resourceStatus => GoogleApi.Compute.V1.Model.ResourcePolicyResourceStatus.t() | nil,
:selfLink => String.t() | nil,
:snapshotSchedulePolicy =>
GoogleApi.Compute.V1.Model.ResourcePolicySnapshotSchedulePolicy.t() | nil,
:status => String.t() | nil
}
field(:creationTimestamp)
field(:description)
field(:groupPlacementPolicy, as: GoogleApi.Compute.V1.Model.ResourcePolicyGroupPlacementPolicy)
field(:id)
field(:instanceSchedulePolicy,
as: GoogleApi.Compute.V1.Model.ResourcePolicyInstanceSchedulePolicy
)
field(:kind)
field(:name)
field(:region)
field(:resourceStatus, as: GoogleApi.Compute.V1.Model.ResourcePolicyResourceStatus)
field(:selfLink)
field(:snapshotSchedulePolicy,
as: GoogleApi.Compute.V1.Model.ResourcePolicySnapshotSchedulePolicy
)
field(:status)
end
defimpl Poison.Decoder, for: GoogleApi.Compute.V1.Model.ResourcePolicy do
def decode(value, options) do
GoogleApi.Compute.V1.Model.ResourcePolicy.decode(value, options)
end
end
defimpl Poison.Encoder, for: GoogleApi.Compute.V1.Model.ResourcePolicy do
def encode(value, options) do
GoogleApi.Gax.ModelBase.encode(value, options)
end
end