version:2jobs: build: working_directory:~/smart-contracts# The primary container is an instance of the first image listed. The job's commands run in this container. docker: - image:circleci/node:8-browsers# 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:trufflesuite/ganache-cli steps: -checkout - run: name:Updatenpm command:'sudo npm install -g npm@latest' - restore_cache: key:dependency-cache-{{checksum"package.json"}} - run: name:Installnpmwee command:npminstall - run: name:MigrateContracts command:./node_modules/truffle/build/cli.bundled.jsmigrate--networkdevelopment - run: name:TestContracts command:./node_modules/truffle/build/cli.bundled.jstest--networkdevelopment - save_cache: key:dependency-cache-{{checksum"package.json"}} paths: -node_modules