microstrategy
Version:
A node.js wrapper for the MicroStrategy REST API & Task API
65 lines (61 loc) • 2.24 kB
YAML
version: 2.1
orbs:
node: circleci/node@3.0.0
jobs:
build:
working_directory: ~/mstrnodesdk
# Reuse Docker container specification given by the node Orb
executor: node/default
steps:
- checkout
# Install the latest npm - the node Orb takes care of it
- node/install-npm
# Install dependencies - the node Orb take care of installation and dependency caching
- node/install-packages:
app-dir: ~/mstrnodesdk
cache-path: node_modules
override-ci-command: npm i
# Save workspace for subsequent jobs (i.e. test)
- persist_to_workspace:
root: .
paths:
- .
test:
docker:
# The primary container is an instance of the first image listed. The job's commands run in this container.
- image: cimg/node:current
# The secondary container is an instance of the second listed image which is run in a common network where ports exposed on the primary container are available on localhost.
# - image: mongo:4.2
steps:
# Reuse the workspace from the build job
- attach_workspace:
at: .
# - run:
# name: Demonstrate that Mongo DB is available as localhost
# command: |
# curl -sSJL https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -
# echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list
# sudo apt update
# sudo apt install mongodb-org
# mongo localhost --eval 'db.serverStatus()'
- run:
name: Test
command: npm run testci
# - run:
# name: Generate code coverage
# command: './node_modules/.bin/nyc report --reporter=text-lcov'
# You can specify either a single file or a directory to store as artifacts
- store_artifacts:
path: test-results.xml
destination: deliverable.xml
# - store_artifacts:
# path: coverage
# destination: coverage
workflows:
version: 2
build_and_test:
jobs:
- build
- test:
requires:
- build