scratch-paint/.circleci/config.yml

125 lines
3 KiB
YAML
Raw Normal View History

version: 2.1
2022-08-25 13:44:51 -04:00
orbs:
browser-tools: circleci/browser-tools@1.2.4
2022-08-25 17:53:06 -04:00
node: circleci/node@5.0.2
commitlint: conventional-changelog/commitlint@1.0.0
aliases:
- &defaults
docker:
- image: cimg/node:16.18.1-browsers
auth:
username: $DOCKERHUB_USERNAME
password: $DOCKERHUB_PASSWORD
working_directory: ~/repo
environment:
NODE_ENV: production
- &setup
2022-08-25 13:44:51 -04:00
node/install-packages:
override-ci-command: npm --production=false ci
- &lint
2022-08-25 13:44:51 -04:00
run:
name: "run lint tests"
command: npm run lint -- --format junit -o ./test/results/lint-results.xml
- &unit
2022-08-25 13:44:51 -04:00
run:
name: "run unit tests"
command: JEST_JUNIT_OUTPUT_NAME=unit-jest-results.xml npm run unit -- --reporters=jest-junit
- &build
2022-08-25 13:44:51 -04:00
run:
name: "run npm build"
command: |
NODE_ENV=production npm run build
2022-04-11 16:53:11 -04:00
- &deploy-gh-pages
2022-08-25 13:44:51 -04:00
run:
name: "deploy to gh pages"
command: |
git config --global user.email $(git log --pretty=format:"%ae" -n1)
git config --global user.name $(git log --pretty=format:"%an" -n1)
npm run deploy -- -e $CIRCLE_BRANCH
jobs:
build-test:
<<: *defaults
steps:
- checkout
2022-08-25 13:44:51 -04:00
- *setup
- *lint
- *unit
- *build
- store_test_results:
path: test/results
- run: npx --no -- semantic-release --dry-run
build-test-deploy:
<<: *defaults
steps:
- checkout
2022-08-25 13:44:51 -04:00
- *setup
- *lint
- *unit
- *build
- store_test_results:
path: test/results
2022-08-25 13:44:51 -04:00
- *deploy-gh-pages
- run: npx --no -- semantic-release
push-translations:
<<: *defaults
steps:
- checkout
2022-08-25 13:44:51 -04:00
- *setup
- run:
name: "run i18n script"
command: |
npm run i18n:src
npm run i18n:push
workflows:
2022-08-25 17:53:06 -04:00
commitlint:
jobs:
- commitlint/lint:
target-branch: develop
filters:
branches:
ignore:
- master
- develop
2023-05-05 14:42:42 -04:00
- beta
- /^hotfix\/.*/
build-test-no-deploy:
jobs:
- build-test:
context:
- dockerhub-credentials
filters:
branches:
ignore:
- master
- develop
2023-05-05 14:42:42 -04:00
- beta
- /^hotfix\/.*/
2022-04-19 15:46:19 -04:00
- gh-pages
build-test-deploy:
jobs:
- build-test-deploy:
context:
- dockerhub-credentials
2023-04-14 15:08:47 -04:00
- scratch-npm-creds
filters:
branches:
only:
- master
- develop
2023-05-05 14:42:42 -04:00
- beta
- /^hotfix\/.*/
push-translations:
triggers:
- schedule:
cron: 0 0 * * * # daily at 12 UTC, 8 ET
filters:
branches:
only:
- develop
jobs:
- push-translations:
context:
- dockerhub-credentials