AzureBillingDashboard.List_VMs (azure_billing_dashboard v0.2.0)

The List_VMs context.

Link to this section Summary

Functions

Returns an %Ecto.Changeset{} for tracking virtual_machine changes.

Creates a virtual_machine.

Deletes a virtual_machine.

Gets a single virtual_machine.

Returns the list of virtualmachines.

Link to this section Functions

Link to this function

change_virtual_machine(virtual_machine, attrs \\ %{})

Returns an %Ecto.Changeset{} for tracking virtual_machine changes.

examples

Examples

iex> change_virtual_machine(virtual_machine)
%Ecto.Changeset{data: %VirtualMachine{}}
Link to this function

create_virtual_machine(attrs \\ %{})

Creates a virtual_machine.

examples

Examples

iex> create_virtual_machine(%{field: value})
{:ok, %VirtualMachine{}}

iex> create_virtual_machine(%{field: bad_value})
{:error, %Ecto.Changeset{}}
Link to this function

delete_virtual_machine(virtual_machine)

Deletes a virtual_machine.

examples

Examples

iex> delete_virtual_machine(virtual_machine)
{:ok, %VirtualMachine{}}

iex> delete_virtual_machine(virtual_machine)
{:error, %Ecto.Changeset{}}
Link to this function

find_and_update_virtual_machines(map \\ [])

Called by Azure Calls

Checks existence of a virtual machine by name and updates attributes

Link to this function

get_virtual_machine!(id)

Gets a single virtual_machine.

Raises Ecto.NoResultsError if the Virtual machine does not exist.

examples

Examples

iex> get_virtual_machine!(123)
%VirtualMachine{}

iex> get_virtual_machine!(456)
** (Ecto.NoResultsError)
Link to this function

list_virtualmachines()

Returns the list of virtualmachines.

  1. Calls Azure API for authentication
  2. Calls Azure API for listing virtual machines
  3. Cross-checks database and creates new rows if a VM is not present
  4. Returns a list of virtual machines.

examples

Examples

iex> list_virtualmachines()
[%VirtualMachine{}, ...]
Link to this function

update_virtual_machine(virtual_machine, attrs)

Updates a virtual_machine.

examples

Examples

iex> update_virtual_machine(virtual_machine, %{field: new_value})
{:ok, %VirtualMachine{}}

iex> update_virtual_machine(virtual_machine, %{field: bad_value})
{:error, %Ecto.Changeset{}}