Giter Club home page Giter Club logo

Comments (22)

liam-middlebrook avatar liam-middlebrook commented on June 25, 2024 2

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.

from constitution.

cgonyeo avatar cgonyeo commented on June 25, 2024 2

Could we just have a cron job somewhere do a git pull && make && rsync *.pdf san.csh.rit.edu:/var/www/priv/constitution/ every midnight, and just not include the PDF on github?

(obviously this requires creating that virtualhost)

from constitution.

harlanhaskins avatar harlanhaskins commented on June 25, 2024

ShareLaTeX has a 'cloud compiler' that automatically recompiles changes per commit.

from constitution.

mbillow avatar mbillow commented on June 25, 2024

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.

from constitution.

mbillow avatar mbillow commented on June 25, 2024

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.

from constitution.

gambogi avatar gambogi commented on June 25, 2024

Then you have a world writable file that people frequently download and open.

from constitution.

gambogi avatar gambogi commented on June 25, 2024

We could also just set up a cron job that runs the makefile every night or something. Doesn't need to be too fancy.

from constitution.

sman591 avatar sman591 commented on June 25, 2024

Just have the CI commit the updated PDF?

from constitution.

liam-middlebrook avatar liam-middlebrook commented on June 25, 2024

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.

from constitution.

liam-middlebrook avatar liam-middlebrook commented on June 25, 2024

@sman591 I'd rather keep the binary PDF blobs out of Git in general.

from constitution.

mbillow avatar mbillow commented on June 25, 2024

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.

from constitution.

liam-middlebrook avatar liam-middlebrook commented on June 25, 2024

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 /var/www/pub/constitution as opposed to dropping them on filer.

from constitution.

mbillow avatar mbillow commented on June 25, 2024

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.

from constitution.

liam-middlebrook avatar liam-middlebrook commented on June 25, 2024

TravisCI is a hosted service, we don't run it locally.

from constitution.

mbillow avatar mbillow commented on June 25, 2024

I was under the impression that we were going to host it locally.

from constitution.

cgonyeo avatar cgonyeo commented on June 25, 2024

TravisCI isn't something you can host yourself unless you want to pay a lot of money.

from constitution.

WillDignazio avatar WillDignazio commented on June 25, 2024

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).

from constitution.

gambogi avatar gambogi commented on June 25, 2024

@WillDignazio They cause unnecessary merge conflicts every time

from constitution.

WillDignazio avatar WillDignazio commented on June 25, 2024

There are github commit hooks that can inform us when to do the rebuild, but imo, it's way overkill.

from constitution.

gambogi avatar gambogi commented on June 25, 2024

@ComputerScienceHouse/root-type-people Yo can we get that one liner in cron going?

from constitution.

mbillow avatar mbillow commented on June 25, 2024

https://constitution.csh.rit.edu/articles.pdf
https://constitution.csh.rit.edu/bylaws.pdf

Enjoy your up to date (every 12 hours [0:00 & 12:00]) constitution.
Warning: Give the CNAME time to propagate or use CSH's DNS servers.

from constitution.

liam-middlebrook avatar liam-middlebrook commented on June 25, 2024

:shipit:

from constitution.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.