Skip to content

WASM CI improvements

I looked at the definition of the wasm pipelines and it seems there are a few issues which need addressing:

  • Why are the patches to process and hsc2hs not merged into the upstream repos?
  • Why is the build environment provided by ghc-wasm-meta not provided statically in a docker image rather than fetched over the network? This introduces a large vector for failure which is not desirable on a pipeline which runs on every job. (See https://gitlab.haskell.org/ghc/ghc/-/jobs/1275577)
  • Why is the expiration of artifacts set to 1 year, when the standard for a validate pipeline is 2 weeks.
  • Why is the CI job not generated by the same standard as all other platform jobs using gen_ci.hs.
  • Why is the trigger when: always, this doesn't align with how other validate/nightly/release jobs are configured. Another strong reason why these jobs need to be generated using gen_ci.hs.

Given the highly critical nature of the validate pipelines.. I am going to move the wasm pipelines into the nightly build and mark them as allowed to fail for now. When @TerrorJack returns he can pick up the task of making the pipelines robust enough to place into the normal validate workflow.

Edited by Matthew Pickering
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information