Packages

This package implements the full CloudAPI for managing Joyent Triton clusters

Current section

Files

Jump to
cloudapi lib role.ex
Raw

lib/role.ex

defmodule CloudAPI.Role do
@moduledoc """
This structure represents a CloudAPI Role
"""
use Ecto.Schema
import Ecto.Changeset
@primary_key {:id, Ecto.UUID, autogenerate: true}
embedded_schema do
field :name, :string
embeds_many :policies, CloudAPI.Role.Policy
embeds_many :members, CloudAPI.Role.Member
end
end
defmodule CloudAPI.Role.Policy do
@moduledoc """
This structure represents a Role Policy
"""
use Ecto.Schema
import Ecto.Changeset
@primary_key {:id, Ecto.UUID, autogenerate: true}
embedded_schema do
field :name, :string
end
end
defmodule CloudAPI.Role.Member do
@moduledoc """
This structure represents a Role Member
"""
use Ecto.Schema
import Ecto.Changeset
@primary_key {:id, Ecto.UUID, autogenerate: true}
embedded_schema do
field :type, :string
field :login, :string
field :default, :boolean, default: false
end
end