run_test_cases.yaml 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. name: Run test case
  2. on:
  3. push:
  4. tags:
  5. - v*
  6. release:
  7. types:
  8. - published
  9. pull_request:
  10. jobs:
  11. run_test_case:
  12. runs-on: ubuntu-20.04
  13. steps:
  14. - uses: actions/checkout@v2
  15. - name: set up
  16. env:
  17. MYSQL_TAG: 8
  18. REDIS_TAG: 6
  19. MONGO_TAG: 4
  20. PGSQL_TAG: 13
  21. LDAP_TAG: 2.4.50
  22. GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
  23. run: |
  24. docker-compose -f .ci/apps_tests/docker-compose.yaml build --no-cache
  25. docker-compose -f .ci/apps_tests/docker-compose.yaml up -d
  26. - name: run tests
  27. run: |
  28. export EMQX_AUTH__LDAP__SERVERS=ldap_server \
  29. EMQX_AUTH__MONGO__SERVER=mongo_server:27017 \
  30. EMQX_AUTH__REDIS__SERVER=redis_server:6379 \
  31. EMQX_AUTH__MYSQL__SERVER=mysql_server:3306 \
  32. EMQX_AUTH__MYSQL__USERNAME=root \
  33. EMQX_AUTH__MYSQL__PASSWORD=public \
  34. EMQX_AUTH__MYSQL__DATABASE=mqtt \
  35. EMQX_AUTH__PGSQL__SERVER=pgsql_server:5432 \
  36. EMQX_AUTH__PGSQL__USERNAME=root \
  37. EMQX_AUTH__PGSQL__PASSWORD=public \
  38. EMQX_AUTH__PGSQL__DATABASE=mqtt \
  39. CUTTLEFISH_ENV_OVERRIDE_PREFIX=EMQX_
  40. printenv > .env
  41. docker exec -i erlang bash -c "make xref"
  42. docker exec --env-file .env -i erlang bash -c "make ct"
  43. docker exec --env-file .env -i erlang bash -c "make eunit"
  44. docker exec -i erlang bash -c "make cover"
  45. docker exec -i erlang bash -c "make coveralls"
  46. - uses: actions/upload-artifact@v1
  47. if: failure()
  48. with:
  49. name: logs
  50. path: _build/test/logs
  51. - uses: actions/upload-artifact@v1
  52. with:
  53. name: cover
  54. path: _build/test/cover