cypress_build.sh 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #!/bin/bash
  2. #
  3. # Licensed to the Apache Software Foundation (ASF) under one or more
  4. # contributor license agreements. See the NOTICE file distributed with
  5. # this work for additional information regarding copyright ownership.
  6. # The ASF licenses this file to You under the Apache License, Version 2.0
  7. # (the "License"); you may not use this file except in compliance with
  8. # the License. You may obtain a copy of the License at
  9. #
  10. # http://www.apache.org/licenses/LICENSE-2.0
  11. #
  12. # Unless required by applicable law or agreed to in writing, software
  13. # distributed under the License is distributed on an "AS IS" BASIS,
  14. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  15. # See the License for the specific language governing permissions and
  16. # limitations under the License.
  17. #
  18. set -e
  19. cd "$(dirname "$0")"
  20. #run all the python steps in a background process
  21. time superset db upgrade
  22. time superset load_test_users
  23. time superset load_examples --load-test-data
  24. time superset init
  25. echo "[completed python build steps]"
  26. PORT='8081'
  27. flask run -p $PORT --with-threads --reload --debugger &
  28. #block on the longer running javascript process
  29. time npm ci
  30. time npm run build-instrumented
  31. echo "[completed js build steps]"
  32. #setup cypress
  33. cd cypress-base
  34. time npm ci
  35. export CYPRESS_BASE_URL="http://localhost:${PORT}"
  36. if [ -n "$1" ]; then
  37. CYPRESS_PATH='cypress/e2e/'${1}'/*'
  38. time npm run cypress-run-chrome -- --spec "$CYPRESS_PATH" --record false --config video=false || true
  39. else
  40. time npm run cypress-run-chrome -- --record false --config video=false || true
  41. fi
  42. kill %1