44 lines
1.1 KiB
YAML
44 lines
1.1 KiB
YAML
|
version: 2
|
||
|
jobs:
|
||
|
build-website:
|
||
|
# setting the working_directory along with the checkout path allows us to not have
|
||
|
# to cd into the website/ directory for commands
|
||
|
working_directory: ~/project/website
|
||
|
docker:
|
||
|
- image: hashicorp/middleman-hashicorp:0.3.35
|
||
|
steps:
|
||
|
- checkout:
|
||
|
path: ~/project
|
||
|
|
||
|
# restores gem cache
|
||
|
- restore_cache:
|
||
|
key: static-site-gems-v1-{{ checksum "Gemfile.lock" }}
|
||
|
|
||
|
- run:
|
||
|
name: install gems
|
||
|
command: bundle check || bundle install --path vendor/bundle --retry=3
|
||
|
|
||
|
# saves gem cache if we have changed the Gemfile
|
||
|
- save_cache:
|
||
|
key: static-site-gems-v1-{{ checksum "Gemfile.lock" }}
|
||
|
paths:
|
||
|
- ~/project/website/vendor/bundle
|
||
|
|
||
|
- run:
|
||
|
name: middleman build
|
||
|
command: bundle exec middleman build
|
||
|
|
||
|
- run:
|
||
|
name: website deploy
|
||
|
command: ./scripts/deploy.sh
|
||
|
|
||
|
workflows:
|
||
|
version: 2
|
||
|
website:
|
||
|
jobs:
|
||
|
- build-website:
|
||
|
context: static-sites
|
||
|
filters:
|
||
|
branches:
|
||
|
only: stable-website
|