Skip to content

clue/clue.engineering

Repository files navigation

clue.engineering

CI status Last deployed on live

Source code for the https://clue.engineering/ website.

Build

You can build the website like this:

make

Once built, you can manually browse the build/ directory or run the web server container (Apache) in the foreground like this:

make serve

Alternatively, you may also run the web server container (Apache) as a background daemon like this:

make served

Once running, you can run some integration tests that check correct paths etc. like this:

make test

If you don't want to test this against the local container, you can optionally pass in a different base URL like this:

tests/integration.bash http://clue.localhost/

Once done, you can clean up like this:

make clean

Deploy

Once built (see previous "Build" section), you can simply deploy the build/ directory behind your favorite web server (Apache + PHP-FPM etc.).

Additionally, this should be deployed behind a reverse proxy (nginx) that is responsible for HTTPS certificate handling and forcing HTTPS redirects.

Additionally, Apache has been configured to cache static files for 1 day.

The live website is deployed by pushing the contents of the build/ directory to the live branch like this:

make deploy

Auto-Deployment

Any time a commit is merged (such as when a PR is merged), GitHub actions will automatically build and deploy the website. This is done by running the above deployment script (see previous chapter).