make prep
Structure
The site is implemented as a Jekyll site.
It has a _config.yml
for specifying the directory structure, metadata, build
defaults, etc.
Inputs
All source files are inside the _jekyll/
directory, as specified in
_config.yml
.
Outputs
All output files live inside the _site/
directory, and its content have been
gitignore
-d.
Usage
Preparation
To begin developing,
which would install the necessary Ruby gems for you.
Auto-build
To make it watch for file changes and build automatically (which watches only the files specified in the above Inputs section), run:
make watch
If you want to be sure all outputs are cleaned prior to building, run:
make clean-watch
Just build
The non-watching equivalents for the above are simply:
make build
make clean-build
Deployment
This section is only for deployment.
Configuration
Configure the hostname and region in the ro-site.rc
file as you know it.
cp ro-site.rc.template ro-site.rc
vi ro-site.rc
Uploading to S3
If you have access to the bucket, run this.
export AWS_PROFILE=myprofile
source ro-site.rc
make upload
Clear CloudFront caching
The sites are accessed via CloudFront. If you’re seeing
stale data after make upload
, most likely the CloudFront
cache needs to be invalidated.
Your AWS account must be authorized to invalidate the CloudFront cache for this distribution.
export AWS_PROFILE=myprofile
source ro-site.rc
make clear-cf
Workflow
-
Ensure tests pass
-
Create your feature branch (
git checkout -b my-new-feature
) -
Commit your changes (
git commit -am 'Add some feature'
) -
Push to the branch (
git push origin my-new-feature
) -
Create new Pull Request