Merge pull request #60 from dinosaure/handshake #511
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: 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 |