-
Notifications
You must be signed in to change notification settings - Fork 19
/
Copy pathbuild.mli
41 lines (33 loc) · 1.3 KB
/
build.mli
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
type org
val timeout : int64
(** Maximum build time *)
val password_path : string
val push_repo : string
(** Docker hub tag for the repo we push to *)
val get_auth : unit -> (string * string) option
(** The username and password for logging in, if found *)
val org :
?app:Current_github.App.t ->
account:string -> int -> org
(** [org ~app account installation] look up a GitHub organisation by ID.
[installation] is ignored if [app] is [None].
@param app is used to set the status, if present *)
val account : org -> string
val api : org -> Current_github.Api.t option
module Make(T : S.T) : sig
val repo :
?channel:Current_slack.channel ->
web_ui:(string -> Uri.t) ->
org:org ->
?additional_build_args:string list Current.t ->
name:string ->
(T.build_info * (string * T.deploy_info) list) list ->
unit Current.t
(** [repo ~channel ~web_ui ~org ~name builds] is an OCurrent pipeline to
handle all builds and deployments under [org/name]. Each build
is a [(build_info, [branch, deploy_info])] pair.
It builds every branch and PR using [T.build], and deploys the
given branches using [T.deploy], sending notifications to [channel].
If [org] does not have an app then (for local testing) it only builds the deployment branches.
*)
end