check_deps_integrity.yaml 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. name: Check integrity of rebar and mix dependencies
  2. on:
  3. workflow_call:
  4. inputs:
  5. builder:
  6. required: true
  7. type: string
  8. jobs:
  9. check_deps_integrity:
  10. runs-on: ${{ endsWith(github.repository, '/emqx') && 'ubuntu-22.04' || fromJSON('["self-hosted","ephemeral","linux","x64"]') }}
  11. container: ${{ inputs.builder }}
  12. steps:
  13. - uses: actions/checkout@v3
  14. - run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
  15. - run: make ensure-rebar3
  16. - run: ./scripts/check-deps-integrity.escript
  17. - name: Setup mix
  18. env:
  19. MIX_ENV: emqx-enterprise
  20. PROFILE: emqx-enterprise
  21. run: |
  22. mix local.hex --force
  23. mix local.rebar --force
  24. mix deps.get
  25. - run: ./scripts/check-elixir-deps-discrepancies.exs
  26. env:
  27. MIX_ENV: emqx-enterprise
  28. PROFILE: emqx-enterprise
  29. - run: ./scripts/check-elixir-applications.exs
  30. env:
  31. MIX_ENV: emqx-enterprise
  32. PROFILE: emqx-enterprise
  33. - name: Upload produced lock files
  34. uses: actions/upload-artifact@v3
  35. if: failure()
  36. with:
  37. name: produced_lock_files
  38. path: |
  39. mix.lock
  40. rebar.lock
  41. retention-days: 1