edeliver v1.8.0 Edeliver.Relup.Instructions.Sleep

This upgrade instruction is intended for testing only

and just sleeps the given amount of seconds. This can be used to test instructions which suspend processes at the beginning of the upgrade before the new code is installed. Usage:

  Edeliver.Relup.Instructions.Sleep.modify_relup(config, _seconds = 30)

It prints a countown in the upgrade script which was started by the $APP/bin/$APP upgarde $RELEASE command.

Link to this section Summary

Functions

Calls the run/1 function of this module

Appends this instruction to the instructions after the "point of no return"

Waits the given amount of seconds and prints a countdown

Link to this section Functions

Link to this function

arguments(instructions, map)

arguments(
  %Edeliver.Relup.Instructions{
    changed_modules: term(),
    down_instructions: term(),
    down_version: term(),
    up_instructions: term(),
    up_version: term()
  },
  Edeliver.Relup.Config.t()
) :: term()

Callback implementation for Edeliver.Relup.RunnableInstruction.arguments/2.

Link to this function

call_this(arguments \\ [])

call_this(arguments :: [term()]) ::
  Instruction.instruction() | Instruction.instructions()

Calls the run/1 function of this module

from the relup file during hot code upgrade

Link to this function

dependencies()

dependencies() :: [instruction_module :: atom()]

Callback implementation for Edeliver.Relup.RunnableInstruction.dependencies/0.

Link to this function

insert_where()

insert_where() :: Instruction.insert_fun()

Appends this instruction to the instructions after the "point of no return"

but before any instruction which loads or unloads new code, (re-)starts or stops any running processes, or (re-)starts or stops any application or the emulator.

Link to this function

modify_relup(instructions, config)

Callback implementation for Edeliver.Relup.Instruction.modify_relup/2.

Link to this function

modify_relup(instructions, config, seconds \\ 30)

modify_relup(
  instructions :: Edeliver.Relup.Instructions.t(),
  config :: Edeliver.Relup.Config.t(),
  seconds :: integer()
) :: Edeliver.Relup.Instructions.t()
Link to this function

run(seconds)

run(seconds :: integer()) :: :ok

Waits the given amount of seconds and prints a countdown

in the upgrade script which was started by the $APP/bin/$APP upgarde $RELEASE command.