74 lines
1.6 KiB
YAML
74 lines
1.6 KiB
YAML
version: 2.1
|
|
|
|
orbs:
|
|
docker: circleci/docker@0.5.20
|
|
|
|
jobs:
|
|
build-rookeries:
|
|
docker:
|
|
- image: dorianpula/rookeries-build:latest
|
|
steps:
|
|
- checkout
|
|
- run:
|
|
name: Build Rookeries
|
|
command: cargo make build-all
|
|
|
|
test-site-generator:
|
|
docker:
|
|
- image: dorianpula/rookeries-build:latest
|
|
steps:
|
|
- checkout
|
|
- run:
|
|
name: Test static site generator
|
|
command: |
|
|
cargo audit
|
|
cargo make test
|
|
|
|
test-site-app:
|
|
docker:
|
|
- image: dorianpula/rookeries-build:latest
|
|
steps:
|
|
- checkout
|
|
- run:
|
|
name: Test site webapp
|
|
command: cargo make test-js
|
|
|
|
test-plugins:
|
|
docker:
|
|
- image: dorianpula/rookeries-build:latest
|
|
steps:
|
|
- checkout
|
|
- run:
|
|
name: Test plugins
|
|
command: cargo make test-plugins
|
|
|
|
|
|
workflows:
|
|
version: 2
|
|
# TODO: Add a workflow that will create OS X and FreeBSD versions when a tag is present. And will upload to Object Storage.
|
|
build-env:
|
|
jobs:
|
|
- docker/publish:
|
|
image: dorianpula/rookeries-build:latest
|
|
docker-username: DOCKER_USER
|
|
docker-password: DOCKER_PASS
|
|
triggers:
|
|
- schedule:
|
|
cron: "0 9 * * 6"
|
|
filters:
|
|
branches:
|
|
only:
|
|
- master
|
|
build-test-push:
|
|
jobs:
|
|
- build-rookeries
|
|
- test-site-generator:
|
|
requires:
|
|
- build-rookeries
|
|
- test-site-app:
|
|
requires:
|
|
- build-rookeries
|
|
- test-plugins:
|
|
requires:
|
|
- build-rookeries
|