Current section

Files

Jump to
step_flow lib step_flow live_workers live_worker.ex
Raw

lib/step_flow/live_workers/live_worker.ex

defmodule StepFlow.LiveWorkers.LiveWorker do
use Ecto.Schema
import Ecto.Changeset
alias StepFlow.Jobs.Job
alias StepFlow.LiveWorkers.LiveWorker
@moduledoc false
schema "step_flow_live_workers" do
field(:ips, {:array, :string}, default: [])
field(:ports, {:array, :integer}, default: [])
field(:instance_id, :string, default: "")
field(:direct_messaging_queue_name, :string)
field(:creation_date, :utc_datetime)
field(:termination_date, :utc_datetime)
belongs_to(:job, Job, foreign_key: :job_id)
timestamps()
end
@doc false
def changeset(%LiveWorker{} = live_worker, attrs) do
live_worker
|> cast(attrs, [
:ips,
:ports,
:job_id,
:instance_id,
:direct_messaging_queue_name,
:creation_date,
:termination_date
])
|> foreign_key_constraint(:job_id)
|> validate_required([:job_id, :direct_messaging_queue_name])
end
end