2019-09-17 18:48:02 +00:00
|
|
|
version: 2.1
|
|
|
|
|
2021-11-29 23:09:07 +00:00
|
|
|
# Required for dynamic configuration
|
|
|
|
setup: true
|
|
|
|
|
|
|
|
# Orbs
|
|
|
|
orbs:
|
|
|
|
path-filtering: circleci/path-filtering@0.1.0
|
2022-04-21 21:34:25 +00:00
|
|
|
continuation: circleci/continuation@0.2.0
|
2021-11-29 23:09:07 +00:00
|
|
|
|
|
|
|
# All input parameters to pass to build config
|
2019-09-17 18:48:02 +00:00
|
|
|
parameters:
|
2021-11-29 23:09:07 +00:00
|
|
|
run-docs-only:
|
|
|
|
type: boolean
|
|
|
|
default: false
|
|
|
|
|
2022-05-09 13:34:17 +00:00
|
|
|
upload-to-storage:
|
2019-09-17 18:48:02 +00:00
|
|
|
type: string
|
|
|
|
default: '1'
|
2019-10-08 21:46:01 +00:00
|
|
|
|
2019-09-17 18:48:02 +00:00
|
|
|
run-build-linux:
|
|
|
|
type: boolean
|
2021-11-29 23:09:07 +00:00
|
|
|
default: false
|
2019-09-17 18:48:02 +00:00
|
|
|
|
|
|
|
run-build-mac:
|
|
|
|
type: boolean
|
2021-11-29 23:09:07 +00:00
|
|
|
default: false
|
2019-09-17 18:48:02 +00:00
|
|
|
|
2020-02-11 20:42:37 +00:00
|
|
|
run-linux-publish:
|
|
|
|
type: boolean
|
|
|
|
default: false
|
|
|
|
|
2021-06-07 14:17:27 +00:00
|
|
|
linux-publish-arch-limit:
|
|
|
|
type: enum
|
|
|
|
default: all
|
|
|
|
enum: ["all", "arm", "arm64", "x64", "ia32"]
|
|
|
|
|
2020-02-11 20:42:37 +00:00
|
|
|
run-macos-publish:
|
|
|
|
type: boolean
|
|
|
|
default: false
|
|
|
|
|
2021-06-07 14:17:27 +00:00
|
|
|
macos-publish-arch-limit:
|
|
|
|
type: enum
|
|
|
|
default: all
|
|
|
|
enum: ["all", "osx-x64", "osx-arm64", "mas-x64", "mas-arm64"]
|
|
|
|
|
2017-09-13 13:48:19 +00:00
|
|
|
jobs:
|
2022-04-21 21:34:25 +00:00
|
|
|
generate-config:
|
|
|
|
docker:
|
|
|
|
- image: cimg/node:16.14
|
|
|
|
steps:
|
|
|
|
- checkout
|
|
|
|
- path-filtering/set-parameters:
|
2021-11-29 23:09:07 +00:00
|
|
|
base-revision: main
|
|
|
|
mapping: |
|
|
|
|
^((?!docs/).)*$ run-build-mac true
|
|
|
|
^((?!docs/).)*$ run-build-linux true
|
|
|
|
docs/.* run-docs-only true
|
|
|
|
^((?!docs/).)*$ run-docs-only false
|
2022-04-21 21:34:25 +00:00
|
|
|
- run:
|
|
|
|
command: |
|
|
|
|
cd .circleci/config
|
|
|
|
yarn
|
|
|
|
export CIRCLECI_BINARY="$HOME/circleci"
|
|
|
|
curl -fLSs https://raw.githubusercontent.com/CircleCI-Public/circleci-cli/master/install.sh | DESTDIR=$CIRCLECI_BINARY bash
|
|
|
|
node build.js
|
|
|
|
name: Pack config.yml
|
|
|
|
- continuation/continue:
|
|
|
|
configuration_path: .circleci/config-staging/built.yml
|
|
|
|
parameters: /tmp/pipeline-parameters.json
|
|
|
|
|
|
|
|
# Initial setup workflow
|
|
|
|
workflows:
|
|
|
|
setup:
|
|
|
|
jobs:
|
|
|
|
- generate-config
|