setup-ocaml
setup-ocaml copied to clipboard
If you are using this Action, do comment here
Just recording existing users of it to look at how it's being used. Feel free to comment here with your own Yaml files!
Thanks for publishing this. I've started using this instead of travis for my project https://github.com/anuragsoni/routes/tree/master/.github/workflows
I'm using ubuntu to test various versions for pull-requests, then on merge i run an action to test on windows + mac + linux. I'm also using an action to run ocamlformat and automatically open a pull request (if any changes are needed) with the formatting fixes. So far the experience is really great :smile:
I did notice one issue with the windows builds when running with a pull-request
trigger. It fails with an error about --working-dir
not active. The windows action works fine with a push
trigger.
Some logs can be seen at https://gist.github.com/anuragsoni/198f8b8773c9e686b727c77e0079adba
Hi,
We're using this action as part of our CI at ocaml-flambda (you can find our yml files here). We're actually using it only for installing (and initializing) opam, as we need to create custom switches, but it works great for that.
We've just noticed that caching the .opam
directory seems to (kind of) work, and we plan to take advantage of it. If you have any insights on how this would interact with this Action, we'd love to hear it.
I'm using it, pretty much just copy-pasted your hello world example, except just compiling for ubuntu. Worked right out of the box. Thanks a million! :+1:
I already use this in some industrial projects. Great work!
Just saw this issue I've been using it for a while on all kinds of projects (mostly private). I was at your talk at ReasonML London and I was dying to try it :)
I'm using it in Luv. It saved me a lot of time, as I was looking at manually installing Cygwin in the Windows runners before I found this! That would also have required a separate job definition from the Unix jobs.
I'm using this in PingCAP.
This action helps me building an exec to upload static assets to the cloud buckets. And also saving my time to install Opam hand by hand. Very thx.
Here is the yml file.~
https://github.com/pingcap/cloud-assets-utils/blob/master/.github/workflows/test.yml
I'm using this in https://github.com/jonsterling/cooltt/blob/master/.github/workflows/ocaml.yml
- static analysis tool infer is using it now
- one of its dependencies, a custom-built clang will probably also use it once an action is set up (so clang can be built with ocaml bindings)
I'm using this in https://github.com/pl-deadlines/pl-deadlines.github.io
I've been using it for a couple weeks now: https://github.com/leviroth/ocaml-reddit-api
I've started using this with an OCaml to Erlang compiler: caramel
We've been using it for a while (@psafont set it up): https://github.com/xapi-project/xs-opam/blob/master/.github/workflows/main.yml#L43. We also have an opam cache configured.
xs-opam is a custom opam repo for the xapi project.
We're loading it for the biggest and most modified package we have in github actions as well: https://github.com/xapi-project/xen-api/blob/master/.github/workflows/main.yml
Additionally a common .env file is used to configure the ENV vars in the CI for 26 repositories, most of them using travis :(
I wanted to try out the new hotness in CI for a new library. It took a while but I even managed to make it generate the doc and auto-push it to github-pages: https://github.com/Drup/peahell/blob/master/.github/workflows/workflow.yml
I'm using the Action for my raylib bindings, it's been really helpful so far https://github.com/tjammer/raylib-ocaml/blob/master/.github/workflows/main.yml
Using it for touist! ✨
I've been working on rewriting the action. And now it can be set up OCaml enviroment on all platforms except Windows in about 50 seconds. (As you know, it used to take about 8 minutes...) Is there any tester who can try it?
@smorimoto Awesome! I'm quite interested in this change, should I use the avsm/setup-ocaml@master
to test it?
No, it's published under the actions-ml organization. But at this time, it's not clear where it will be managed, and use it knowing that some migration may be required. https://github.com/actions-ml/setup-ocaml
No, it's published under the actions-ml organization. But at this time, it's not clear where it will be managed, and use it knowing that some migration may be required. https://github.com/actions-ml/setup-ocaml
Know about it. I will try to use it when the doc is available. 😄
The API is exactly the same at this time.
https://github.com/actions-ml/setup-ocaml/blob/master/action.yml
So you can use it by doing the following:
- name: Use OCaml ${{ matrix.ocaml-version }}
uses: actions-ml/setup-ocaml@master
with:
ocaml-version: ${{ matrix.ocaml-version }}
The API is exactly the same at this time.
https://github.com/actions-ml/setup-ocaml/blob/master/action.yml
So you can use it by doing the following:
- name: Use OCaml ${{ matrix.ocaml-version }} uses: actions-ml/setup-ocaml@master with: ocaml-version: ${{ matrix.ocaml-version }}
To https://github.com/actions-ml/setup-ocaml/discussions/2.
All of the efforts and useful exploration results at actions-ml are being pushed back to the upstream: avsm/setup-ocaml#66
I just released the first v2 alpha release. https://discuss.ocaml.org/t/ann-set-up-ocaml-2-0-0-alpha/7895
Thank you for your work @smorimoto ❤️
@giltho Thank you for your kind comment :)
I'm using this in ocaml-aws along with some private OCaml projects. Works really nicely!