dist: bionic language: rust rust: - stable cache: cargo env: global: - NODE_VERSION="17.0.1" - SOLANA_CLI_VERSION="1.8.0" git: submodules: true _defaults: &defaults before_install: - rustup component add rustfmt clippy - nvm install $NODE_VERSION - sudo apt-get install -y pkg-config build-essential libudev-dev _tests: &tests before_install: - nvm install $NODE_VERSION - cd ts && yarn && yarn build && yarn link && cd ../ - cd examples/tutorial && yarn link @project-serum/anchor && yarn && cd ../../ - cd tests && yarn link @project-serum/anchor && yarn && cd .. - sudo apt-get install -y pkg-config build-essential libudev-dev - sh -c "$(curl -sSfL https://release.solana.com/v${SOLANA_CLI_VERSION}/install)" - export PATH="/home/travis/.local/share/solana/install/active_release/bin:$PATH" - yes | solana-keygen new - cargo install --path $TRAVIS_BUILD_DIR/cli anchor-cli --locked jobs: include: - <<: *defaults name: Build and test Rust script: - cargo build - cargo fmt -- --check - cargo clippy --all-targets -- -D warnings - cargo test - pushd ts && yarn && popd - pushd ts && yarn test && popd - pushd ts && yarn lint && popd - <<: *tests name: Runs the e2e tests 1 script: - pushd client/example && ./run-test.sh && popd - pushd tests/sysvars && anchor test && popd - pushd tests/composite && anchor test && popd - pushd tests/errors && anchor test && popd - pushd tests/spl/token-proxy && anchor test && popd - pushd tests/multisig && anchor test && popd - pushd tests/interface && anchor test && popd - pushd tests/lockup && anchor test && popd - pushd tests/permissioned-markets/deps/serum-dex/dex && cargo build-bpf && cd ../../../ && anchor test && popd - <<: *tests name: Runs the e2e tests 2 script: - pushd tests/misc && anchor test && popd - pushd tests/events && anchor test && popd - pushd tests/cashiers-check && anchor test && popd - pushd tests/typescript && anchor test && popd - pushd tests/zero-copy && anchor test && popd - pushd tests/chat && anchor test && popd - pushd tests/ido-pool && anchor test && popd - pushd tests/swap/deps/serum-dex/dex && cargo build-bpf && cd ../../../ && anchor test && popd - pushd tests/cfo && anchor run test-with-build && popd - <<: *tests name: Runs the e2e tests 3 script: - pushd tests/escrow && anchor test && popd - pushd tests/pyth && anchor test && popd - pushd tests/system-accounts && anchor test && popd - pushd examples/tutorial && yarn workspaces run test