-
Notifications
You must be signed in to change notification settings - Fork 469
Migrate to GitHub Actions #3992
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
If you want, I can add an action to automatically release to npm and GitHub. It's great to reduce human error by automatically publishing in the way. |
I also changed from |
@imbsky is github actions out of beta? This looks good in the right direction, but not sure if we should do such transition immediately |
Yes, GitHub Actions was recently released publicly. It's currently very stable and I can recommend it. |
There has been complains on Reason Discord about the maximum cache size of GitHub Action that doesn’t fit any typical ReasonML/Ocaml projects |
I wouldn't consider BuckleScript a "typical" OCaml project. It's also not using cache in the current CI setup: https://github.com/BuckleScript/bucklescript/blob/master/.circleci/config.yml |
@anmonteiro the current CI config in master is about 2X faster than Azure CI configured with full cache on linux (part of this investigation #3910). |
@thangngoc89 I have already mentioned that to the Actions team and they are working on improvements now. They will also improve cache save and restore times. See this thread actions/cache#6. |
Actions team has decided to increase the cache limit significantly next month. |
Finally, the cache limit was bumped. 2GB is probably enough for this project. |
hi @imbsky are you still interested in this? |
Yes |
I have worked with GitHub for several months on bumping cache limits, improving cache save and restore speed, mostly for OCaml projects. I don't think we've accomplished everything we need to do right now, but it's definitely better than it was before, and that's why so many projects have moved to GitHub Actions. |
Well, the CI for this project does the same thing as a simple Node.js project. (We aren't currently doing such a heavy processing in CI.) |
39c24e5
to
e8dfab4
Compare
I resolved the conflict. |
and I have removed the cache config for npm packages. This is because the BuckleScript uses a very small number of npm packages, and caching is slower in this case. (Caching is not zero cost. Imagine the time it takes to compress, upload, download, and decompress the cache.) |
@imbsky sorry for the dumb question, where can I read the CI logs? can you do a rebase against the master |
a1a661d
to
a4c6599
Compare
No, that's a natural question. You can see the logs here. |
Well, the test fails for some reason. What should I do?
|
Can we have some basic one (it is okay not working) but leaving circleCI config there during the transition? Also for the build matrix, in the begginning, mac os/linux and node v8 seems to be a good default. lets dig why it fails later |
a4c6599
to
66b0825
Compare
I temporarily restored the CircleCI configuration. Once we have successfully run a test on Actions, remove it.
All right, I updated actions config. |
66b0825
to
ae621b3
Compare
@imbsky cool, thanks! |
👍 |
Oh, maybe is update {
- "version": "7.2.0-dev.4",
+ "version": "7.3.0-dev.1",
} |
Hmm... Circle CI seems to be working. Disregard it. |
@imbsky are you aware that github actions provide ssh functionality? one killer feature for circleCI is that it allows you to ssh into the CI machine |
There are several actions that can do that. |
GitHub Actions can execute up to 20 workflows concurrently per repository, I've added several LTS versions of Node.js. It also includes some changes such as adding npm caches, renaming old environment variables, and deleting unused Travis CI configuration files.