Object/Class

nelson

Manifest

Related Docs: class Manifest | package nelson

Permalink

object Manifest extends Serializable

Source
Manifest.scala
Linear Supertypes
Serializable, Serializable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Manifest
  2. Serializable
  3. Serializable
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. final case class Action(config: ActionConfig, run: Kleisli[IO, (NelsonConfig, ActionConfig), Unit]) extends Product with Serializable

    Permalink
  2. final case class ActionConfig(datacenter: Datacenter, namespace: Namespace, plan: Plan, hash: String, notifications: NotificationSubscriptions) extends Product with Serializable

    Permalink
  3. final case class AlertOptOut(ref: String) extends Product with Serializable

    Permalink
  4. final case class Alerting(prometheus: PrometheusConfig) extends Product with Serializable

    Permalink
  5. final case class BackendDestination(name: UnitName, portReference: String) extends Product with Serializable

    Permalink
  6. sealed trait Constraint extends AnyRef

    Permalink
  7. final case class Deployable(name: String, version: Version, output: Output) extends Product with Serializable

    Permalink
  8. sealed trait DeploymentTarget extends AnyRef

    Permalink
  9. final case class Environment(cpu: ResourceSpec = ResourceSpec.unspecified, memory: ResourceSpec = ResourceSpec.unspecified, desiredInstances: Option[Int] = None, retries: Option[Int] = None, constraints: List[Constraint] = Nil, alertOptOuts: List[AlertOptOut] = Nil, bindings: List[EnvironmentVariable] = Nil, healthChecks: List[HealthCheck] = Nil, resources: Map[String, URI] = Map.empty, schedule: Option[Schedule] = None, policy: Option[ExpirationPolicy] = None, trafficShift: Option[TrafficShift] = None, volumes: List[Volume] = List.empty, workflow: Workflow[Unit] = Magnetar, blueprint: Option[Either[BlueprintRef, Blueprint]] = None) extends Product with Serializable

    Permalink
  10. final case class EnvironmentVariable(name: String, value: String) extends Product with Serializable

    Permalink
  11. final case class HealthCheck(name: String, portRef: String, protocol: String, path: Option[String], interval: FiniteDuration, timeout: FiniteDuration) extends Product with Serializable

    Permalink
  12. final case class Loadbalancer(name: String, routes: Vector[Route], majorVersion: Option[MajorVersion] = None) extends Product with Serializable

    Permalink
  13. final case class Namespace(name: NamespaceName, units: Set[(UnitRef, Set[PlanRef])], loadbalancers: Set[(LoadbalancerRef, Option[PlanRef])]) extends Product with Serializable

    Permalink
  14. final case class Plan(name: String, environment: Environment) extends Product with Serializable

    Permalink
  15. final case class Port(ref: String, port: Int, protocol: String) extends Product with Serializable

    Permalink
  16. final case class Ports(default: Port, others: List[Port]) extends Product with Serializable

    Permalink
  17. final case class PrometheusAlert(alert: String, expression: String) extends Product with Serializable

    Permalink
  18. final case class PrometheusConfig(alerts: List[PrometheusAlert], rules: List[PrometheusRule]) extends Product with Serializable

    Permalink
  19. final case class PrometheusRule(rule: String, expression: String) extends Product with Serializable

    Permalink
  20. final case class Resource(name: String, description: Option[String] = None) extends Product with Serializable

    Permalink
  21. sealed abstract class ResourceSpec extends Product with Serializable

    Permalink
  22. final case class Route(port: Port, destination: BackendDestination) extends Product with Serializable

    Permalink

    The concept over here is that a loadbalancer has routable units associated to it, which form a superset of the "dependency" concept.

    The concept over here is that a loadbalancer has routable units associated to it, which form a superset of the "dependency" concept. An example of a loadbalanced dependecy would be:

    Route -> BackendDestination("foo", "default")

    This makes *nelson* resolve the most recent stack for foo and declares that the port exposed by foo unit with the reference default will be the destination for traffic from this proxy config.

    The Route also defines a port which is exposed externally on the loadbalancer

  23. final case class TrafficShift(policy: TrafficShiftPolicy, duration: FiniteDuration) extends Product with Serializable

    Permalink
  24. final case class UnitDef(name: String, description: String, dependencies: Map[String, FeatureVersion], resources: Set[Resource], alerting: Alerting, ports: Option[Ports], deployable: Option[Deployable], meta: Set[String]) extends Product with Serializable

    Permalink
  25. trait Versioned extends AnyRef

    Permalink
  26. final case class Volume(name: String, mountPath: Path, size: Int) extends Product with Serializable

    Permalink

    An empty scratch volume to be mounted onto a container

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. object Alerting extends Serializable

    Permalink
  5. object Constraint

    Permalink
  6. object Deployable extends Serializable

    Permalink
  7. object DeploymentTarget

    Permalink
  8. object Plan extends Serializable

    Permalink
  9. object Port extends Serializable

    Permalink
  10. object PrometheusConfig extends Serializable

    Permalink
  11. object ResourceSpec extends Serializable

    Permalink
  12. val Versioned: TagOf[Versioned]

    Permalink
  13. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  14. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  15. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  16. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  17. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  18. def foldLoadbalancers[A](m: Manifest, dcs: Seq[Datacenter], f: (Datacenter, Namespace, Plan, Loadbalancer, A) ⇒ A, a: A): A

    Permalink
  19. def foldNamespaces[A](m: Manifest, dcs: Seq[Datacenter], f: (Datacenter, Namespace, A) ⇒ A, a: A): A

    Permalink
  20. def foldUnits[A](m: Manifest, dcs: Seq[Datacenter], f: (Datacenter, Namespace, Plan, UnitDef, A) ⇒ A, a: A): A

    Permalink

    fold over all the datacenters, namespaces, (unit, plans) combinations specified by the Manifest.

  21. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  22. def getExpirationPolicy(unit: UnitDef, plan: Plan): Option[ExpirationPolicy]

    Permalink
  23. def getSchedule(unit: UnitDef, plan: Plan): Option[Schedule]

    Permalink
  24. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  25. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  26. def isPeriodic(unit: UnitDef, plan: Plan): Boolean

    Permalink
  27. def loadbalancerActions(m: @@[Manifest, Versioned], dcs: Seq[Datacenter], f: (Datacenter, Namespace, Plan, Loadbalancer) ⇒ Boolean): List[Action]

    Permalink
  28. def loadbalancers(m: Manifest, dcs: Seq[Datacenter]): List[(Datacenter, Namespace, Plan, Loadbalancer)]

    Permalink
  29. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  30. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  31. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  32. def saturateManifest(m: Manifest)(e: Deployment): IO[@@[Manifest, Versioned]]

    Permalink
  33. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  34. def toAction[A](a: A, dc: Datacenter, ns: Namespace, p: Plan, n: NotificationSubscriptions)(implicit A: Actionable[A]): Action

    Permalink
  35. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  36. def unitActions(m: @@[Manifest, Versioned], dcs: Seq[Datacenter], f: (Datacenter, Namespace, Plan, UnitDef) ⇒ Boolean): List[Action]

    Permalink
  37. def units(m: Manifest, dcs: Seq[Datacenter]): List[(Datacenter, Namespace, Plan, UnitDef)]

    Permalink
  38. def verifyDeployable(m: Manifest, dcs: Seq[Datacenter], storage: ~>[StoreOp, IO]): IO[ValidatedNel[NelsonError, Unit]]

    Permalink
  39. def versionedUnits(m: @@[Manifest, Versioned]): List[@@[UnitDef, Versioned]]

    Permalink
  40. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  41. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  42. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Serializable

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped