-
-
Notifications
You must be signed in to change notification settings - Fork 7
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
Setup CI infrastructure for maintanance #2
Comments
I am going to add @serban-nicusor-toptal to this repository if that is fine with you @jgabry He is going to help with setting up some of this and review CI stuff. We are debating whether to use Jenkins or Github Actions. In general, it should not be that difficult to move from one to the other as all of these are going to be R scripts and this should all be fast, outside of maybe building rstanarm-like packages. For posterior/cmdstanr and such these are all jobs that take a minute or so. I don't have a strong opinion on which of these to use, maybe use Jenkins for building packages and G.A. for the rest of the maintenance. @serban-nicusor-toptal would you be cool with that. I will upload the scripts and we can then start doing this whenever you have time. |
Sounds good to me, Jenkins can do the heavy lifting as we have very strong machines. |
So anyone with write permissions to this repository should be able to run a custom job on Jenkins. Repo: https://github.com/stan-dev/posterior Jenkins then clones that repository and runs an R script that does all the rest and then just pushes the result to this repository. Apart from the R script you did this kind of stuff a bunch of times so that should be doable I guess. This will run on Windows and Mac to build the binaries for those OS. |
Sounds good, and thanks @serban-nicusor-toptal for helping out with this! |
Hey @rok-cesnovar that sounds fairly simple, may I ask about the |
I will prepare that, should be simple but never ran it on a mac so who knows. |
To build the binary packages on Windows/Mac you need to run:
Set pkg argument to the folder where the repository is clone. This build a .zip file on Windows and a .tgz file on Mac. They are built in the parent folder. In addition to Windows/Mac binaries, this should build a source package (
The source package can be run on any machine and it should build a After you have the archives built you can push them to this repository with
This should also commit and push the changes. Otherwise you can set commit = FALSE and commit & push outside of R. |
Hey @rok-cesnovar Ran with:
https://jenkins.mc-stan.org/blue/organizations/jenkins/R-Packages/detail/R-Packages/43/pipeline Please give it a try and let me know if it's all functioning properly, thanks! |
Works great, just needs a minor change that is on me. remotes::install_deps(dependencies = TRUE, repos = c(getOption("repos"), "https://mc-stan.org/r-packages/")) That enables us to also build packages that have some dependency on this repo only. |
Did the change and tried with Looks like an R error, can you please take a look? Let me know if I need to change anything in Jenkins, thanks! |
https://github.com/stan-dev/rstanarm branch feature/survival is going to be a tough one. If we can build that branch, then we can build anything :) It seems to run out of RAM. I have to figure out if we can add any compiler flags to decrease the ram usage there. To test remotes::install_deps(dependencies = TRUE, repos = c(getOption("repos"), "https://mc-stan.org/r-packages/")) https://github.com/stan-dev/cmdstanr on master |
Hmh the errors says |
Thanks for trying that rstanarm branch. I think it needs a lot more than 18MB of RAM, so I'm not sure why it says that.
I think that's why it's not on CRAN yet. @bgoodri is it definitely the RAM issue that is preventing us from merging @sambrilleman's branch and submitting to CRAN? We really need to figure out a way for people to use that branch. It's been sitting around way too long and people are having trouble installing it from github. |
|
Yea, that fixed it at first. Gonna look into it to see why we're getting that again. |
|
Awesome, thank you! |
|
Seems to be failing on windows with the following:
Will run now through Jenkins so I can give you guys the full output. PS: While building it tops at around 10 GB RAM! <- Bad numbers, it actually hits around 3~3.5GB(edit) |
Thanks for working on this! Glad it's working on mac.
Hmm, I'm not sure. Unfortunately I'm pretty useless with Windows-specific issues. @bgoodri, @sambrilleman or @rok-cesnovar any ideas?
Wow, I bet that's why many people failed to install from GitHub. I think a lot of people still have laptops with 8GB or less. |
Thanks @serban-nicusor-toptal for this and also fixing the instances with Rtools! |
Hey guys, huge thanks for trying to find a solution to this rstanarm issue. I guess a few things I am curious about:
Beyond that I probably have very little useful input. Although I use Windows, all the stuff around compilers and their issues is quite a foreign language to me 🤦♂️ |
Just to clarify, my first numbers were wrong. I couldn't get it to work on the windows server. Locally I'm getting (master branch):
Locally I'm getting (feature/survivalbranch):
While running:
Using: |
Hey, did anyone managed to get rstanarm |
I tried a few times but was unable to. Does the master branch build? |
It doesn't for me locally, getting:
|
Thanks for trying again.
Hmm, I'm not sure what's causing this since RcppParallel is included in the dependencies for rstanarm, so it should be there. I don't have a Windows machine so I'm not much help here, sorry. I think we really need @bgoodri to chime in here. Also, @sambrilleman can you confirm that you are still able to build your feature/survival branch successfully on your windows machine? |
@serban-nicusor-toptal Can you try
|
That gives me locally
Windows 10 |
@jgabry Nah, unfortunately I am having just as much trouble as everyone else. I was even struggling to build the |
fwiw I get the same error as @serban-nicusor-toptal, i.e.
when trying to build the
|
Looks like rstanarm is not compatible with newer versions of R as it didn't work for me on 4.0.2 on windows and same reported here on mac |
I think (hope) this might be easier to get working now with rstanarm and rstan >= 2.21. At least it might work with the latest changes on the rstanarm master branch. @sambrilleman It may also work with the survival branch but that will need to get updated from master first. At least I can now get it working on Mac with R 4.0.2. It might also be ok on Windows without |
Actions that could be done automatically:
The text was updated successfully, but these errors were encountered: