.travis.yml 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. language: rust
  2. rust:
  3. - 1.43.0
  4. matrix:
  5. include:
  6. - os: linux
  7. env: TARGET=x86_64-unknown-linux-gnu
  8. - os: linux
  9. env: TARGET=arm-unknown-linux-gnueabihf
  10. services: docker
  11. - os: osx
  12. env: TARGET=x86_64-apple-darwin
  13. before_install:
  14. - rustup component add rustfmt
  15. - cargo fmt --all -- --check
  16. - rustup component add clippy
  17. - BUILD_DUMMY_WASM_BINARY=1 cargo clippy -- -D warnings
  18. - rustup default stable
  19. - rustup update nightly
  20. - rustup target add wasm32-unknown-unknown --toolchain nightly
  21. - cargo test --verbose --all
  22. install:
  23. - |
  24. if [ "$TARGET" = "arm-unknown-linux-gnueabihf" ]
  25. then
  26. docker pull joystream/rust-raspberry
  27. fi
  28. script:
  29. - |
  30. if [ "$TARGET" = "arm-unknown-linux-gnueabihf" ]
  31. then
  32. docker run -u root \
  33. --volume ${TRAVIS_BUILD_DIR}:/home/cross/project \
  34. joystream/rust-raspberry \
  35. build --release
  36. sudo chmod a+r ${TRAVIS_BUILD_DIR}/target/${TARGET}/release/joystream-node
  37. else
  38. cargo build --release --target=${TARGET}
  39. fi
  40. before_deploy:
  41. - cp ./target/${TARGET}/release/joystream-node .
  42. - |
  43. if [ "$TARGET" = "arm-unknown-linux-gnueabihf" ]
  44. then
  45. export FILENAME="joystream-node-armv7-linux-gnueabihf"
  46. else
  47. export FILENAME=`./joystream-node --version | sed -e "s/ /-/g"`
  48. fi
  49. - tar -cf ${FILENAME}.tar ./joystream-node
  50. - gzip ${FILENAME}.tar
  51. deploy:
  52. - provider: releases
  53. api_key:
  54. secure: FfxZGQexxAGT0Skbctl1FuqmEvNHejPDPtNG8Du1ACSGjS7Y+M6o/aPqE6HL158AmddOgndsIPR+HM7VfMDAUMkLTbOhv3nMpDBZu1h25vwk+jHOM65tm5LWUu/ROWBpaAQiG7NKrvtfkNfbNBSETsEbWBt/DPrhlIfSbgsXBFDiid7uRrCiwvDUJ097/EUOJ9OVUrk+O4ebSzfIfKPGPtRU2rQQ0eNX7yX3TCm3jbQm/kplkQNRL9mnAJNxtKuvuko4LqZ6jN4XLoLTHUMjO7E0r6wXVB4GVjA4HA214eLlQD6BhgTbWMDxKgWyuKzPG+2GLKyluSSn0RurSl8tYryXKxKxuN3H1FX9r23a8AzGtpRACJtIePC2YmPuQRSnz2Bw8jlSP2WPLJtXGD036J/wVMj6W9TROm7IBigiC7QlqAqCYNByOnoKyhRCgYyAJZb0Jpa3qWaFhA6b6gCGhyH85QCcrc0q6JAB3oqH8Wfm/K2HVzBobmKaSFu5DpwInNnUXnLWGVzhSt3oCq6ld773izReGdLJtLC2vaJ9rZVaVw29s9M662EEuAGgaVLO/sinZJFeIIaCF4i4zUXwXSLIdfKXGOR0ZibkyT2FS6qPGvl/lLN5IREzD7v/rV8htGMLmw4jpPLNskvRjCHX42ewRRYdMvZzQQOAvSlWcsw=
  55. file: ${FILENAME}.tar.gz
  56. on:
  57. tags: true
  58. repo: Joystream/joystream
  59. draft: true
  60. overwrite: true
  61. skip_cleanup: true
  62. - provider: releases
  63. api_key:
  64. secure: FfxZGQexxAGT0Skbctl1FuqmEvNHejPDPtNG8Du1ACSGjS7Y+M6o/aPqE6HL158AmddOgndsIPR+HM7VfMDAUMkLTbOhv3nMpDBZu1h25vwk+jHOM65tm5LWUu/ROWBpaAQiG7NKrvtfkNfbNBSETsEbWBt/DPrhlIfSbgsXBFDiid7uRrCiwvDUJ097/EUOJ9OVUrk+O4ebSzfIfKPGPtRU2rQQ0eNX7yX3TCm3jbQm/kplkQNRL9mnAJNxtKuvuko4LqZ6jN4XLoLTHUMjO7E0r6wXVB4GVjA4HA214eLlQD6BhgTbWMDxKgWyuKzPG+2GLKyluSSn0RurSl8tYryXKxKxuN3H1FX9r23a8AzGtpRACJtIePC2YmPuQRSnz2Bw8jlSP2WPLJtXGD036J/wVMj6W9TROm7IBigiC7QlqAqCYNByOnoKyhRCgYyAJZb0Jpa3qWaFhA6b6gCGhyH85QCcrc0q6JAB3oqH8Wfm/K2HVzBobmKaSFu5DpwInNnUXnLWGVzhSt3oCq6ld773izReGdLJtLC2vaJ9rZVaVw29s9M662EEuAGgaVLO/sinZJFeIIaCF4i4zUXwXSLIdfKXGOR0ZibkyT2FS6qPGvl/lLN5IREzD7v/rV8htGMLmw4jpPLNskvRjCHX42ewRRYdMvZzQQOAvSlWcsw=
  65. file: ${FILENAME}.tar.gz
  66. on:
  67. branch: development
  68. repo: Joystream/joystream
  69. draft: true
  70. prerelease: true
  71. overwrite: true
  72. skip_cleanup: true