Skip to content

Workflow file for this run

name: Cosmopolitan production
on: [push, pull_request]
jobs:
test:
strategy:
matrix:
operating-system: [ubuntu-latest]
ocaml-version: ["4.14.1"]
runs-on: ${{ matrix.operating-system }}
steps:
- uses: actions/checkout@v2
- uses: ocaml/setup-ocaml@v2
with:
ocaml-compiler: ${{ matrix.ocaml-version }}
# See jart/cosmopolitan#3
- name: Fix binfmt and Cosmopolitan
run: sudo sh -c "echo ':APE:M::MZqFpD::/bin/sh:' >/proc/sys/fs/binfmt_misc/register"
- name: Pin & Install workflows
run: |
opam pin add -y https://github.com/dinosaure/esperanto.git
opam install ocamlfind opam-monorepo
opam repo add upstream git+https://github.com/ocaml/opam-repository.git
opam repo add dune-universe git+https://github.com/dune-universe/opam-overlays.git
opam repo add mirage-universe git+https://github.com/dune-universe/mirage-opam-overlays.git
- name: Compilation
run: |
env OPAMVAR_monorepo='opam-monorepo' opam monorepo lock --require-cross-compile --build-only --ocaml-version ${{ matrix.ocaml-version }} com
env OPAMVAR_monorepo='opam-monorepo' opam monorepo pull
opam exec -- dune build -x x86_64_esperanto -p bob bin/bob.exe
opam exec -- dune build -x aarch64_esperanto -p bob bin/bob.exe
opam exec -- ./link.sh
- name: Upload Artifact
uses: actions/upload-artifact@v3
with:
name: bob.com
path: bob.com