Federal Front Door Microsite
This repository contains the files and infrastructure to run the Federal Front Door Microsite.
|Installation||Installing the project locally.|
|Development||Development workflow using
|Deployment||Automated and Manual deployment information using
|Contributing||Contributing to the project.|
The development for the microsite has the following dependencies
- Hugo, a static-site generator written in Go.
- Gulp, an automation tool for asset-pipelines.
This documentation assumes that you have Ruby and NodeJS installed on your
machine. Instructions for installing
npm, [can be found here] node-install.
In order to serve the microsite locally, you will need to install the
command-line tool. This can be installed easily via Homebrew
on Mac OS X with the following command in your Terminal.
brew update && \ brew install hugo
In order to build the assets for the microsite, you will need to install the
gulp command-line tool.
npm install --global gulp-cli
The Sass file linter uses the Ruby gem
scss_lint. This gem must be installed
on your machine in order to run any tasks that depend on the
gem install scss_lint
gulp is installed globally, navigate to this directory in your Terminal
npm to bring in the asset-pipeline's dependencies.
Once that is complete, run
gulp in your Terminal to get a list of tasks.
$ gulp Using gulpfile ~/Developer/ffd-microsite/gulpfile.js Starting 'default'... v1.0.0 ffd-microsite ______ ______ _____ /\ ___/\ ___/\ __-. \ \ __\ \ __\ \ \/\ \ \ \_\ \ \_\ \ \____- \/_/ \/_/ \/____/ Available tasks ...
To start the local webserver and have gulp watch for changes:
Descriptions for optional
gulp [ flags ] task prefixes
These flags are 100% optional and can be omitted from any tasks that are affected by them.
no-testThis flag disables linters and tests for all assets.
productionThis flag enables minification and compression of all assets in prep for a production environment.
- Assuming you have the
cfbinary installed on your machine and within your
- [Please read Setting up the command line] cg-docs-cli-install for more information.
- Assuming that you have a
- [Please read Setting up your account] cg-docs-cg-account for more information.
This project uses [Travis-CI] tci-homepage for continuous deployment. Our
current process deploys our
staging branch and our
master branch to their
staging] ffd-staging and [
production] ffd-production URLs.
cf command-line tool, you can run a manual deployment to either
production by targeting the corresponding organization / space
and as long as you have access to
cf push the target. More information on
cloud.gov can be found [here] cg-deploy-hw and [here] cg-deploy-ss.
Manual deployments are not necessary as all deployments should go through Travis-CI.
To check which space you're targeting using the
cf command-line tool, type the
following in your terminal.
Building the microsite locally
Building the microsite locally can be done with the same command that runs in Travis-CI. Type the following in your terminal.
npm run build
Pushing to a target
Once the microsite has been built locally by running the above command, you can push your changes up to the targeted space. Type the following in your terminal.