kind: pipeline name: default steps: - name: restore-cache image: drillster/drone-volume-cache volumes: - name: cache path: /cache settings: restore: true mount: - ./node_modules - name: dependencies image: node commands: - yarn depends_on: - restore-cache - name: build_versioned image: node commands: - yarn build environment: SUBPATH: /${DRONE_COMMIT_SHA:0:8} when: event: - push depends_on: - dependencies - name: build_pr image: node commands: - yarn build environment: SUBPATH: /pr-${DRONE_PULL_REQUEST} when: event: - pull_request depends_on: - dependencies - name: build_master image: node commands: - yarn build environment: SUBPATH: /latest when: event: - push branch: - master depends_on: - dependencies - name: upload_build_versioned image: plugins/s3 settings: bucket: mcg access_key: from_secret: minio_access secret_key: from_secret: minio_secret source: dist/**/* target: /${DRONE_COMMIT_SHA:0:8}/ path_style: true endpoint: https://artifacts.fromouter.space when: event: - push depends_on: - build_versioned - name: upload_build_pr image: plugins/s3 settings: bucket: mcg access_key: from_secret: minio_access secret_key: from_secret: minio_secret source: dist/**/* target: /pr-${DRONE_PULL_REQUEST}/ path_style: true endpoint: https://artifacts.fromouter.space when: event: - pull_request depends_on: - build_pr - name: upload_build_master image: plugins/s3 settings: bucket: mcg access_key: from_secret: minio_access secret_key: from_secret: minio_secret source: dist/**/* target: /latest/ path_style: true endpoint: https://artifacts.fromouter.space when: event: - push branch: - master depends_on: - build_master - name: test image: node commands: - yarn test:unit --runInBand depends_on: - dependencies - name: coverage image: node commands: - yarn test:unit --coverage --runInBand depends_on: - test # Must run after test otherwise SQLite will get mad - name: upload_coverage image: plugins/s3 settings: bucket: mcg access_key: from_secret: minio_access secret_key: from_secret: minio_secret source: coverage/lcov-report/**/* target: /${DRONE_COMMIT_SHA:0:8}/ path_style: true endpoint: https://artifacts.fromouter.space when: event: - push depends_on: - coverage - name: upload_coverage_pr image: plugins/s3 settings: bucket: mcg access_key: from_secret: minio_access secret_key: from_secret: minio_secret source: coverage/lcov-report/**/* target: /pr-${DRONE_PULL_REQUEST}/ path_style: true endpoint: https://artifacts.fromouter.space when: event: - pull_request depends_on: - coverage - name: rebuild-cache image: drillster/drone-volume-cache volumes: - name: cache path: /cache settings: rebuild: true mount: - ./node_modules depends_on: - dependencies