mirror of
https://github.com/wagtail/wagtail.git
synced 2024-12-01 11:41:20 +01:00
b3c35e5f7f
[...] 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.
83 lines
2.5 KiB
YAML
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
|