elixir_deps_check.yaml 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. ---
  2. name: Elixir Dependency Version Check
  3. on:
  4. pull_request:
  5. jobs:
  6. elixir_deps_check:
  7. runs-on: ubuntu-22.04
  8. container: ghcr.io/emqx/emqx-builder/5.1-3:1.14.5-25.3.2-1-ubuntu22.04
  9. steps:
  10. - name: Checkout
  11. uses: actions/checkout@v3
  12. - name: ensure rebar
  13. run: ./scripts/ensure-rebar3.sh
  14. - name: Work around https://github.com/actions/checkout/issues/766
  15. run: |
  16. git config --global --add safe.directory "$GITHUB_WORKSPACE"
  17. - name: setup mix
  18. run: |
  19. mix local.hex --force
  20. mix local.rebar --force
  21. mix deps.get
  22. # we check only enterprise because `rebar3 tree`, even if an
  23. # enterprise app is excluded from `project_app_dirs` in
  24. # `rebar.config.erl`, will still list dependencies from it.
  25. # Since the enterprise profile is a superset of the
  26. # community one and thus more complete, we use the former.
  27. env:
  28. MIX_ENV: emqx-enterprise
  29. PROFILE: emqx-enterprise
  30. - name: check elixir deps
  31. run: ./scripts/check-elixir-deps-discrepancies.exs
  32. env:
  33. MIX_ENV: emqx-enterprise
  34. PROFILE: emqx-enterprise
  35. - name: produced lock files
  36. uses: actions/upload-artifact@v3
  37. if: failure()
  38. with:
  39. name: produced_lock_files
  40. path: |
  41. mix.lock
  42. rebar.lock
  43. retention-days: 1
  44. ...