build.sh 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. #!/usr/bin/env bash
  2. set -e
  3. yarn
  4. yarn workspace @joystream/types build
  5. yarn workspace cd-schemas generate:all
  6. yarn workspace cd-schemas build
  7. yarn workspace @joystream/cli build
  8. yarn workspace query-node-root build
  9. yarn workspace storage-node build
  10. # Not strictly needed during development, we run "yarn workspace pioneer start" to start
  11. # a dev instance, but will show highlight build issues
  12. yarn workspace pioneer build
  13. # Build cargo crates: native binaries joystream/node, wasm runtime, and chainspec builder.
  14. while true
  15. do
  16. read -p "Compile joystream node native binary? (y/N): " answer1
  17. case $answer1 in
  18. [yY]* ) yarn cargo-checks
  19. yarn cargo-build
  20. break;;
  21. [nN]* ) break;;
  22. * ) break;;
  23. esac
  24. done
  25. if ! command -v docker-compose &> /dev/null
  26. then
  27. echo "docker-compose not found, skipping docker images build"
  28. exit
  29. fi
  30. # Optionally build joystream/node docker image
  31. # TODO: Try to fetch a cached joystream/node image
  32. # if one is found matching code shasum instead of building
  33. while true
  34. do
  35. read -p "Rebuild joystream/node docker image? (y/N): " answer2
  36. case $answer2 in
  37. [yY]* ) docker-compose build joystream-node
  38. break;;
  39. [nN]* ) break;;
  40. * ) break;;
  41. esac
  42. done
  43. # Optionlly Build joystream/apps docker image
  44. while true
  45. do
  46. read -p "Rebuild joystream/apps docker image? (y/N): " answer3
  47. case $answer3 in
  48. [yY]* ) docker-compose build pioneer
  49. break;;
  50. [nN]* ) break;;
  51. * ) break;;
  52. esac
  53. done