run_test_cases.yaml 1.9 KB

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