-
Notifications
You must be signed in to change notification settings - Fork 73
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
Establish CI #57
Comments
ShareLaTeX has a 'cloud compiler' that automatically recompiles changes per commit. |
The problem here is compiling process of our constitution, since both documents contain references to each other. I have found countless solutions I would love to set-up but none of them can handle the way we have to compile the documents. If we combined them into one (which I would love and would make searching infinitely easier), you could consider this problem solved. |
I think that using TravisCI would be a good solution for this, the only complication being where the constitution is stored after being compiled. We could write a script to run on san that would allow files to be PUT if a certain key was sent with them. I'm going to contact TravisCI support and see if we can get an organization-wide educational account with the premium features. |
Just have Travis dump them somewhere on Filer and then symlink it to a directory on San over NFS. That way we don't have to wait for / trigger scripts. |
Then you have a world writable file that people frequently download and open. |
We could also just set up a cron job that runs the makefile every night or something. Doesn't need to be too fancy. |
Just have the CI commit the updated PDF? |
I don't see why we would want to store them on filer either way. There's no good reason to have it dependent on NFS. |
@sman591 I'd rather keep the binary PDF blobs out of Git in general. |
Why would the file be world writable? Also, you aren't going to want to run Travis on San (that's not the point of that box). So if you want it to be served from csh.rit.edu, you are going to need it on San. NFS is probably the most reliable way to do that. |
TravisCI works by hooking into the Git hooks that are exposed by GitHub. Upon a new pull request or regular commit TravisCI will trigger a build event where it will compile the constitution. After the constitution is compiled we need a place to put the PDFs. There's no reason why we can't just drop two PDF files directly on san in somewhere like |
Where are you running Travis though? It shouldn't be on San and if you aren't going to have some weird syncing cron job, than it makes the most sense to transfer them over NFS. We can move the implementation discussion to Bored Room, it doesn't need to be here. |
TravisCI is a hosted service, we don't run it locally. |
I was under the impression that we were going to host it locally. |
TravisCI isn't something you can host yourself unless you want to pay a lot of money. |
Can we first elaborate on what problem there is with including the binary? Our PDF's are relatively small, and while there is a consistency issue, we can trivially solve this with a commit hook for push (as opposed to a maintained server hook). Binary diffs of this size should be no problem (tm). |
@WillDignazio They cause unnecessary merge conflicts every time |
Could we just have a cron job somewhere do a (obviously this requires creating that virtualhost) |
There are github commit hooks that can inform us when to do the rebuild, but imo, it's way overkill. |
@ComputerScienceHouse/root-type-people Yo can we get that one liner in cron going? |
https://constitution.csh.rit.edu/articles.pdf Enjoy your up to date (every 12 hours [0:00 & 12:00]) constitution. |
|
Summary of issue:
We really really really should not track changes in the pdf blob.
The text was updated successfully, but these errors were encountered: