Today I set up some sort of continuous integration that will keep bujetto in sync with git.
What I ended up with:
- 2 docker containers: one running postgres, another one running the backend API.
- Github hook will spill notifications into a tiny nodejs server, which in turn will trigger a script that pulls, builds, updates, etc. Running dotnet restore, build, run and webpack for the react part.
- So the same container that runs the backend builds the front-end as well. It's not good, I know it, you know it, but at this point, fuck it.
- But wait, there's more. Because I'm running the docker containers on the same (and only) VM that I have (the one hosting the crap you're wasting time by reading), I didn't want to expose it via a different port, so my brilliant solution was to enable static files in Ghost ze bloggin enjin and to copy them there (via a docker volume that points to /var/www/static/). A WHOLE MESS.
But it works now. bundle.js is about 5.6MB, but that's with the sourcemaps included. I'll leave it like this and I will make a promise to myself that for a week I won't touch any infrastructure shit. Except for maybe, maaaybeee some small email notifications for when the build is ready (which is kind of slow, really).
On the to-do list:
- I got to split this into two git repos;
On the brigth side
Getting more familiar with VIM, tmux and Linux in general. So much that I just typed :wq 2 minutes ago, while writing this.