• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

MinaProtocol / mina / 2863

05 Nov 2024 06:20PM UTC coverage: 30.754% (-16.6%) from 47.311%
2863

push

buildkite

web-flow
Merge pull request #16296 from MinaProtocol/dkijania/more_multi_jobs

more multi jobs in CI

20276 of 65930 relevant lines covered (30.75%)

8631.7 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

46.15
/src/lib/cache_dir/native/cache_dir.ml
1
open Core
2
open Async
3

4
let autogen_path = Filename.temp_dir_name ^/ "coda_cache_dir"
10✔
5

6
let s3_install_path = "/tmp/s3_cache_dir"
7

8
let s3_keys_bucket_prefix =
9
  Option.value
10✔
10
    (Sys.getenv "MINA_LEDGER_S3_BUCKET")
10✔
11
    ~default:"https://s3-us-west-2.amazonaws.com/snark-keys-ro.o1test.net"
12

13
let manual_install_path = "/var/lib/coda"
14

15
let brew_install_path =
16
  match
17
    let p = Core.Unix.open_process_in "brew --prefix 2>/dev/null" in
18
    let r = In_channel.input_lines p in
10✔
19
    (r, Core.Unix.close_process_in p)
10✔
20
  with
21
  | brew :: _, Ok () ->
×
22
      brew ^ "/var/coda"
23
  | _ ->
10✔
24
      "/usr/local/var/coda"
25

26
let cache =
27
  let dir d w = Key_cache.Spec.On_disk { directory = d; should_write = w } in
40✔
28
  [ dir manual_install_path false
10✔
29
  ; dir brew_install_path false
10✔
30
  ; dir s3_install_path false
10✔
31
  ; dir autogen_path true
10✔
32
  ; Key_cache.Spec.S3
33
      { bucket_prefix = s3_keys_bucket_prefix; install_path = s3_install_path }
34
  ]
35

36
let env_path =
37
  match Sys.getenv "MINA_KEYS_PATH" with
38
  | Some path ->
×
39
      path
40
  | None ->
10✔
41
      manual_install_path
42

43
let possible_paths base =
44
  List.map
×
45
    [ env_path
46
    ; brew_install_path
47
    ; s3_install_path
48
    ; autogen_path
49
    ; manual_install_path
50
    ] ~f:(fun d -> d ^/ base)
×
51

52
let load_from_s3 s3_bucket_prefix s3_install_path ~logger =
53
  let%bind () = Unix.mkdir ~p:() (Filename.dirname s3_install_path) in
×
54
  Deferred.map ~f:Result.join
×
55
  @@ Monitor.try_with ~here:[%here] (fun () ->
×
56
         let each_uri (uri_string, file_path) =
×
57
           let open Deferred.Let_syntax in
×
58
           [%log trace] "Downloading file from S3"
×
59
             ~metadata:
60
               [ ("url", `String uri_string)
61
               ; ("local_file_path", `String file_path)
62
               ] ;
63
           let%map _result =
64
             Process.run_exn ~prog:"curl"
×
65
               ~args:
66
                 [ "--fail"
67
                 ; "--silent"
68
                 ; "--show-error"
69
                 ; "-o"
70
                 ; file_path
71
                 ; uri_string
72
                 ]
73
               ()
74
           in
75
           [%log trace] "Download finished"
×
76
             ~metadata:
77
               [ ("url", `String uri_string)
78
               ; ("local_file_path", `String file_path)
79
               ] ;
80
           Result.return ()
×
81
         in
82
         each_uri (s3_bucket_prefix, s3_install_path) )
83
  |> Deferred.Result.map_error ~f:Error.of_exn
×
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc