build.sh 526 B

1234567891011121314151617181920212223
  1. #!/bin/bash
  2. # Build a project for production in the form of a release
  3. set -euo pipefail
  4. MIX_ENV=${MIX_ENV-prod}
  5. export MIX_ENV=$MIX_ENV
  6. # Clean project and get dependencies
  7. mix do local.rebar --force, \
  8. local.hex --force, \
  9. clean --only $MIX_ENV, \
  10. deps.get --only $MIX_ENV
  11. # Build static assets
  12. npm --prefix ./assets ci --progress=false --no-audit --loglevel=error
  13. npm run --prefix ./assets deploy
  14. # Run project compilation
  15. mix do phx.digest, \
  16. compile --force, \
  17. release --overwrite