0
0
mirror of https://github.com/wagtail/wagtail.git synced 2024-11-24 10:58:52 +01:00
wagtail/.circleci/config.yml
Karl Hobley b3c35e5f7f
Update Circle CI base image (#7518)
[...] CircleCI’s latest pre-built container images were designed from the ground up to help your team build more reliably. Our new images were built specifically for continuous integration projects and they are our most deterministic, performant, and efficient images yet.
2021-09-18 17:11:43 +01:00

83 lines
2.5 KiB
YAML

version: 2
jobs:
backend:
docker:
- image: cimg/python:3.8.11
steps:
- checkout
- restore_cache:
keys:
- pip-packages-v1-{{ .Branch }}
- pip-packages-v1-
- run: pipenv install -e .[testing]
- save_cache:
paths:
- ~/.local/
key: pip-package-v1-{{ .Branch }}
- run: pipenv run flake8
- run: pipenv run isort --check-only --diff .
# Filter out known false positives, while preserving normal output and error codes.
# See https://github.com/motet-a/jinjalint/issues/18.
# And https://circleci.com/docs/2.0/configuration-reference/#default-shell-options.
- run:
shell: /bin/bash -e
command: pipenv run jinjalint --parse-only wagtail | grep -v 'welcome_page.html:6:70' | tee /dev/tty | wc -l | grep -q '0'
- run: pipenv run doc8 docs
- run: DATABASE_NAME=wagtail.db pipenv run python -u runtests.py
frontend:
docker:
- image: circleci/node:14
steps:
- checkout
- restore_cache:
keys:
- node-v1-{{ .Branch }}-{{ checksum "package-lock.json" }}
- node-v1-{{ .Branch }}-
- node-v1-
- run: npm install --no-save
- save_cache:
paths:
- ~/project/node_modules/
key: node-v1-{{ .Branch }}-{{ checksum "package-lock.json" }}
- run: npm run build
- run: npm run lint:js
- run: npm run lint:css
- run: npm run test:unit:coverage -- --runInBand
- run: npm run dist
- run: bash <(curl -s https://codecov.io/bash) -F frontend
nightly-build:
docker:
- image: cimg/python:3.8.11
steps:
- checkout
- run: cd ~ && wget https://nodejs.org/dist/v14.17.5/node-v14.17.5-linux-x64.tar.gz
- run: cd /usr/local/ && sudo tar --strip-components 1 -xzf ~/node-v14.17.5-linux-x64.tar.gz
- run: pip install --user wheel boto3
- run: npm install
- run: npm run dist
- run: PYTHONPATH=. python scripts/nightly/get_version.py > __init__.py
- run: mv __init__.py wagtail/__init__.py
- run: python setup.py bdist_wheel
- run: python scripts/nightly/upload.py
workflows:
version: 2
test:
jobs:
- backend
- frontend
nightly:
jobs:
- nightly-build
triggers:
- schedule:
cron: "0 0 * * *"
filters:
branches:
only:
- main