Skip to content

OCaml Build Infrastructure

Anil Madhavapeddy edited this page May 13, 2020 · 43 revisions

This page is work in progress, by @avsm

There is a hosted machine cluster operated by OCaml Labs that runs regular health checks against the opam package repository, and also runs 'cron' jobs to keep the operational side of things running.

Users can access this information through a variety of mechanisms:

Available Machines

  • Rackspace:
  • TODO amd64
  • Packet.net:
  • TODO arm64
  • TODO amd64
  • Cambridge Computer Laboratory:
  • aello:
  • bremusa: benchmarking (tom kelly/sadiq)
  • clete: gitlab-runner (amd64, docker/shell)
  • eumache: hub.ocamllabs.io (jonludlam)
  • hipp: check.ocamllabs.io
  • laodoke: ocaml-ci (talex5/craigfe)
  • phoebe: ocaml-ci (talex5/craigfe)
  • toxis: ci.ocamllabs.io
  • grumpy:
  • dopey:
  • roo: (slow i/o. 48 core)
  • tigger: (slow i/o. 48 core)
  • uriel:
  • gabriel:
  • michael:
  • raphael:
  • simba:
  • hopi: dra27 and windows
  • cree: jupyter.ocamllabs.io (jonludlam)
  • comanche: @samoht for irmin
  • apache: fixed, unused
  • summer: developer dev machine (linux) with lots of accounts
  • autumn: magnus for irmin benchmarking
  • winter: tom kelly for benchmarking
  • spring : shakthi/damien for OCaml GC sandmark
  • TODO ppc64
  • TODO arm64

Cambridge Computer Laboratory

Packet filter

There is an edgerouter at gw.ocamllabs.io that acts as a router and packet filter for the internal machines. A quick guide to using it is via an ssh terminal is:

$ configure
[edit]
# edit firewall name CL_IN4
[edit firewall name CL_IN4]
# show
[edit firewall name CL_IN4]
# set rule 20 destination address 128.232.124.213
[edit firewall name CL_IN4]
# set rule 20 protocol tcp
[edit firewall name CL_IN4]
# set rule 20 destination port 80,443,8100
[edit firewall name CL_IN4]
# set rule 20 action accept
[edit firewall name CL_IN4]
# set rule 20 description ci.ocamllabs.io
[edit firewall name CL_IN4]
# show
<examine diff>
[edit firewall name CL_IN4]
# commit
[edit firewall name CL_IN4]
# save
Saving configuration to '/config/config.boot'...
Done
[edit]
# exit