This is one way to pass some data (API tokens, etc.) to your Jekyll templates without putting it in your _config.yml file (which is likely to be committed in your GitHub repository).
Copy the environment_variables.rb plugin to your _plugins folder, and add any environment variable you wish to have available on the site.config object.
In a Liquid template, that information will be available through the site object. For example, _layouts/default.html could contain:
<head>
<!-- ... -->
{% if site.env == 'production' %}
<link rel="stylesheet" href="/build/style.min.css">
{% else %}
<link rel="stylesheet" href="/style.css">
{% endif %}
</head>Running jekyll build will use style.css by default. If you set export JEKYLL_ENV=production before running jekyll build, it will use style.min.css.
I was just searching to do that, very helpfull thanks! ๐
As someone else poited out, I required the dotenv gem and it works wonders.