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 uphttp://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 installbundle exec jekyll serve --livereloadhttp://localhost:4000To deploy the site:
masterThe 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.