This repo contains the infrastructure for all websites and static content hosted under fisherevans.com
.
Some small sites are maintained directly in this repository under the sites
directory.
Some sites are generated from git submodules (i.e. metamorph
). The submodules are fetched and built; their production build files are then copied to the sites
directory. These files are .gitignore
'd.
This process is automated by running ./refresh-submodules.sh
You can add new submodules via:
git submodule add <remote_url> submodules/<site_name>
And then add the relevent refresh code in ./refresh-submodules.sh
.
You can ./serve-local.sh <site directory>
to serve static content locally. This is helpful for testing changes during developement.
You can sync
static content from your local environment to the shared S3 bucket by running ./force-deploy.sh <site>
.
The DNS, CloudFront, and other AWS resources used to actually host and deliver the content is managed by terraform within infra/terraform
.