HostKit.Naming (host_kit v0.1.0-beta.4)

Copy Markdown View Source

Shared naming and path/identity normalization helpers.

Summary

Types

name_part()

@type name_part() :: atom() | String.t() | integer()

Functions

capability(name)

@spec capability(atom() | String.t()) :: atom() | String.t()

elixir_release(name)

@spec elixir_release(name_part()) :: String.t()

identity_path(value)

@spec identity_path(name_part()) :: String.t()

identity_segment(value)

@spec identity_segment(name_part()) :: String.t()

ingress_route(name, host, index)

@spec ingress_route(name_part(), String.t(), pos_integer()) :: String.t()

path_segment(value)

@spec path_segment(name_part()) :: String.t()

prefixed(prefix, identity)

@spec prefixed(name_part(), name_part()) :: String.t()

readiness(namespace, name)

@spec readiness([name_part()] | name_part(), [name_part()] | name_part()) ::
  String.t()

resource(parts)

@spec resource([name_part()]) :: String.t()

route_suffix(host)

@spec route_suffix(String.t()) :: String.t()

service_user(identity)

@spec service_user(name_part()) :: String.t()

systemd_unit(identity, suffix \\ ".service")

@spec systemd_unit(name_part(), name_part()) :: String.t()

workspace_identity(owner, workspace_path, service_path)

@spec workspace_identity(name_part(), name_part(), name_part()) :: String.t()

workspace_path(owner, workspace_path, service_path)

@spec workspace_path(name_part(), name_part(), name_part()) :: String.t()