Skip to content

opam.ocaml.org

mtelvers edited this page Aug 16, 2022 · 10 revisions

URL: https://opam.ocaml.org
Maintainers: Louis Gesbert, Thomas Gazagnaire, Anil Madhavapeddy, Mark Elvers, David Allsopp

Website and server infrastructure for OPAM, the OCaml Package Manager.

This domain serves several purposes:

  1. The public site for the OPAM repository
  2. The URL which the OPAM package manager connects to
  3. The central point for the continuing OCaml Platform efforts

OPAM itself is a source-base package manager for OCaml. It supports multiple simultaneous compiler installations, flexible package constraints, and a Git-friendly development workflow.

Machines

Current Hosting (physical)

The "official" meta-data repository is currently hosted at https://opam.ocaml.org/.

opam.ocaml.org is a CNAME for opam-2.ocaml.org. opam-2.ocaml.org is at 54.146.41.74.


New Version

Replacement for existing opam.ocaml.org infrastructure.

The new version uses the same opam2web tool to generate a website from an opam repository, along with a automated build and deployment pipeline written in OCaml, and based off docker images published under ocurrent/opam.ocaml.org on docker hub. The pipeline is available at deploy.ci.ocaml.org under opam2web.

URL: https://opam-3.ocaml.org && https://opam-3.ocamllabs.io

Maintainers: Tim McGilchrist, Mark Elvers

Website and server infrastructure for OPAM, the OCaml Package Manager.

This domain serves several purposes:

  1. The public site for the OPAM repository
  2. The URL which the OPAM package manager connects to
  3. The central point for the continuing OCaml Platform efforts

OPAM itself is a source-base package manager for OCaml. It supports multiple simultaneous compiler installations, flexible package constraints, and a Git-friendly development workflow.

Deployments

The pipeline currently deploys both to a host running Docker and to AWS' ECS Fargate service.

Current Hosting (physical)

The current production is running on a physical ARM64 machine in AWS, accessible via opam-3.ocaml.org at 54.224.129.120.

A staging version is built on the same machine using CNAME staging.opam.ocaml.org. See infrastructure wiki for the details.

AWS ECS Fargate

ECS Fargate allows Docker containers to be deployed directly to AWS without any need to manage the host machines or load balancer. Our deployment creates two instances of the Docker container and a load balancer for both the live and the staging site. This implementation is available via https://opam-3.ocamllabs.io and https://opam-3-staging.ocamllabs.io.

A step-by-step deployment is given on the Fargate setup page