package ocluster-worker

  1. Overview
  2. Docs

Module Cluster_workerSource

Sourcetype job_spec = [
  1. | `Docker of [ `Contents of string | `Path of string ] * Cluster_api.Docker.Spec.options
  2. | `Obuilder of [ `Contents of string ]
  3. | `Custom of Cluster_api.Custom.recv
]
Sourcemodule Obuilder_config : sig ... end
Sourcetype build = switch:Lwt_switch.t -> log:Log_data.t -> src:string -> secrets:(string * string) list -> job_spec -> (string, [ `Cancelled | `Msg of string ]) Lwt_result.t
Sourceval default_build : ?obuilder:Cluster_worker__.Obuilder_build.t -> build

The default build that is used if no build argument is given to run.

Sourceval run : ?switch:Lwt_switch.t -> ?build:build -> ?allow_push:string list -> healthcheck_period:float -> ?prune_threshold:float -> ?docker_max_df_size:float -> ?obuilder_prune_threshold:float -> ?obuilder:Obuilder_config.t -> ?additional_metrics:(string * Uri.t) list -> update:(unit -> (unit -> unit Lwt.t) Lwt.t) -> capacity:int -> name:string -> state_dir:string -> Cluster_api.Raw.Client.Registration.t Capnp_rpc_lwt.Sturdy_ref.t -> unit Lwt.t

run ~capacity ~name ~state_dir registry runs a builder that connects to registry and runs up to capacity jobs at once. The builder registers using the unique ID name.

  • parameter switch

    Turning this off causes the builder to exit (for unit-tests)

  • parameter build

    Used to override the default build action (for unit-tests or custom job specifications)

  • parameter allow_push

    Docker repositories to which results can be pushed

  • parameter update

    Function to run on "selfUpdate" requests. It should do any preparation (such as downloading new images), then return a function to do the actual update. This is so that the first part can run while the node finishes its remaining jobs. The second part is called once all jobs are finished. If the second function returns, the process will exit.

  • parameter state_dir

    A persistent directory for Git caches, etc.

  • parameter prune_threshold

    Stop and run "docker system prune -af" if free-space is less than this percentage (0 to 100).

  • parameter obuilder_prune_threshold

    The threshold for OBuilder to prune the store of cached build steps.

  • parameter additional_metrics

    A list of additional prometheus endpoints with a descriptive name to collect.

Sourcemodule Process : sig ... end
Sourcemodule Log_data : sig ... end