View Source Horizon.Ops.BSD.Config (horizon v0.2.5)

Horizon.Ops configuration.

Summary

Functions

Merge default options with release options.

Merge default options into release.options and set release.path and release.version_path.

Merge default options into release.options and set release.path and release.version_path.

Functions

merge_default_options(opts, name)

@spec merge_default_options(
  keyword(),
  String.t() | atom()
) :: keyword()

Merge default options with release options.

Examples

  iex> merge_default_options([], "foo")
  [
    path: "/usr/local/foo",
    bin_path: "bin",
    build_path: "/usr/local/opt/foo/build",
    releases_path: ".releases",
    build_host_ssh: "USER@HOSTUNKNOWN",
  ]

merge_defaults(releases)

@spec merge_defaults(keyword()) :: keyword()

Merge default options into release.options and set release.path and release.version_path.

Examples

iex> releases = [my_app: [path: "/usr/apps/my_app"]]
iex> merge_defaults(releases)
[
  my_app: [
    bin_path: "bin",
    build_path: "/usr/local/opt/my_app/build",
    releases_path: ".releases",
    build_host_ssh: "USER@HOSTUNKNOWN",
    path: "/usr/apps/my_app"
  ]
]
iex> merge_defaults(my_app: [])
[
  my_app: [
    path: "/usr/local/my_app",
    bin_path: "bin",
    build_path: "/usr/local/opt/my_app/build",
    releases_path: ".releases",
    build_host_ssh: "USER@HOSTUNKNOWN",
  ]
]

merge_release(release)

@spec merge_release(Mix.Release.t()) :: Mix.Release.t()

Merge default options into release.options and set release.path and release.version_path.