version: 2.1 orbs: commitlint: conventional-changelog/commitlint@1.0.0 node: circleci/node@5 aliases: - &release-branches - develop - /^hotfix\// commands: deploy_gh_pages: steps: - run: name: deploy to GH Pages command: | if [ -n "$GH_PAGES_REPO" ]; then export GIT_AUTHOR_EMAIL="$(git log --pretty=format:"%ae" -n1)" export GIT_AUTHOR_NAME="$(git log --pretty=format:"%an" -n1)" export GIT_COMMITTER_EMAIL="${GIT_AUTHOR_EMAIL}" export GIT_COMMITTER_NAME="${GIT_AUTHOR_NAME}" npm run deploy -x -r $GH_PAGES_REPO fi jobs: build_no_release: executor: node/default # defaults to LTS steps: - checkout - node/install-packages - run: npm test - run: npm run build - deploy_gh_pages build_and_release: executor: node/default # defaults to LTS steps: - checkout - node/install-packages - run: npm test - run: npm run build - deploy_gh_pages - run: npx semantic-release update_i18n: executor: node/default # defaults to LTS steps: - checkout - node/install-packages - run: npm run i18n:src && npm run i18n:push workflows: version: 2 commitlint: jobs: - commitlint/lint: target-branch: develop build_no_release: jobs: - build_no_release: filters: branches: ignore: *release-branches build_and_release: jobs: - build_and_release: filters: branches: only: *release-branches update_i18n: jobs: - update_i18n: context: transifex triggers: - schedule: cron: 0 0 * * * # daily at midnight UTC = 7-8pm US Eastern filters: branches: only: develop