Test the new version of Cosmopolitan #558
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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 }} | |
opam-disable-sandboxing: true | |
# 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 install ocamlfind opam-monorepo x86_64-esperanto aarch64-esperanto | |
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: Pin & Install esperanto | |
run: | | |
opam pin add conf-cosmopolitan.dev git+https://github.com/dinosaure/esperanto.git#621739518bc6fc99052c94825e8fb43a417c12cf | |
opam pin add esperanto-cosmopolitan git+https://github.com/dinosaure/esperanto.git#621739518bc6fc99052c94825e8fb43a417c12cf | |
opam pin add aarch64-esperanto git+https://github.com/dinosaure/esperanto.git#621739518bc6fc99052c94825e8fb43a417c12cf | |
opam pin add x86_64-esperanto git+https://github.com/dinosaure/esperanto.git#621739518bc6fc99052c94825e8fb43a417c12cf | |
- 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 | |
./link.sh | |
- name: Upload Artifact | |
uses: actions/upload-artifact@v3 | |
with: | |
name: bob.com | |
path: bob.com |