This is the code for the Gruntwork website.
Gruntwork can help you get your entire infrastructure, defined as code, in about a day. You focus on your product. We'll take care of the Gruntwork.
The fastest way to launch this site is to use Docker.
git clone
this repodocker compose up
http://localhost:4000
to testThe default Docker compose configuration supports hot-reloading of your local environment, meaning that as you edit files to change markup, text, images, etc, your local development server will pick up these changes and reload the latest version of the site for you. This makes it quick and convenient to develop on the site locally.
git clone
this repobundle install
bundle exec jekyll serve --livereload
http://localhost:4000
To deploy the site:
master
The Gruntwork website uses a Ruby Gem called Jekyll Feed
which generates a structured RSS feed of "posts" on the site. Unfortunately, in development this can significantly slow down the hot-reloading of the site, forcing you to wait upwards of a minute at a time to see minor text changes locally.
You'll know this is happening when you look at the STDOUT
of your docker-compose
process and the final count of seconds spent Generating feed for posts
is greater than 5:
web_1 | Regenerating: 1 file(s) changed at 2021-07-21 14:31:08
web_1 | _data/website-terms.yml
web_1 | Jekyll Feed: Generating feed for posts
web_1 | ...done in 58.507850014 seconds.
As a temporary workaround, you can open the Gemfile in the root of the project directory and temporarily comment out the line that pulls in the Jekyll Feed dependency:
source 'https://rubygems.org'
gem 'jekyll', '~> 4.1'
gem 's3_website', '3.3.0'
group :jekyll_plugins do
gem 'jekyll-redirect-from', '0.16.0'
gem 'jekyll-sitemap', '1.4.0'
gem 'jekyll-paginate', '1.1.0'
gem 'therubyracer', '0.12.3'
gem 'less', '2.6.0'
gem 'jekyll-asciidoc'
gem 'jekyll-toc'
gem 'nokogiri', '1.11.0.rc4' # Addressing security issue in earlier versions of this library
# gem 'jekyll-feed'
end
Important - Be sure that you don't end up committing this change because we do want the Jekyll Feed plugin to run for production!
This can happen especially if you add or remove files from the website's working directory. When this occurs, terminate your docker-compose
process and restart it to see your changes reflected.
See LICENSE.txt.